diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 9af1d72052..c41f00fc58 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -3,6 +3,24 @@ Change Log
All notable changes to this project will be documented in this file.
The format is based on `Keep a Changelog `_.
+====================
+2.121.0 - 2024-02-06
+====================
+
+Added
+-----
+* Support for the Globally Distributed Database service
+* Support for secret auto-rotation in the Secret Management service
+* Support for dedicated key management in the Key Management service
+* Support for resource locking operations in the Digital Media service
+* Support for data sources, including prometheus emitter, in the Management Agent service
+* Support for Bring Your Own Certificates (BYOC) in the MySQL HeatWave Database service
+
+Breaking
+--------
+* Models `MediaWorkflowJobFact`, `MediaWorkflowJobFactCollection` and `MediaWorkflowJobFactSummary` were removed from the Digital Media service
+* Methods `get_media_workflow_job_fact` and `list_media_workflow_job_facts` were removed from the Digital Media service
+
====================
2.120.0 - 2024-01-30
====================
diff --git a/docs/api/globally_distributed_database.rst b/docs/api/globally_distributed_database.rst
new file mode 100644
index 0000000000..c93dbe2969
--- /dev/null
+++ b/docs/api/globally_distributed_database.rst
@@ -0,0 +1,66 @@
+Globally Distributed Database
+=============================
+
+.. autosummary::
+ :toctree: globally_distributed_database/client
+ :nosignatures:
+ :template: autosummary/service_client.rst
+
+ oci.globally_distributed_database.ShardedDatabaseServiceClient
+ oci.globally_distributed_database.ShardedDatabaseServiceClientCompositeOperations
+
+--------
+ Models
+--------
+
+.. autosummary::
+ :toctree: globally_distributed_database/models
+ :nosignatures:
+ :template: autosummary/model_class.rst
+
+ oci.globally_distributed_database.models.ChangePrivateEndpointCompartmentDetails
+ oci.globally_distributed_database.models.ChangeShardedDatabaseCompartmentDetails
+ oci.globally_distributed_database.models.ConfigureShardedDatabaseGsmsDetails
+ oci.globally_distributed_database.models.ConnectionString
+ oci.globally_distributed_database.models.CreateDedicatedCatalogDetail
+ oci.globally_distributed_database.models.CreateDedicatedShardDetail
+ oci.globally_distributed_database.models.CreateDedicatedShardedDatabase
+ oci.globally_distributed_database.models.CreatePrivateEndpointDetails
+ oci.globally_distributed_database.models.CreateShardedDatabaseDetails
+ oci.globally_distributed_database.models.DedicatedCatalogDetails
+ oci.globally_distributed_database.models.DedicatedShardDetails
+ oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+ oci.globally_distributed_database.models.DedicatedShardedDatabase
+ oci.globally_distributed_database.models.DedicatedShardedDatabaseSummary
+ oci.globally_distributed_database.models.FetchShardableCloudAutonomousVmClustersDetails
+ oci.globally_distributed_database.models.GenerateWalletDetails
+ oci.globally_distributed_database.models.GsmDetails
+ oci.globally_distributed_database.models.PatchInsertInstruction
+ oci.globally_distributed_database.models.PatchInstruction
+ oci.globally_distributed_database.models.PatchMergeInstruction
+ oci.globally_distributed_database.models.PatchRemoveInstruction
+ oci.globally_distributed_database.models.PatchShardedDatabaseDetails
+ oci.globally_distributed_database.models.PrevalidateCreatePayload
+ oci.globally_distributed_database.models.PrevalidatePatchPayload
+ oci.globally_distributed_database.models.PrevalidatePayload
+ oci.globally_distributed_database.models.PrevalidateShardedDatabaseDetails
+ oci.globally_distributed_database.models.PrevalidateShardedDatabaseResult
+ oci.globally_distributed_database.models.PrivateEndpoint
+ oci.globally_distributed_database.models.PrivateEndpointCollection
+ oci.globally_distributed_database.models.PrivateEndpointSummary
+ oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusterSummary
+ oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusters
+ oci.globally_distributed_database.models.ShardedDatabase
+ oci.globally_distributed_database.models.ShardedDatabaseCollection
+ oci.globally_distributed_database.models.ShardedDatabaseSummary
+ oci.globally_distributed_database.models.UpdatePrivateEndpointDetails
+ oci.globally_distributed_database.models.UpdateShardedDatabaseDetails
+ oci.globally_distributed_database.models.UploadSignedCertificateAndGenerateWalletDetails
+ oci.globally_distributed_database.models.WorkRequest
+ oci.globally_distributed_database.models.WorkRequestError
+ oci.globally_distributed_database.models.WorkRequestErrorCollection
+ oci.globally_distributed_database.models.WorkRequestLogEntry
+ oci.globally_distributed_database.models.WorkRequestLogEntryCollection
+ oci.globally_distributed_database.models.WorkRequestResource
+ oci.globally_distributed_database.models.WorkRequestSummary
+ oci.globally_distributed_database.models.WorkRequestSummaryCollection
diff --git a/docs/api/globally_distributed_database/client/oci.globally_distributed_database.ShardedDatabaseServiceClient.rst b/docs/api/globally_distributed_database/client/oci.globally_distributed_database.ShardedDatabaseServiceClient.rst
new file mode 100644
index 0000000000..328da1d717
--- /dev/null
+++ b/docs/api/globally_distributed_database/client/oci.globally_distributed_database.ShardedDatabaseServiceClient.rst
@@ -0,0 +1,8 @@
+ShardedDatabaseServiceClient
+============================
+
+.. currentmodule:: oci.globally_distributed_database
+
+.. autoclass:: ShardedDatabaseServiceClient
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/client/oci.globally_distributed_database.ShardedDatabaseServiceClientCompositeOperations.rst b/docs/api/globally_distributed_database/client/oci.globally_distributed_database.ShardedDatabaseServiceClientCompositeOperations.rst
new file mode 100644
index 0000000000..08c51a62fc
--- /dev/null
+++ b/docs/api/globally_distributed_database/client/oci.globally_distributed_database.ShardedDatabaseServiceClientCompositeOperations.rst
@@ -0,0 +1,8 @@
+ShardedDatabaseServiceClientCompositeOperations
+===============================================
+
+.. currentmodule:: oci.globally_distributed_database
+
+.. autoclass:: ShardedDatabaseServiceClientCompositeOperations
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ChangePrivateEndpointCompartmentDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ChangePrivateEndpointCompartmentDetails.rst
new file mode 100644
index 0000000000..02ef7e4696
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ChangePrivateEndpointCompartmentDetails.rst
@@ -0,0 +1,11 @@
+ChangePrivateEndpointCompartmentDetails
+=======================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: ChangePrivateEndpointCompartmentDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ChangeShardedDatabaseCompartmentDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ChangeShardedDatabaseCompartmentDetails.rst
new file mode 100644
index 0000000000..2dbab2e1e8
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ChangeShardedDatabaseCompartmentDetails.rst
@@ -0,0 +1,11 @@
+ChangeShardedDatabaseCompartmentDetails
+=======================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: ChangeShardedDatabaseCompartmentDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ConfigureShardedDatabaseGsmsDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ConfigureShardedDatabaseGsmsDetails.rst
new file mode 100644
index 0000000000..7c536fdde4
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ConfigureShardedDatabaseGsmsDetails.rst
@@ -0,0 +1,11 @@
+ConfigureShardedDatabaseGsmsDetails
+===================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: ConfigureShardedDatabaseGsmsDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ConnectionString.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ConnectionString.rst
new file mode 100644
index 0000000000..e6dbe90afe
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ConnectionString.rst
@@ -0,0 +1,11 @@
+ConnectionString
+================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: ConnectionString
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateDedicatedCatalogDetail.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateDedicatedCatalogDetail.rst
new file mode 100644
index 0000000000..6dcef45ab1
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateDedicatedCatalogDetail.rst
@@ -0,0 +1,11 @@
+CreateDedicatedCatalogDetail
+============================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: CreateDedicatedCatalogDetail
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateDedicatedShardDetail.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateDedicatedShardDetail.rst
new file mode 100644
index 0000000000..f7e416ef1e
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateDedicatedShardDetail.rst
@@ -0,0 +1,11 @@
+CreateDedicatedShardDetail
+==========================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: CreateDedicatedShardDetail
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateDedicatedShardedDatabase.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateDedicatedShardedDatabase.rst
new file mode 100644
index 0000000000..bd15bcff75
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateDedicatedShardedDatabase.rst
@@ -0,0 +1,11 @@
+CreateDedicatedShardedDatabase
+==============================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: CreateDedicatedShardedDatabase
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreatePrivateEndpointDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreatePrivateEndpointDetails.rst
new file mode 100644
index 0000000000..ad90fbe778
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreatePrivateEndpointDetails.rst
@@ -0,0 +1,11 @@
+CreatePrivateEndpointDetails
+============================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: CreatePrivateEndpointDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateShardedDatabaseDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateShardedDatabaseDetails.rst
new file mode 100644
index 0000000000..1a387b6625
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.CreateShardedDatabaseDetails.rst
@@ -0,0 +1,11 @@
+CreateShardedDatabaseDetails
+============================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: CreateShardedDatabaseDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedCatalogDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedCatalogDetails.rst
new file mode 100644
index 0000000000..2d9508df91
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedCatalogDetails.rst
@@ -0,0 +1,11 @@
+DedicatedCatalogDetails
+=======================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: DedicatedCatalogDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardDetails.rst
new file mode 100644
index 0000000000..0b9f410c8a
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardDetails.rst
@@ -0,0 +1,11 @@
+DedicatedShardDetails
+=====================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: DedicatedShardDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails.rst
new file mode 100644
index 0000000000..df6cd4af4c
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails.rst
@@ -0,0 +1,11 @@
+DedicatedShardOrCatalogEncryptionKeyDetails
+===========================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: DedicatedShardOrCatalogEncryptionKeyDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardedDatabase.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardedDatabase.rst
new file mode 100644
index 0000000000..4095d707f5
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardedDatabase.rst
@@ -0,0 +1,11 @@
+DedicatedShardedDatabase
+========================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: DedicatedShardedDatabase
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardedDatabaseSummary.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardedDatabaseSummary.rst
new file mode 100644
index 0000000000..edbfa11bf7
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.DedicatedShardedDatabaseSummary.rst
@@ -0,0 +1,11 @@
+DedicatedShardedDatabaseSummary
+===============================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: DedicatedShardedDatabaseSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.FetchShardableCloudAutonomousVmClustersDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.FetchShardableCloudAutonomousVmClustersDetails.rst
new file mode 100644
index 0000000000..301f803e65
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.FetchShardableCloudAutonomousVmClustersDetails.rst
@@ -0,0 +1,11 @@
+FetchShardableCloudAutonomousVmClustersDetails
+==============================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: FetchShardableCloudAutonomousVmClustersDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.GenerateWalletDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.GenerateWalletDetails.rst
new file mode 100644
index 0000000000..b817f14c20
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.GenerateWalletDetails.rst
@@ -0,0 +1,11 @@
+GenerateWalletDetails
+=====================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: GenerateWalletDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.GsmDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.GsmDetails.rst
new file mode 100644
index 0000000000..ace9d38d4a
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.GsmDetails.rst
@@ -0,0 +1,11 @@
+GsmDetails
+==========
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: GsmDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchInsertInstruction.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchInsertInstruction.rst
new file mode 100644
index 0000000000..3b83bb432c
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchInsertInstruction.rst
@@ -0,0 +1,11 @@
+PatchInsertInstruction
+======================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PatchInsertInstruction
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchInstruction.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchInstruction.rst
new file mode 100644
index 0000000000..6c5cf344a3
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchInstruction.rst
@@ -0,0 +1,11 @@
+PatchInstruction
+================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PatchInstruction
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchMergeInstruction.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchMergeInstruction.rst
new file mode 100644
index 0000000000..61060a6bea
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchMergeInstruction.rst
@@ -0,0 +1,11 @@
+PatchMergeInstruction
+=====================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PatchMergeInstruction
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchRemoveInstruction.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchRemoveInstruction.rst
new file mode 100644
index 0000000000..87f4d56bde
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchRemoveInstruction.rst
@@ -0,0 +1,11 @@
+PatchRemoveInstruction
+======================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PatchRemoveInstruction
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchShardedDatabaseDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchShardedDatabaseDetails.rst
new file mode 100644
index 0000000000..e27b962bec
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PatchShardedDatabaseDetails.rst
@@ -0,0 +1,11 @@
+PatchShardedDatabaseDetails
+===========================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PatchShardedDatabaseDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidateCreatePayload.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidateCreatePayload.rst
new file mode 100644
index 0000000000..19be1bc14e
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidateCreatePayload.rst
@@ -0,0 +1,11 @@
+PrevalidateCreatePayload
+========================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PrevalidateCreatePayload
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidatePatchPayload.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidatePatchPayload.rst
new file mode 100644
index 0000000000..3b7ee305bc
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidatePatchPayload.rst
@@ -0,0 +1,11 @@
+PrevalidatePatchPayload
+=======================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PrevalidatePatchPayload
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidatePayload.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidatePayload.rst
new file mode 100644
index 0000000000..cfd40b789c
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidatePayload.rst
@@ -0,0 +1,11 @@
+PrevalidatePayload
+==================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PrevalidatePayload
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidateShardedDatabaseDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidateShardedDatabaseDetails.rst
new file mode 100644
index 0000000000..d1fb95d09a
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidateShardedDatabaseDetails.rst
@@ -0,0 +1,11 @@
+PrevalidateShardedDatabaseDetails
+=================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PrevalidateShardedDatabaseDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidateShardedDatabaseResult.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidateShardedDatabaseResult.rst
new file mode 100644
index 0000000000..aec84c3574
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrevalidateShardedDatabaseResult.rst
@@ -0,0 +1,11 @@
+PrevalidateShardedDatabaseResult
+================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PrevalidateShardedDatabaseResult
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrivateEndpoint.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrivateEndpoint.rst
new file mode 100644
index 0000000000..c4642d2e71
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrivateEndpoint.rst
@@ -0,0 +1,11 @@
+PrivateEndpoint
+===============
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PrivateEndpoint
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrivateEndpointCollection.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrivateEndpointCollection.rst
new file mode 100644
index 0000000000..1d15937d3d
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrivateEndpointCollection.rst
@@ -0,0 +1,11 @@
+PrivateEndpointCollection
+=========================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PrivateEndpointCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrivateEndpointSummary.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrivateEndpointSummary.rst
new file mode 100644
index 0000000000..d9bb31890e
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.PrivateEndpointSummary.rst
@@ -0,0 +1,11 @@
+PrivateEndpointSummary
+======================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: PrivateEndpointSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusterSummary.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusterSummary.rst
new file mode 100644
index 0000000000..6f526b304d
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusterSummary.rst
@@ -0,0 +1,11 @@
+ShardableCloudAutonomousVmClusterSummary
+========================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: ShardableCloudAutonomousVmClusterSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusters.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusters.rst
new file mode 100644
index 0000000000..9330b8df94
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusters.rst
@@ -0,0 +1,11 @@
+ShardableCloudAutonomousVmClusters
+==================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: ShardableCloudAutonomousVmClusters
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardedDatabase.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardedDatabase.rst
new file mode 100644
index 0000000000..4fdd9ca944
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardedDatabase.rst
@@ -0,0 +1,11 @@
+ShardedDatabase
+===============
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: ShardedDatabase
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardedDatabaseCollection.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardedDatabaseCollection.rst
new file mode 100644
index 0000000000..48aaf9fa61
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardedDatabaseCollection.rst
@@ -0,0 +1,11 @@
+ShardedDatabaseCollection
+=========================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: ShardedDatabaseCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardedDatabaseSummary.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardedDatabaseSummary.rst
new file mode 100644
index 0000000000..32df2115fb
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.ShardedDatabaseSummary.rst
@@ -0,0 +1,11 @@
+ShardedDatabaseSummary
+======================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: ShardedDatabaseSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.UpdatePrivateEndpointDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.UpdatePrivateEndpointDetails.rst
new file mode 100644
index 0000000000..2ca58cb396
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.UpdatePrivateEndpointDetails.rst
@@ -0,0 +1,11 @@
+UpdatePrivateEndpointDetails
+============================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: UpdatePrivateEndpointDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.UpdateShardedDatabaseDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.UpdateShardedDatabaseDetails.rst
new file mode 100644
index 0000000000..2ec4fc3ddc
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.UpdateShardedDatabaseDetails.rst
@@ -0,0 +1,11 @@
+UpdateShardedDatabaseDetails
+============================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: UpdateShardedDatabaseDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.UploadSignedCertificateAndGenerateWalletDetails.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.UploadSignedCertificateAndGenerateWalletDetails.rst
new file mode 100644
index 0000000000..a22c745569
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.UploadSignedCertificateAndGenerateWalletDetails.rst
@@ -0,0 +1,11 @@
+UploadSignedCertificateAndGenerateWalletDetails
+===============================================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: UploadSignedCertificateAndGenerateWalletDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequest.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequest.rst
new file mode 100644
index 0000000000..2ef8808d05
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequest.rst
@@ -0,0 +1,11 @@
+WorkRequest
+===========
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: WorkRequest
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestError.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestError.rst
new file mode 100644
index 0000000000..21d9b247f7
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestError.rst
@@ -0,0 +1,11 @@
+WorkRequestError
+================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: WorkRequestError
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestErrorCollection.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestErrorCollection.rst
new file mode 100644
index 0000000000..2eb8ecffee
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestErrorCollection.rst
@@ -0,0 +1,11 @@
+WorkRequestErrorCollection
+==========================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: WorkRequestErrorCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestLogEntry.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestLogEntry.rst
new file mode 100644
index 0000000000..5242a23931
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestLogEntry.rst
@@ -0,0 +1,11 @@
+WorkRequestLogEntry
+===================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: WorkRequestLogEntry
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestLogEntryCollection.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestLogEntryCollection.rst
new file mode 100644
index 0000000000..71b0159cba
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestLogEntryCollection.rst
@@ -0,0 +1,11 @@
+WorkRequestLogEntryCollection
+=============================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: WorkRequestLogEntryCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestResource.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestResource.rst
new file mode 100644
index 0000000000..bde67a3942
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestResource.rst
@@ -0,0 +1,11 @@
+WorkRequestResource
+===================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: WorkRequestResource
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestSummary.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestSummary.rst
new file mode 100644
index 0000000000..b74cf5def8
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestSummary.rst
@@ -0,0 +1,11 @@
+WorkRequestSummary
+==================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: WorkRequestSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestSummaryCollection.rst b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestSummaryCollection.rst
new file mode 100644
index 0000000000..66826e87ef
--- /dev/null
+++ b/docs/api/globally_distributed_database/models/oci.globally_distributed_database.models.WorkRequestSummaryCollection.rst
@@ -0,0 +1,11 @@
+WorkRequestSummaryCollection
+============================
+
+.. currentmodule:: oci.globally_distributed_database.models
+
+.. autoclass:: WorkRequestSummaryCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management.rst b/docs/api/key_management.rst
index fc72f943d0..1f30e45da1 100644
--- a/docs/api/key_management.rst
+++ b/docs/api/key_management.rst
@@ -8,10 +8,12 @@ Key Management
oci.key_management.EkmClient
oci.key_management.KmsCryptoClient
+ oci.key_management.KmsHsmClusterClient
oci.key_management.KmsManagementClient
oci.key_management.KmsVaultClient
oci.key_management.EkmClientCompositeOperations
oci.key_management.KmsCryptoClientCompositeOperations
+ oci.key_management.KmsHsmClusterClientCompositeOperations
oci.key_management.KmsManagementClientCompositeOperations
oci.key_management.KmsVaultClientCompositeOperations
@@ -29,9 +31,11 @@ Key Management
oci.key_management.models.BackupLocationBucket
oci.key_management.models.BackupLocationURI
oci.key_management.models.BackupVaultDetails
+ oci.key_management.models.ChangeHsmClusterCompartmentDetails
oci.key_management.models.ChangeKeyCompartmentDetails
oci.key_management.models.ChangeVaultCompartmentDetails
oci.key_management.models.CreateEkmsPrivateEndpointDetails
+ oci.key_management.models.CreateHsmClusterDetails
oci.key_management.models.CreateKeyDetails
oci.key_management.models.CreateVaultDetails
oci.key_management.models.CreateVaultReplicaDetails
@@ -51,6 +55,12 @@ Key Management
oci.key_management.models.ExternalKeyVersionReference
oci.key_management.models.GenerateKeyDetails
oci.key_management.models.GeneratedKey
+ oci.key_management.models.HsmCluster
+ oci.key_management.models.HsmClusterCollection
+ oci.key_management.models.HsmClusterSummary
+ oci.key_management.models.HsmPartition
+ oci.key_management.models.HsmPartitionCollection
+ oci.key_management.models.HsmPartitionSummary
oci.key_management.models.ImportKeyDetails
oci.key_management.models.ImportKeyVersionDetails
oci.key_management.models.Key
@@ -62,18 +72,23 @@ Key Management
oci.key_management.models.KeyVersionSummary
oci.key_management.models.OauthMetadata
oci.key_management.models.OauthMetadataSummary
+ oci.key_management.models.PortInformation
+ oci.key_management.models.PreCoUserCredentials
oci.key_management.models.ReplicaDetails
oci.key_management.models.ReplicationStatusDetails
oci.key_management.models.RestoreKeyFromObjectStoreDetails
oci.key_management.models.RestoreVaultFromObjectStoreDetails
+ oci.key_management.models.ScheduleHsmClusterDeletionDetails
oci.key_management.models.ScheduleKeyDeletionDetails
oci.key_management.models.ScheduleKeyVersionDeletionDetails
oci.key_management.models.ScheduleVaultDeletionDetails
oci.key_management.models.SignDataDetails
oci.key_management.models.SignedData
oci.key_management.models.UpdateEkmsPrivateEndpointDetails
+ oci.key_management.models.UpdateHsmClusterDetails
oci.key_management.models.UpdateKeyDetails
oci.key_management.models.UpdateVaultDetails
+ oci.key_management.models.UploadPartitionCertificatesDetails
oci.key_management.models.Vault
oci.key_management.models.VaultReplicaDetails
oci.key_management.models.VaultReplicaSummary
diff --git a/docs/api/key_management/client/oci.key_management.KmsHsmClusterClient.rst b/docs/api/key_management/client/oci.key_management.KmsHsmClusterClient.rst
new file mode 100644
index 0000000000..14b71e0722
--- /dev/null
+++ b/docs/api/key_management/client/oci.key_management.KmsHsmClusterClient.rst
@@ -0,0 +1,8 @@
+KmsHsmClusterClient
+===================
+
+.. currentmodule:: oci.key_management
+
+.. autoclass:: KmsHsmClusterClient
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/key_management/client/oci.key_management.KmsHsmClusterClientCompositeOperations.rst b/docs/api/key_management/client/oci.key_management.KmsHsmClusterClientCompositeOperations.rst
new file mode 100644
index 0000000000..a56994c53a
--- /dev/null
+++ b/docs/api/key_management/client/oci.key_management.KmsHsmClusterClientCompositeOperations.rst
@@ -0,0 +1,8 @@
+KmsHsmClusterClientCompositeOperations
+======================================
+
+.. currentmodule:: oci.key_management
+
+.. autoclass:: KmsHsmClusterClientCompositeOperations
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.ChangeHsmClusterCompartmentDetails.rst b/docs/api/key_management/models/oci.key_management.models.ChangeHsmClusterCompartmentDetails.rst
new file mode 100644
index 0000000000..9d63aeae3a
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.ChangeHsmClusterCompartmentDetails.rst
@@ -0,0 +1,11 @@
+ChangeHsmClusterCompartmentDetails
+==================================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: ChangeHsmClusterCompartmentDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.CreateHsmClusterDetails.rst b/docs/api/key_management/models/oci.key_management.models.CreateHsmClusterDetails.rst
new file mode 100644
index 0000000000..389206ce92
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.CreateHsmClusterDetails.rst
@@ -0,0 +1,11 @@
+CreateHsmClusterDetails
+=======================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: CreateHsmClusterDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.HsmCluster.rst b/docs/api/key_management/models/oci.key_management.models.HsmCluster.rst
new file mode 100644
index 0000000000..2983fb2ea3
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.HsmCluster.rst
@@ -0,0 +1,11 @@
+HsmCluster
+==========
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: HsmCluster
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.HsmClusterCollection.rst b/docs/api/key_management/models/oci.key_management.models.HsmClusterCollection.rst
new file mode 100644
index 0000000000..2adf777f9f
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.HsmClusterCollection.rst
@@ -0,0 +1,11 @@
+HsmClusterCollection
+====================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: HsmClusterCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.HsmClusterSummary.rst b/docs/api/key_management/models/oci.key_management.models.HsmClusterSummary.rst
new file mode 100644
index 0000000000..8ad33f3b8a
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.HsmClusterSummary.rst
@@ -0,0 +1,11 @@
+HsmClusterSummary
+=================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: HsmClusterSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.HsmPartition.rst b/docs/api/key_management/models/oci.key_management.models.HsmPartition.rst
new file mode 100644
index 0000000000..e8fc59ebab
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.HsmPartition.rst
@@ -0,0 +1,11 @@
+HsmPartition
+============
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: HsmPartition
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.HsmPartitionCollection.rst b/docs/api/key_management/models/oci.key_management.models.HsmPartitionCollection.rst
new file mode 100644
index 0000000000..a6640b7a5d
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.HsmPartitionCollection.rst
@@ -0,0 +1,11 @@
+HsmPartitionCollection
+======================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: HsmPartitionCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.HsmPartitionSummary.rst b/docs/api/key_management/models/oci.key_management.models.HsmPartitionSummary.rst
new file mode 100644
index 0000000000..0bdac6bd3b
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.HsmPartitionSummary.rst
@@ -0,0 +1,11 @@
+HsmPartitionSummary
+===================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: HsmPartitionSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.PortInformation.rst b/docs/api/key_management/models/oci.key_management.models.PortInformation.rst
new file mode 100644
index 0000000000..488cbacbd7
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.PortInformation.rst
@@ -0,0 +1,11 @@
+PortInformation
+===============
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: PortInformation
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.PreCoUserCredentials.rst b/docs/api/key_management/models/oci.key_management.models.PreCoUserCredentials.rst
new file mode 100644
index 0000000000..b3f1e9002c
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.PreCoUserCredentials.rst
@@ -0,0 +1,11 @@
+PreCoUserCredentials
+====================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: PreCoUserCredentials
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.ScheduleHsmClusterDeletionDetails.rst b/docs/api/key_management/models/oci.key_management.models.ScheduleHsmClusterDeletionDetails.rst
new file mode 100644
index 0000000000..aa38f1c650
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.ScheduleHsmClusterDeletionDetails.rst
@@ -0,0 +1,11 @@
+ScheduleHsmClusterDeletionDetails
+=================================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: ScheduleHsmClusterDeletionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.UpdateHsmClusterDetails.rst b/docs/api/key_management/models/oci.key_management.models.UpdateHsmClusterDetails.rst
new file mode 100644
index 0000000000..8f05df27d7
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.UpdateHsmClusterDetails.rst
@@ -0,0 +1,11 @@
+UpdateHsmClusterDetails
+=======================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: UpdateHsmClusterDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/key_management/models/oci.key_management.models.UploadPartitionCertificatesDetails.rst b/docs/api/key_management/models/oci.key_management.models.UploadPartitionCertificatesDetails.rst
new file mode 100644
index 0000000000..bac5ad3ec5
--- /dev/null
+++ b/docs/api/key_management/models/oci.key_management.models.UploadPartitionCertificatesDetails.rst
@@ -0,0 +1,11 @@
+UploadPartitionCertificatesDetails
+==================================
+
+.. currentmodule:: oci.key_management.models
+
+.. autoclass:: UploadPartitionCertificatesDetails
+ :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 1e5aa36134..d254091b8e 100644
--- a/docs/api/landing.rst
+++ b/docs/api/landing.rst
@@ -107,6 +107,7 @@ API Reference
* :doc:`Java Download `
* :doc:`Java Management Service `
* :doc:`Kms Crypto `
+* :doc:`Kms Hsm Cluster `
* :doc:`Kms Management `
* :doc:`Kms Vault `
* :doc:`License Manager `
@@ -189,6 +190,7 @@ API Reference
* :doc:`Service Manager Proxy `
* :doc:`Service Mesh `
* :doc:`Shape `
+* :doc:`Sharded Database Service `
* :doc:`Shipping Vendors `
* :doc:`Software Source `
* :doc:`Sql Tuning `
@@ -309,6 +311,7 @@ API Reference
generative_ai
generative_ai_inference
generic_artifacts_content
+ globally_distributed_database
golden_gate
governance_rules_control_plane
healthchecks
diff --git a/docs/api/management_agent.rst b/docs/api/management_agent.rst
index 441a3f743a..564b164844 100644
--- a/docs/api/management_agent.rst
+++ b/docs/api/management_agent.rst
@@ -20,8 +20,16 @@ Management Agent
oci.management_agent.models.AutoUpgradableConfig
oci.management_agent.models.AvailabilityHistorySummary
+ oci.management_agent.models.CreateDataSourceDetails
oci.management_agent.models.CreateManagementAgentInstallKeyDetails
+ oci.management_agent.models.CreatePrometheusEmitterDataSourceDetails
+ oci.management_agent.models.DataSource
+ oci.management_agent.models.DataSourceSummary
+ oci.management_agent.models.DataSourceSummaryItem
oci.management_agent.models.DeployPluginsDetails
+ oci.management_agent.models.KubernetesClusterDataSource
+ oci.management_agent.models.KubernetesClusterDataSourceSummary
+ oci.management_agent.models.KubernetesClusterDataSourceSummaryItem
oci.management_agent.models.ManagementAgent
oci.management_agent.models.ManagementAgentAggregation
oci.management_agent.models.ManagementAgentAggregationCollection
@@ -39,10 +47,16 @@ Management Agent
oci.management_agent.models.ManagementAgentPluginSummary
oci.management_agent.models.ManagementAgentProperty
oci.management_agent.models.ManagementAgentSummary
+ oci.management_agent.models.MetricDimension
oci.management_agent.models.ObjectDetails
+ oci.management_agent.models.PrometheusEmitterDataSource
+ oci.management_agent.models.PrometheusEmitterDataSourceSummary
+ oci.management_agent.models.PrometheusEmitterDataSourceSummaryItem
oci.management_agent.models.SetAutoUpgradableConfigDetails
+ oci.management_agent.models.UpdateDataSourceDetails
oci.management_agent.models.UpdateManagementAgentDetails
oci.management_agent.models.UpdateManagementAgentInstallKeyDetails
+ oci.management_agent.models.UpdatePrometheusEmitterDataSourceDetails
oci.management_agent.models.WorkRequest
oci.management_agent.models.WorkRequestError
oci.management_agent.models.WorkRequestLogEntry
diff --git a/docs/api/management_agent/models/oci.management_agent.models.CreateDataSourceDetails.rst b/docs/api/management_agent/models/oci.management_agent.models.CreateDataSourceDetails.rst
new file mode 100644
index 0000000000..795423e9ef
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.CreateDataSourceDetails.rst
@@ -0,0 +1,11 @@
+CreateDataSourceDetails
+=======================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: CreateDataSourceDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.CreatePrometheusEmitterDataSourceDetails.rst b/docs/api/management_agent/models/oci.management_agent.models.CreatePrometheusEmitterDataSourceDetails.rst
new file mode 100644
index 0000000000..90ede23470
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.CreatePrometheusEmitterDataSourceDetails.rst
@@ -0,0 +1,11 @@
+CreatePrometheusEmitterDataSourceDetails
+========================================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: CreatePrometheusEmitterDataSourceDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.DataSource.rst b/docs/api/management_agent/models/oci.management_agent.models.DataSource.rst
new file mode 100644
index 0000000000..116ca31705
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.DataSource.rst
@@ -0,0 +1,11 @@
+DataSource
+==========
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: DataSource
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.DataSourceSummary.rst b/docs/api/management_agent/models/oci.management_agent.models.DataSourceSummary.rst
new file mode 100644
index 0000000000..35ace93e3f
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.DataSourceSummary.rst
@@ -0,0 +1,11 @@
+DataSourceSummary
+=================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: DataSourceSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.DataSourceSummaryItem.rst b/docs/api/management_agent/models/oci.management_agent.models.DataSourceSummaryItem.rst
new file mode 100644
index 0000000000..f40d04d9a5
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.DataSourceSummaryItem.rst
@@ -0,0 +1,11 @@
+DataSourceSummaryItem
+=====================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: DataSourceSummaryItem
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.KubernetesClusterDataSource.rst b/docs/api/management_agent/models/oci.management_agent.models.KubernetesClusterDataSource.rst
new file mode 100644
index 0000000000..bd3f0cf9b0
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.KubernetesClusterDataSource.rst
@@ -0,0 +1,11 @@
+KubernetesClusterDataSource
+===========================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: KubernetesClusterDataSource
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.KubernetesClusterDataSourceSummary.rst b/docs/api/management_agent/models/oci.management_agent.models.KubernetesClusterDataSourceSummary.rst
new file mode 100644
index 0000000000..b047bb2925
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.KubernetesClusterDataSourceSummary.rst
@@ -0,0 +1,11 @@
+KubernetesClusterDataSourceSummary
+==================================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: KubernetesClusterDataSourceSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.KubernetesClusterDataSourceSummaryItem.rst b/docs/api/management_agent/models/oci.management_agent.models.KubernetesClusterDataSourceSummaryItem.rst
new file mode 100644
index 0000000000..1822b8280f
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.KubernetesClusterDataSourceSummaryItem.rst
@@ -0,0 +1,11 @@
+KubernetesClusterDataSourceSummaryItem
+======================================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: KubernetesClusterDataSourceSummaryItem
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.MetricDimension.rst b/docs/api/management_agent/models/oci.management_agent.models.MetricDimension.rst
new file mode 100644
index 0000000000..b01dfafd78
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.MetricDimension.rst
@@ -0,0 +1,11 @@
+MetricDimension
+===============
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: MetricDimension
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.PrometheusEmitterDataSource.rst b/docs/api/management_agent/models/oci.management_agent.models.PrometheusEmitterDataSource.rst
new file mode 100644
index 0000000000..90cc636aae
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.PrometheusEmitterDataSource.rst
@@ -0,0 +1,11 @@
+PrometheusEmitterDataSource
+===========================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: PrometheusEmitterDataSource
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.PrometheusEmitterDataSourceSummary.rst b/docs/api/management_agent/models/oci.management_agent.models.PrometheusEmitterDataSourceSummary.rst
new file mode 100644
index 0000000000..584e1a4860
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.PrometheusEmitterDataSourceSummary.rst
@@ -0,0 +1,11 @@
+PrometheusEmitterDataSourceSummary
+==================================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: PrometheusEmitterDataSourceSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.PrometheusEmitterDataSourceSummaryItem.rst b/docs/api/management_agent/models/oci.management_agent.models.PrometheusEmitterDataSourceSummaryItem.rst
new file mode 100644
index 0000000000..42decdfac0
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.PrometheusEmitterDataSourceSummaryItem.rst
@@ -0,0 +1,11 @@
+PrometheusEmitterDataSourceSummaryItem
+======================================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: PrometheusEmitterDataSourceSummaryItem
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.UpdateDataSourceDetails.rst b/docs/api/management_agent/models/oci.management_agent.models.UpdateDataSourceDetails.rst
new file mode 100644
index 0000000000..5685dedc9a
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.UpdateDataSourceDetails.rst
@@ -0,0 +1,11 @@
+UpdateDataSourceDetails
+=======================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: UpdateDataSourceDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/management_agent/models/oci.management_agent.models.UpdatePrometheusEmitterDataSourceDetails.rst b/docs/api/management_agent/models/oci.management_agent.models.UpdatePrometheusEmitterDataSourceDetails.rst
new file mode 100644
index 0000000000..b6a77ae1fb
--- /dev/null
+++ b/docs/api/management_agent/models/oci.management_agent.models.UpdatePrometheusEmitterDataSourceDetails.rst
@@ -0,0 +1,11 @@
+UpdatePrometheusEmitterDataSourceDetails
+========================================
+
+.. currentmodule:: oci.management_agent.models
+
+.. autoclass:: UpdatePrometheusEmitterDataSourceDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/media_services.rst b/docs/api/media_services.rst
index 62e27edd35..d7c4feb392 100644
--- a/docs/api/media_services.rst
+++ b/docs/api/media_services.rst
@@ -20,6 +20,7 @@ Media Services
:nosignatures:
:template: autosummary/model_class.rst
+ oci.media_services.models.AddLockDetails
oci.media_services.models.AkamaiManualStreamCdnConfig
oci.media_services.models.AssetMetadataEntryDetails
oci.media_services.models.ChangeMediaAssetCompartmentDetails
@@ -57,9 +58,6 @@ Media Services
oci.media_services.models.MediaWorkflowConfigurationSummary
oci.media_services.models.MediaWorkflowJob
oci.media_services.models.MediaWorkflowJobCollection
- oci.media_services.models.MediaWorkflowJobFact
- oci.media_services.models.MediaWorkflowJobFactCollection
- oci.media_services.models.MediaWorkflowJobFactSummary
oci.media_services.models.MediaWorkflowJobSummary
oci.media_services.models.MediaWorkflowSummary
oci.media_services.models.MediaWorkflowTask
@@ -67,6 +65,8 @@ Media Services
oci.media_services.models.MediaWorkflowTaskDeclarationCollection
oci.media_services.models.MediaWorkflowTaskState
oci.media_services.models.Metadata
+ oci.media_services.models.RemoveLockDetails
+ oci.media_services.models.ResourceLock
oci.media_services.models.SessionToken
oci.media_services.models.StreamCdnConfig
oci.media_services.models.StreamCdnConfigCollection
diff --git a/docs/api/media_services/models/oci.media_services.models.MediaWorkflowJobFact.rst b/docs/api/media_services/models/oci.media_services.models.AddLockDetails.rst
similarity index 66%
rename from docs/api/media_services/models/oci.media_services.models.MediaWorkflowJobFact.rst
rename to docs/api/media_services/models/oci.media_services.models.AddLockDetails.rst
index 2d523be542..7e27a7665c 100644
--- a/docs/api/media_services/models/oci.media_services.models.MediaWorkflowJobFact.rst
+++ b/docs/api/media_services/models/oci.media_services.models.AddLockDetails.rst
@@ -1,9 +1,9 @@
-MediaWorkflowJobFact
-====================
+AddLockDetails
+==============
.. currentmodule:: oci.media_services.models
-.. autoclass:: MediaWorkflowJobFact
+.. autoclass:: AddLockDetails
:show-inheritance:
:special-members: __init__
:members:
diff --git a/docs/api/media_services/models/oci.media_services.models.MediaWorkflowJobFactSummary.rst b/docs/api/media_services/models/oci.media_services.models.RemoveLockDetails.rst
similarity index 61%
rename from docs/api/media_services/models/oci.media_services.models.MediaWorkflowJobFactSummary.rst
rename to docs/api/media_services/models/oci.media_services.models.RemoveLockDetails.rst
index 2c4599e401..163d7ca9e5 100644
--- a/docs/api/media_services/models/oci.media_services.models.MediaWorkflowJobFactSummary.rst
+++ b/docs/api/media_services/models/oci.media_services.models.RemoveLockDetails.rst
@@ -1,9 +1,9 @@
-MediaWorkflowJobFactSummary
-===========================
+RemoveLockDetails
+=================
.. currentmodule:: oci.media_services.models
-.. autoclass:: MediaWorkflowJobFactSummary
+.. autoclass:: RemoveLockDetails
:show-inheritance:
:special-members: __init__
:members:
diff --git a/docs/api/media_services/models/oci.media_services.models.MediaWorkflowJobFactCollection.rst b/docs/api/media_services/models/oci.media_services.models.ResourceLock.rst
similarity index 59%
rename from docs/api/media_services/models/oci.media_services.models.MediaWorkflowJobFactCollection.rst
rename to docs/api/media_services/models/oci.media_services.models.ResourceLock.rst
index 978adee5c1..8ef41c8532 100644
--- a/docs/api/media_services/models/oci.media_services.models.MediaWorkflowJobFactCollection.rst
+++ b/docs/api/media_services/models/oci.media_services.models.ResourceLock.rst
@@ -1,9 +1,9 @@
-MediaWorkflowJobFactCollection
-==============================
+ResourceLock
+============
.. currentmodule:: oci.media_services.models
-.. autoclass:: MediaWorkflowJobFactCollection
+.. autoclass:: ResourceLock
:show-inheritance:
:special-members: __init__
:members:
diff --git a/docs/api/mysql.rst b/docs/api/mysql.rst
index 047e0fb5df..895fa04b11 100644
--- a/docs/api/mysql.rst
+++ b/docs/api/mysql.rst
@@ -91,6 +91,7 @@ Mysql
oci.mysql.models.ReplicaOverrides
oci.mysql.models.ReplicaSummary
oci.mysql.models.RestartDbSystemDetails
+ oci.mysql.models.SecureConnectionDetails
oci.mysql.models.ShapeSummary
oci.mysql.models.StopDbSystemDetails
oci.mysql.models.UpdateBackupDetails
diff --git a/docs/api/mysql/models/oci.mysql.models.SecureConnectionDetails.rst b/docs/api/mysql/models/oci.mysql.models.SecureConnectionDetails.rst
new file mode 100644
index 0000000000..6c80b3fe6c
--- /dev/null
+++ b/docs/api/mysql/models/oci.mysql.models.SecureConnectionDetails.rst
@@ -0,0 +1,11 @@
+SecureConnectionDetails
+=======================
+
+.. currentmodule:: oci.mysql.models
+
+.. autoclass:: SecureConnectionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/vault.rst b/docs/api/vault.rst
index bc891c39e7..a1c424f0a1 100644
--- a/docs/api/vault.rst
+++ b/docs/api/vault.rst
@@ -18,9 +18,12 @@ Vault
:nosignatures:
:template: autosummary/model_class.rst
+ oci.vault.models.AdbTargetSystemDetails
oci.vault.models.Base64SecretContentDetails
oci.vault.models.ChangeSecretCompartmentDetails
oci.vault.models.CreateSecretDetails
+ oci.vault.models.FunctionTargetSystemDetails
+ oci.vault.models.RotationConfig
oci.vault.models.ScheduleSecretDeletionDetails
oci.vault.models.ScheduleSecretVersionDeletionDetails
oci.vault.models.Secret
@@ -31,4 +34,5 @@ Vault
oci.vault.models.SecretSummary
oci.vault.models.SecretVersion
oci.vault.models.SecretVersionSummary
+ oci.vault.models.TargetSystemDetails
oci.vault.models.UpdateSecretDetails
diff --git a/docs/api/vault/models/oci.vault.models.AdbTargetSystemDetails.rst b/docs/api/vault/models/oci.vault.models.AdbTargetSystemDetails.rst
new file mode 100644
index 0000000000..70b1252b7c
--- /dev/null
+++ b/docs/api/vault/models/oci.vault.models.AdbTargetSystemDetails.rst
@@ -0,0 +1,11 @@
+AdbTargetSystemDetails
+======================
+
+.. currentmodule:: oci.vault.models
+
+.. autoclass:: AdbTargetSystemDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/vault/models/oci.vault.models.FunctionTargetSystemDetails.rst b/docs/api/vault/models/oci.vault.models.FunctionTargetSystemDetails.rst
new file mode 100644
index 0000000000..5840cf35bc
--- /dev/null
+++ b/docs/api/vault/models/oci.vault.models.FunctionTargetSystemDetails.rst
@@ -0,0 +1,11 @@
+FunctionTargetSystemDetails
+===========================
+
+.. currentmodule:: oci.vault.models
+
+.. autoclass:: FunctionTargetSystemDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/vault/models/oci.vault.models.RotationConfig.rst b/docs/api/vault/models/oci.vault.models.RotationConfig.rst
new file mode 100644
index 0000000000..cba224d7e5
--- /dev/null
+++ b/docs/api/vault/models/oci.vault.models.RotationConfig.rst
@@ -0,0 +1,11 @@
+RotationConfig
+==============
+
+.. currentmodule:: oci.vault.models
+
+.. autoclass:: RotationConfig
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/vault/models/oci.vault.models.TargetSystemDetails.rst b/docs/api/vault/models/oci.vault.models.TargetSystemDetails.rst
new file mode 100644
index 0000000000..bb50774c0b
--- /dev/null
+++ b/docs/api/vault/models/oci.vault.models.TargetSystemDetails.rst
@@ -0,0 +1,11 @@
+TargetSystemDetails
+===================
+
+.. currentmodule:: oci.vault.models
+
+.. autoclass:: TargetSystemDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/src/oci/__init__.py b/src/oci/__init__.py
index 640d0e5c35..4cf8e79a40 100644
--- a/src/oci/__init__.py
+++ b/src/oci/__init__.py
@@ -19,7 +19,7 @@
else:
__all__ = [
"BaseClient", "Error", "Request", "Response", "Signer", "config", "constants", "decorators", "exceptions", "regions", "wait_until", "pagination", "auth", "retry", "fips", "circuit_breaker", "alloy",
- "access_governance_cp", "adm", "ai_anomaly_detection", "ai_document", "ai_language", "ai_speech", "ai_vision", "analytics", "announcements_service", "apigateway", "apm_config", "apm_control_plane", "apm_synthetics", "apm_traces", "application_migration", "appmgmt_control", "artifacts", "audit", "autoscaling", "bastion", "bds", "blockchain", "budget", "capacity_management", "certificates", "certificates_management", "cims", "cloud_bridge", "cloud_guard", "cloud_migrations", "compute_cloud_at_customer", "compute_instance_agent", "container_engine", "container_instances", "core", "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", "devops", "disaster_recovery", "dns", "dts", "em_warehouse", "email", "events", "file_storage", "fleet_software_update", "functions", "fusion_apps", "generative_ai", "generative_ai_inference", "generic_artifacts_content", "golden_gate", "governance_rules_control_plane", "healthchecks", "identity", "identity_data_plane", "identity_domains", "integration", "jms", "jms_java_downloads", "key_management", "license_manager", "limits", "load_balancer", "lockbox", "log_analytics", "logging", "loggingingestion", "loggingsearch", "management_agent", "management_dashboard", "marketplace", "marketplace_publisher", "media_services", "monitoring", "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", "os_management_hub", "osp_gateway", "osub_billing_schedule", "osub_organization_subscription", "osub_subscription", "osub_usage", "psql", "queue", "recovery", "redis", "resource_manager", "resource_search", "rover", "sch", "secrets", "service_catalog", "service_manager_proxy", "service_mesh", "stack_monitoring", "streaming", "tenant_manager_control_plane", "threat_intelligence", "usage", "usage_api", "vault", "vbs_inst", "visual_builder", "vn_monitoring", "vulnerability_scanning", "waa", "waas", "waf", "work_requests"
+ "access_governance_cp", "adm", "ai_anomaly_detection", "ai_document", "ai_language", "ai_speech", "ai_vision", "analytics", "announcements_service", "apigateway", "apm_config", "apm_control_plane", "apm_synthetics", "apm_traces", "application_migration", "appmgmt_control", "artifacts", "audit", "autoscaling", "bastion", "bds", "blockchain", "budget", "capacity_management", "certificates", "certificates_management", "cims", "cloud_bridge", "cloud_guard", "cloud_migrations", "compute_cloud_at_customer", "compute_instance_agent", "container_engine", "container_instances", "core", "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", "devops", "disaster_recovery", "dns", "dts", "em_warehouse", "email", "events", "file_storage", "fleet_software_update", "functions", "fusion_apps", "generative_ai", "generative_ai_inference", "generic_artifacts_content", "globally_distributed_database", "golden_gate", "governance_rules_control_plane", "healthchecks", "identity", "identity_data_plane", "identity_domains", "integration", "jms", "jms_java_downloads", "key_management", "license_manager", "limits", "load_balancer", "lockbox", "log_analytics", "logging", "loggingingestion", "loggingsearch", "management_agent", "management_dashboard", "marketplace", "marketplace_publisher", "media_services", "monitoring", "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", "os_management_hub", "osp_gateway", "osub_billing_schedule", "osub_organization_subscription", "osub_subscription", "osub_usage", "psql", "queue", "recovery", "redis", "resource_manager", "resource_search", "rover", "sch", "secrets", "service_catalog", "service_manager_proxy", "service_mesh", "stack_monitoring", "streaming", "tenant_manager_control_plane", "threat_intelligence", "usage", "usage_api", "vault", "vbs_inst", "visual_builder", "vn_monitoring", "vulnerability_scanning", "waa", "waas", "waf", "work_requests"
]
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_anomaly_detection, ai_document, ai_language, ai_speech, ai_vision, analytics, announcements_service, apigateway, apm_config, apm_control_plane, apm_synthetics, apm_traces, application_migration, appmgmt_control, artifacts, audit, autoscaling, bastion, bds, blockchain, budget, capacity_management, certificates, certificates_management, cims, cloud_bridge, cloud_guard, cloud_migrations, compute_cloud_at_customer, compute_instance_agent, container_engine, container_instances, core, 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, devops, disaster_recovery, dns, dts, em_warehouse, email, events, file_storage, fleet_software_update, functions, fusion_apps, generative_ai, generative_ai_inference, generic_artifacts_content, golden_gate, governance_rules_control_plane, healthchecks, identity, identity_data_plane, identity_domains, integration, jms, jms_java_downloads, key_management, license_manager, limits, load_balancer, lockbox, log_analytics, logging, loggingingestion, loggingsearch, management_agent, management_dashboard, marketplace, marketplace_publisher, media_services, monitoring, 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, os_management_hub, osp_gateway, osub_billing_schedule, osub_organization_subscription, osub_subscription, osub_usage, psql, queue, recovery, redis, resource_manager, resource_search, rover, sch, secrets, service_catalog, service_manager_proxy, service_mesh, stack_monitoring, streaming, tenant_manager_control_plane, threat_intelligence, usage, usage_api, vault, vbs_inst, visual_builder, vn_monitoring, vulnerability_scanning, waa, waas, waf, work_requests
+ from . import access_governance_cp, adm, ai_anomaly_detection, ai_document, ai_language, ai_speech, ai_vision, analytics, announcements_service, apigateway, apm_config, apm_control_plane, apm_synthetics, apm_traces, application_migration, appmgmt_control, artifacts, audit, autoscaling, bastion, bds, blockchain, budget, capacity_management, certificates, certificates_management, cims, cloud_bridge, cloud_guard, cloud_migrations, compute_cloud_at_customer, compute_instance_agent, container_engine, container_instances, core, 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, devops, disaster_recovery, dns, dts, em_warehouse, email, events, file_storage, fleet_software_update, functions, fusion_apps, generative_ai, generative_ai_inference, generic_artifacts_content, globally_distributed_database, golden_gate, governance_rules_control_plane, healthchecks, identity, identity_data_plane, identity_domains, integration, jms, jms_java_downloads, key_management, license_manager, limits, load_balancer, lockbox, log_analytics, logging, loggingingestion, loggingsearch, management_agent, management_dashboard, marketplace, marketplace_publisher, media_services, monitoring, 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, os_management_hub, osp_gateway, osub_billing_schedule, osub_organization_subscription, osub_subscription, osub_usage, psql, queue, recovery, redis, resource_manager, resource_search, rover, sch, secrets, service_catalog, service_manager_proxy, service_mesh, stack_monitoring, streaming, tenant_manager_control_plane, threat_intelligence, usage, usage_api, vault, vbs_inst, visual_builder, vn_monitoring, vulnerability_scanning, waa, waas, waf, work_requests
diff --git a/src/oci/generative_ai/generative_ai_client.py b/src/oci/generative_ai/generative_ai_client.py
index b0a05710f3..1fb29e9141 100644
--- a/src/oci/generative_ai/generative_ai_client.py
+++ b/src/oci/generative_ai/generative_ai_client.py
@@ -179,7 +179,7 @@ def change_dedicated_ai_cluster_compartment(self, dedicated_ai_cluster_id, chang
resource_path = "/dedicatedAiClusters/{dedicatedAiClusterId}/actions/changeCompartment"
method = "POST"
operation_name = "change_dedicated_ai_cluster_compartment"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/DedicatedAiCluster/ChangeDedicatedAiClusterCompartment"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -305,7 +305,7 @@ def change_endpoint_compartment(self, endpoint_id, change_endpoint_compartment_d
resource_path = "/endpoints/{endpointId}/actions/changeCompartment"
method = "POST"
operation_name = "change_endpoint_compartment"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Endpoint/ChangeEndpointCompartment"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -429,7 +429,7 @@ def change_model_compartment(self, model_id, change_model_compartment_details, *
resource_path = "/models/{modelId}/actions/changeCompartment"
method = "POST"
operation_name = "change_model_compartment"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Model/ChangeModelCompartment"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -542,7 +542,7 @@ def create_dedicated_ai_cluster(self, create_dedicated_ai_cluster_details, **kwa
resource_path = "/dedicatedAiClusters"
method = "POST"
operation_name = "create_dedicated_ai_cluster"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/DedicatedAiCluster/CreateDedicatedAiCluster"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -645,7 +645,7 @@ def create_endpoint(self, create_endpoint_details, **kwargs):
resource_path = "/endpoints"
method = "POST"
operation_name = "create_endpoint"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Endpoint/CreateEndpoint"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -748,7 +748,7 @@ def create_model(self, create_model_details, **kwargs):
resource_path = "/models"
method = "POST"
operation_name = "create_model"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Model/CreateModel"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -852,7 +852,7 @@ def delete_dedicated_ai_cluster(self, dedicated_ai_cluster_id, **kwargs):
resource_path = "/dedicatedAiClusters/{dedicatedAiClusterId}"
method = "DELETE"
operation_name = "delete_dedicated_ai_cluster"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/DedicatedAiCluster/DeleteDedicatedAiCluster"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -961,7 +961,7 @@ def delete_endpoint(self, endpoint_id, **kwargs):
resource_path = "/endpoints/{endpointId}"
method = "DELETE"
operation_name = "delete_endpoint"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Endpoint/DeleteEndpoint"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -1068,7 +1068,7 @@ def delete_model(self, model_id, **kwargs):
resource_path = "/models/{modelId}"
method = "DELETE"
operation_name = "delete_model"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Model/DeleteModel"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -1171,7 +1171,7 @@ def get_dedicated_ai_cluster(self, dedicated_ai_cluster_id, **kwargs):
resource_path = "/dedicatedAiClusters/{dedicatedAiClusterId}"
method = "GET"
operation_name = "get_dedicated_ai_cluster"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/DedicatedAiCluster/GetDedicatedAiCluster"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -1274,7 +1274,7 @@ def get_endpoint(self, endpoint_id, **kwargs):
resource_path = "/endpoints/{endpointId}"
method = "GET"
operation_name = "get_endpoint"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Endpoint/GetEndpoint"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -1375,7 +1375,7 @@ def get_model(self, model_id, **kwargs):
resource_path = "/models/{modelId}"
method = "GET"
operation_name = "get_model"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Model/GetModel"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -1478,7 +1478,7 @@ def get_work_request(self, work_request_id, **kwargs):
resource_path = "/workRequests/{workRequestId}"
method = "GET"
operation_name = "get_work_request"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/WorkRequest/GetWorkRequest"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -1619,7 +1619,7 @@ def list_dedicated_ai_clusters(self, compartment_id, **kwargs):
resource_path = "/dedicatedAiClusters"
method = "GET"
operation_name = "list_dedicated_ai_clusters"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/DedicatedAiClusterCollection/ListDedicatedAiClusters"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -1790,7 +1790,7 @@ def list_endpoints(self, compartment_id, **kwargs):
resource_path = "/endpoints"
method = "GET"
operation_name = "list_endpoints"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/EndpointCollection/ListEndpoints"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -1966,7 +1966,7 @@ def list_models(self, compartment_id, **kwargs):
resource_path = "/models"
method = "GET"
operation_name = "list_models"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/ModelCollection/ListModels"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -2135,7 +2135,7 @@ def list_work_request_errors(self, work_request_id, **kwargs):
resource_path = "/workRequests/{workRequestId}/errors"
method = "GET"
operation_name = "list_work_request_errors"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/WorkRequestError/ListWorkRequestErrors"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -2290,7 +2290,7 @@ def list_work_request_logs(self, work_request_id, **kwargs):
resource_path = "/workRequests/{workRequestId}/logs"
method = "GET"
operation_name = "list_work_request_logs"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/WorkRequestLogEntry/ListWorkRequestLogs"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -2460,7 +2460,7 @@ def list_work_requests(self, compartment_id, **kwargs):
resource_path = "/workRequests"
method = "GET"
operation_name = "list_work_requests"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/WorkRequest/ListWorkRequests"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -2602,7 +2602,7 @@ def update_dedicated_ai_cluster(self, dedicated_ai_cluster_id, update_dedicated_
resource_path = "/dedicatedAiClusters/{dedicatedAiClusterId}"
method = "PUT"
operation_name = "update_dedicated_ai_cluster"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/DedicatedAiCluster/UpdateDedicatedAiCluster"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -2718,7 +2718,7 @@ def update_endpoint(self, endpoint_id, update_endpoint_details, **kwargs):
resource_path = "/endpoints/{endpointId}"
method = "PUT"
operation_name = "update_endpoint"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Endpoint/UpdateEndpoint"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -2832,7 +2832,7 @@ def update_model(self, model_id, update_model_details, **kwargs):
resource_path = "/models/{modelId}"
method = "PUT"
operation_name = "update_model"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/Model/UpdateModel"
# Don't accept unknown kwargs
expected_kwargs = [
diff --git a/src/oci/generative_ai_inference/generative_ai_inference_client.py b/src/oci/generative_ai_inference/generative_ai_inference_client.py
index 7d745f86b9..d16ed53ea6 100644
--- a/src/oci/generative_ai_inference/generative_ai_inference_client.py
+++ b/src/oci/generative_ai_inference/generative_ai_inference_client.py
@@ -165,7 +165,7 @@ def embed_text(self, embed_text_details, **kwargs):
resource_path = "/actions/embedText"
method = "POST"
operation_name = "embed_text"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai-inference/20231130/EmbedTextResult/EmbedText"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -263,7 +263,7 @@ def generate_text(self, generate_text_details, **kwargs):
resource_path = "/actions/generateText"
method = "POST"
operation_name = "generate_text"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai-inference/20231130/GenerateTextResult/GenerateText"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -361,7 +361,7 @@ def summarize_text(self, summarize_text_details, **kwargs):
resource_path = "/actions/summarizeText"
method = "POST"
operation_name = "summarize_text"
- api_reference_link = ""
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai-inference/20231130/SummarizeTextResult/SummarizeText"
# Don't accept unknown kwargs
expected_kwargs = [
diff --git a/src/oci/globally_distributed_database/__init__.py b/src/oci/globally_distributed_database/__init__.py
new file mode 100644
index 0000000000..76bcc83474
--- /dev/null
+++ b/src/oci/globally_distributed_database/__init__.py
@@ -0,0 +1,14 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+from __future__ import absolute_import
+
+
+from .sharded_database_service_client import ShardedDatabaseServiceClient
+from .sharded_database_service_client_composite_operations import ShardedDatabaseServiceClientCompositeOperations
+from . import models
+
+__all__ = ["ShardedDatabaseServiceClient", "ShardedDatabaseServiceClientCompositeOperations", "models"]
diff --git a/src/oci/globally_distributed_database/models/__init__.py b/src/oci/globally_distributed_database/models/__init__.py
new file mode 100644
index 0000000000..d7fd94a46d
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/__init__.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+from __future__ import absolute_import
+
+from .change_private_endpoint_compartment_details import ChangePrivateEndpointCompartmentDetails
+from .change_sharded_database_compartment_details import ChangeShardedDatabaseCompartmentDetails
+from .configure_sharded_database_gsms_details import ConfigureShardedDatabaseGsmsDetails
+from .connection_string import ConnectionString
+from .create_dedicated_catalog_detail import CreateDedicatedCatalogDetail
+from .create_dedicated_shard_detail import CreateDedicatedShardDetail
+from .create_dedicated_sharded_database import CreateDedicatedShardedDatabase
+from .create_private_endpoint_details import CreatePrivateEndpointDetails
+from .create_sharded_database_details import CreateShardedDatabaseDetails
+from .dedicated_catalog_details import DedicatedCatalogDetails
+from .dedicated_shard_details import DedicatedShardDetails
+from .dedicated_shard_or_catalog_encryption_key_details import DedicatedShardOrCatalogEncryptionKeyDetails
+from .dedicated_sharded_database import DedicatedShardedDatabase
+from .dedicated_sharded_database_summary import DedicatedShardedDatabaseSummary
+from .fetch_shardable_cloud_autonomous_vm_clusters_details import FetchShardableCloudAutonomousVmClustersDetails
+from .generate_wallet_details import GenerateWalletDetails
+from .gsm_details import GsmDetails
+from .patch_insert_instruction import PatchInsertInstruction
+from .patch_instruction import PatchInstruction
+from .patch_merge_instruction import PatchMergeInstruction
+from .patch_remove_instruction import PatchRemoveInstruction
+from .patch_sharded_database_details import PatchShardedDatabaseDetails
+from .prevalidate_create_payload import PrevalidateCreatePayload
+from .prevalidate_patch_payload import PrevalidatePatchPayload
+from .prevalidate_payload import PrevalidatePayload
+from .prevalidate_sharded_database_details import PrevalidateShardedDatabaseDetails
+from .prevalidate_sharded_database_result import PrevalidateShardedDatabaseResult
+from .private_endpoint import PrivateEndpoint
+from .private_endpoint_collection import PrivateEndpointCollection
+from .private_endpoint_summary import PrivateEndpointSummary
+from .shardable_cloud_autonomous_vm_cluster_summary import ShardableCloudAutonomousVmClusterSummary
+from .shardable_cloud_autonomous_vm_clusters import ShardableCloudAutonomousVmClusters
+from .sharded_database import ShardedDatabase
+from .sharded_database_collection import ShardedDatabaseCollection
+from .sharded_database_summary import ShardedDatabaseSummary
+from .update_private_endpoint_details import UpdatePrivateEndpointDetails
+from .update_sharded_database_details import UpdateShardedDatabaseDetails
+from .upload_signed_certificate_and_generate_wallet_details import UploadSignedCertificateAndGenerateWalletDetails
+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 globally_distributed_database services.
+globally_distributed_database_type_mapping = {
+ "ChangePrivateEndpointCompartmentDetails": ChangePrivateEndpointCompartmentDetails,
+ "ChangeShardedDatabaseCompartmentDetails": ChangeShardedDatabaseCompartmentDetails,
+ "ConfigureShardedDatabaseGsmsDetails": ConfigureShardedDatabaseGsmsDetails,
+ "ConnectionString": ConnectionString,
+ "CreateDedicatedCatalogDetail": CreateDedicatedCatalogDetail,
+ "CreateDedicatedShardDetail": CreateDedicatedShardDetail,
+ "CreateDedicatedShardedDatabase": CreateDedicatedShardedDatabase,
+ "CreatePrivateEndpointDetails": CreatePrivateEndpointDetails,
+ "CreateShardedDatabaseDetails": CreateShardedDatabaseDetails,
+ "DedicatedCatalogDetails": DedicatedCatalogDetails,
+ "DedicatedShardDetails": DedicatedShardDetails,
+ "DedicatedShardOrCatalogEncryptionKeyDetails": DedicatedShardOrCatalogEncryptionKeyDetails,
+ "DedicatedShardedDatabase": DedicatedShardedDatabase,
+ "DedicatedShardedDatabaseSummary": DedicatedShardedDatabaseSummary,
+ "FetchShardableCloudAutonomousVmClustersDetails": FetchShardableCloudAutonomousVmClustersDetails,
+ "GenerateWalletDetails": GenerateWalletDetails,
+ "GsmDetails": GsmDetails,
+ "PatchInsertInstruction": PatchInsertInstruction,
+ "PatchInstruction": PatchInstruction,
+ "PatchMergeInstruction": PatchMergeInstruction,
+ "PatchRemoveInstruction": PatchRemoveInstruction,
+ "PatchShardedDatabaseDetails": PatchShardedDatabaseDetails,
+ "PrevalidateCreatePayload": PrevalidateCreatePayload,
+ "PrevalidatePatchPayload": PrevalidatePatchPayload,
+ "PrevalidatePayload": PrevalidatePayload,
+ "PrevalidateShardedDatabaseDetails": PrevalidateShardedDatabaseDetails,
+ "PrevalidateShardedDatabaseResult": PrevalidateShardedDatabaseResult,
+ "PrivateEndpoint": PrivateEndpoint,
+ "PrivateEndpointCollection": PrivateEndpointCollection,
+ "PrivateEndpointSummary": PrivateEndpointSummary,
+ "ShardableCloudAutonomousVmClusterSummary": ShardableCloudAutonomousVmClusterSummary,
+ "ShardableCloudAutonomousVmClusters": ShardableCloudAutonomousVmClusters,
+ "ShardedDatabase": ShardedDatabase,
+ "ShardedDatabaseCollection": ShardedDatabaseCollection,
+ "ShardedDatabaseSummary": ShardedDatabaseSummary,
+ "UpdatePrivateEndpointDetails": UpdatePrivateEndpointDetails,
+ "UpdateShardedDatabaseDetails": UpdateShardedDatabaseDetails,
+ "UploadSignedCertificateAndGenerateWalletDetails": UploadSignedCertificateAndGenerateWalletDetails,
+ "WorkRequest": WorkRequest,
+ "WorkRequestError": WorkRequestError,
+ "WorkRequestErrorCollection": WorkRequestErrorCollection,
+ "WorkRequestLogEntry": WorkRequestLogEntry,
+ "WorkRequestLogEntryCollection": WorkRequestLogEntryCollection,
+ "WorkRequestResource": WorkRequestResource,
+ "WorkRequestSummary": WorkRequestSummary,
+ "WorkRequestSummaryCollection": WorkRequestSummaryCollection
+}
diff --git a/src/oci/globally_distributed_database/models/change_private_endpoint_compartment_details.py b/src/oci/globally_distributed_database/models/change_private_endpoint_compartment_details.py
new file mode 100644
index 0000000000..d5939c040a
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/change_private_endpoint_compartment_details.py
@@ -0,0 +1,76 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ChangePrivateEndpointCompartmentDetails(object):
+ """
+ The configuration details for moving the resource for private endpoint to other compartment.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ChangePrivateEndpointCompartmentDetails 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 ChangePrivateEndpointCompartmentDetails.
+ :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 ChangePrivateEndpointCompartmentDetails.
+ The `OCID`__ of the compartment to move the resource to.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :return: The compartment_id of this ChangePrivateEndpointCompartmentDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ChangePrivateEndpointCompartmentDetails.
+ The `OCID`__ of the compartment to move the resource to.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :param compartment_id: The compartment_id of this ChangePrivateEndpointCompartmentDetails.
+ :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/globally_distributed_database/models/change_sharded_database_compartment_details.py b/src/oci/globally_distributed_database/models/change_sharded_database_compartment_details.py
new file mode 100644
index 0000000000..ca7b8508dd
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/change_sharded_database_compartment_details.py
@@ -0,0 +1,76 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ChangeShardedDatabaseCompartmentDetails(object):
+ """
+ The configuration details for moving the resource for sharded database to other compartment.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ChangeShardedDatabaseCompartmentDetails 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 ChangeShardedDatabaseCompartmentDetails.
+ :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 ChangeShardedDatabaseCompartmentDetails.
+ The `OCID`__ of the compartment to move the resource to.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :return: The compartment_id of this ChangeShardedDatabaseCompartmentDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ChangeShardedDatabaseCompartmentDetails.
+ The `OCID`__ of the compartment to move the resource to.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :param compartment_id: The compartment_id of this ChangeShardedDatabaseCompartmentDetails.
+ :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/globally_distributed_database/models/configure_sharded_database_gsms_details.py b/src/oci/globally_distributed_database/models/configure_sharded_database_gsms_details.py
new file mode 100644
index 0000000000..861c7514be
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/configure_sharded_database_gsms_details.py
@@ -0,0 +1,105 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ConfigureShardedDatabaseGsmsDetails(object):
+ """
+ Details of the request to configure new global service manager(GSM) instances for the sharded database.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ConfigureShardedDatabaseGsmsDetails 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 ConfigureShardedDatabaseGsmsDetails.
+ :type old_gsm_names: list[str]
+
+ :param is_latest_gsm_image:
+ The value to assign to the is_latest_gsm_image property of this ConfigureShardedDatabaseGsmsDetails.
+ :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 ConfigureShardedDatabaseGsmsDetails.
+ 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 ConfigureShardedDatabaseGsmsDetails.
+ :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 ConfigureShardedDatabaseGsmsDetails.
+ 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 ConfigureShardedDatabaseGsmsDetails.
+ :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 ConfigureShardedDatabaseGsmsDetails.
+ 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 ConfigureShardedDatabaseGsmsDetails.
+ :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 ConfigureShardedDatabaseGsmsDetails.
+ 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 ConfigureShardedDatabaseGsmsDetails.
+ :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/globally_distributed_database/models/connection_string.py b/src/oci/globally_distributed_database/models/connection_string.py
new file mode 100644
index 0000000000..dc18370f27
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/connection_string.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ConnectionString(object):
+ """
+ Details of sharded database connection String.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ConnectionString 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 ConnectionString.
+ :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 ConnectionString.
+ Collection of connection strings.
+
+
+ :return: The all_connection_strings of this ConnectionString.
+ :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 ConnectionString.
+ Collection of connection strings.
+
+
+ :param all_connection_strings: The all_connection_strings of this ConnectionString.
+ :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/globally_distributed_database/models/create_dedicated_catalog_detail.py b/src/oci/globally_distributed_database/models/create_dedicated_catalog_detail.py
new file mode 100644
index 0000000000..018bdf5f08
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/create_dedicated_catalog_detail.py
@@ -0,0 +1,262 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateDedicatedCatalogDetail(object):
+ """
+ Details required for creation of ATP-D based catalog.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateDedicatedCatalogDetail object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param encryption_key_details:
+ The value to assign to the encryption_key_details property of this CreateDedicatedCatalogDetail.
+ :type encryption_key_details: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+
+ :param admin_password:
+ The value to assign to the admin_password property of this CreateDedicatedCatalogDetail.
+ :type admin_password: str
+
+ :param compute_count:
+ The value to assign to the compute_count property of this CreateDedicatedCatalogDetail.
+ :type compute_count: float
+
+ :param data_storage_size_in_gbs:
+ The value to assign to the data_storage_size_in_gbs property of this CreateDedicatedCatalogDetail.
+ :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 CreateDedicatedCatalogDetail.
+ :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 CreateDedicatedCatalogDetail.
+ :type cloud_autonomous_vm_cluster_id: str
+
+ :param peer_cloud_autonomous_vm_cluster_id:
+ The value to assign to the peer_cloud_autonomous_vm_cluster_id property of this CreateDedicatedCatalogDetail.
+ :type peer_cloud_autonomous_vm_cluster_id: str
+
+ """
+ self.swagger_types = {
+ 'encryption_key_details': 'DedicatedShardOrCatalogEncryptionKeyDetails',
+ 'admin_password': 'str',
+ 'compute_count': 'float',
+ 'data_storage_size_in_gbs': 'float',
+ 'is_auto_scaling_enabled': 'bool',
+ 'cloud_autonomous_vm_cluster_id': 'str',
+ 'peer_cloud_autonomous_vm_cluster_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'encryption_key_details': 'encryptionKeyDetails',
+ 'admin_password': 'adminPassword',
+ 'compute_count': 'computeCount',
+ 'data_storage_size_in_gbs': 'dataStorageSizeInGbs',
+ 'is_auto_scaling_enabled': 'isAutoScalingEnabled',
+ 'cloud_autonomous_vm_cluster_id': 'cloudAutonomousVmClusterId',
+ 'peer_cloud_autonomous_vm_cluster_id': 'peerCloudAutonomousVmClusterId'
+ }
+
+ self._encryption_key_details = 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._peer_cloud_autonomous_vm_cluster_id = None
+
+ @property
+ def encryption_key_details(self):
+ """
+ Gets the encryption_key_details of this CreateDedicatedCatalogDetail.
+
+ :return: The encryption_key_details of this CreateDedicatedCatalogDetail.
+ :rtype: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+ """
+ return self._encryption_key_details
+
+ @encryption_key_details.setter
+ def encryption_key_details(self, encryption_key_details):
+ """
+ Sets the encryption_key_details of this CreateDedicatedCatalogDetail.
+
+ :param encryption_key_details: The encryption_key_details of this CreateDedicatedCatalogDetail.
+ :type: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+ """
+ self._encryption_key_details = encryption_key_details
+
+ @property
+ def admin_password(self):
+ """
+ **[Required]** Gets the admin_password of this CreateDedicatedCatalogDetail.
+ Admin password for the catalog database.
+
+
+ :return: The admin_password of this CreateDedicatedCatalogDetail.
+ :rtype: str
+ """
+ return self._admin_password
+
+ @admin_password.setter
+ def admin_password(self, admin_password):
+ """
+ Sets the admin_password of this CreateDedicatedCatalogDetail.
+ Admin password for the catalog database.
+
+
+ :param admin_password: The admin_password of this CreateDedicatedCatalogDetail.
+ :type: str
+ """
+ self._admin_password = admin_password
+
+ @property
+ def compute_count(self):
+ """
+ **[Required]** Gets the compute_count of this CreateDedicatedCatalogDetail.
+ The compute count for the catalog database. It has to be in multiple of 2.
+
+
+ :return: The compute_count of this CreateDedicatedCatalogDetail.
+ :rtype: float
+ """
+ return self._compute_count
+
+ @compute_count.setter
+ def compute_count(self, compute_count):
+ """
+ Sets the compute_count of this CreateDedicatedCatalogDetail.
+ The compute count for the catalog database. It has to be in multiple of 2.
+
+
+ :param compute_count: The compute_count of this CreateDedicatedCatalogDetail.
+ :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 CreateDedicatedCatalogDetail.
+ The data disk group size to be allocated in GBs for the catalog database.
+
+
+ :return: The data_storage_size_in_gbs of this CreateDedicatedCatalogDetail.
+ :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 CreateDedicatedCatalogDetail.
+ 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 CreateDedicatedCatalogDetail.
+ :type: float
+ """
+ self._data_storage_size_in_gbs = data_storage_size_in_gbs
+
+ @property
+ def is_auto_scaling_enabled(self):
+ """
+ **[Required]** Gets the is_auto_scaling_enabled of this CreateDedicatedCatalogDetail.
+ Determines the auto-scaling mode for the catalog database.
+
+
+ :return: The is_auto_scaling_enabled of this CreateDedicatedCatalogDetail.
+ :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 CreateDedicatedCatalogDetail.
+ Determines the auto-scaling mode for the catalog database.
+
+
+ :param is_auto_scaling_enabled: The is_auto_scaling_enabled of this CreateDedicatedCatalogDetail.
+ :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 CreateDedicatedCatalogDetail.
+ The `OCID`__ of the cloud Autonomous Exadata VM Cluster.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :return: The cloud_autonomous_vm_cluster_id of this CreateDedicatedCatalogDetail.
+ :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 CreateDedicatedCatalogDetail.
+ The `OCID`__ of the cloud Autonomous Exadata VM Cluster.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :param cloud_autonomous_vm_cluster_id: The cloud_autonomous_vm_cluster_id of this CreateDedicatedCatalogDetail.
+ :type: str
+ """
+ self._cloud_autonomous_vm_cluster_id = cloud_autonomous_vm_cluster_id
+
+ @property
+ def peer_cloud_autonomous_vm_cluster_id(self):
+ """
+ Gets the peer_cloud_autonomous_vm_cluster_id of this CreateDedicatedCatalogDetail.
+ The `OCID`__ of the peer cloud Autonomous Exadata VM Cluster.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :return: The peer_cloud_autonomous_vm_cluster_id of this CreateDedicatedCatalogDetail.
+ :rtype: str
+ """
+ return self._peer_cloud_autonomous_vm_cluster_id
+
+ @peer_cloud_autonomous_vm_cluster_id.setter
+ def peer_cloud_autonomous_vm_cluster_id(self, peer_cloud_autonomous_vm_cluster_id):
+ """
+ Sets the peer_cloud_autonomous_vm_cluster_id of this CreateDedicatedCatalogDetail.
+ The `OCID`__ of the peer cloud Autonomous Exadata VM Cluster.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :param peer_cloud_autonomous_vm_cluster_id: The peer_cloud_autonomous_vm_cluster_id of this CreateDedicatedCatalogDetail.
+ :type: str
+ """
+ self._peer_cloud_autonomous_vm_cluster_id = peer_cloud_autonomous_vm_cluster_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/globally_distributed_database/models/create_dedicated_shard_detail.py b/src/oci/globally_distributed_database/models/create_dedicated_shard_detail.py
new file mode 100644
index 0000000000..387d7109c8
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/create_dedicated_shard_detail.py
@@ -0,0 +1,297 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateDedicatedShardDetail(object):
+ """
+ Details required for creation of ATP-D based shard.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateDedicatedShardDetail object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param encryption_key_details:
+ The value to assign to the encryption_key_details property of this CreateDedicatedShardDetail.
+ :type encryption_key_details: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+
+ :param admin_password:
+ The value to assign to the admin_password property of this CreateDedicatedShardDetail.
+ :type admin_password: str
+
+ :param compute_count:
+ The value to assign to the compute_count property of this CreateDedicatedShardDetail.
+ :type compute_count: float
+
+ :param data_storage_size_in_gbs:
+ The value to assign to the data_storage_size_in_gbs property of this CreateDedicatedShardDetail.
+ :type data_storage_size_in_gbs: float
+
+ :param shard_space:
+ The value to assign to the shard_space property of this CreateDedicatedShardDetail.
+ :type shard_space: str
+
+ :param is_auto_scaling_enabled:
+ The value to assign to the is_auto_scaling_enabled property of this CreateDedicatedShardDetail.
+ :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 CreateDedicatedShardDetail.
+ :type cloud_autonomous_vm_cluster_id: str
+
+ :param peer_cloud_autonomous_vm_cluster_id:
+ The value to assign to the peer_cloud_autonomous_vm_cluster_id property of this CreateDedicatedShardDetail.
+ :type peer_cloud_autonomous_vm_cluster_id: str
+
+ """
+ self.swagger_types = {
+ 'encryption_key_details': 'DedicatedShardOrCatalogEncryptionKeyDetails',
+ 'admin_password': 'str',
+ 'compute_count': 'float',
+ 'data_storage_size_in_gbs': 'float',
+ 'shard_space': 'str',
+ 'is_auto_scaling_enabled': 'bool',
+ 'cloud_autonomous_vm_cluster_id': 'str',
+ 'peer_cloud_autonomous_vm_cluster_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'encryption_key_details': 'encryptionKeyDetails',
+ 'admin_password': 'adminPassword',
+ 'compute_count': 'computeCount',
+ 'data_storage_size_in_gbs': 'dataStorageSizeInGbs',
+ 'shard_space': 'shardSpace',
+ 'is_auto_scaling_enabled': 'isAutoScalingEnabled',
+ 'cloud_autonomous_vm_cluster_id': 'cloudAutonomousVmClusterId',
+ 'peer_cloud_autonomous_vm_cluster_id': 'peerCloudAutonomousVmClusterId'
+ }
+
+ self._encryption_key_details = None
+ self._admin_password = None
+ self._compute_count = None
+ self._data_storage_size_in_gbs = None
+ self._shard_space = None
+ self._is_auto_scaling_enabled = None
+ self._cloud_autonomous_vm_cluster_id = None
+ self._peer_cloud_autonomous_vm_cluster_id = None
+
+ @property
+ def encryption_key_details(self):
+ """
+ Gets the encryption_key_details of this CreateDedicatedShardDetail.
+
+ :return: The encryption_key_details of this CreateDedicatedShardDetail.
+ :rtype: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+ """
+ return self._encryption_key_details
+
+ @encryption_key_details.setter
+ def encryption_key_details(self, encryption_key_details):
+ """
+ Sets the encryption_key_details of this CreateDedicatedShardDetail.
+
+ :param encryption_key_details: The encryption_key_details of this CreateDedicatedShardDetail.
+ :type: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+ """
+ self._encryption_key_details = encryption_key_details
+
+ @property
+ def admin_password(self):
+ """
+ **[Required]** Gets the admin_password of this CreateDedicatedShardDetail.
+ Admin password for shard database.
+
+
+ :return: The admin_password of this CreateDedicatedShardDetail.
+ :rtype: str
+ """
+ return self._admin_password
+
+ @admin_password.setter
+ def admin_password(self, admin_password):
+ """
+ Sets the admin_password of this CreateDedicatedShardDetail.
+ Admin password for shard database.
+
+
+ :param admin_password: The admin_password of this CreateDedicatedShardDetail.
+ :type: str
+ """
+ self._admin_password = admin_password
+
+ @property
+ def compute_count(self):
+ """
+ **[Required]** Gets the compute_count of this CreateDedicatedShardDetail.
+ The compute count for the shard database. It has to be in multiples of 2.
+
+
+ :return: The compute_count of this CreateDedicatedShardDetail.
+ :rtype: float
+ """
+ return self._compute_count
+
+ @compute_count.setter
+ def compute_count(self, compute_count):
+ """
+ Sets the compute_count of this CreateDedicatedShardDetail.
+ The compute count for the shard database. It has to be in multiples of 2.
+
+
+ :param compute_count: The compute_count of this CreateDedicatedShardDetail.
+ :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 CreateDedicatedShardDetail.
+ The data disk group size to be allocated in GBs for the shard database.
+
+
+ :return: The data_storage_size_in_gbs of this CreateDedicatedShardDetail.
+ :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 CreateDedicatedShardDetail.
+ 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 CreateDedicatedShardDetail.
+ :type: float
+ """
+ self._data_storage_size_in_gbs = data_storage_size_in_gbs
+
+ @property
+ def shard_space(self):
+ """
+ Gets the shard_space of this CreateDedicatedShardDetail.
+ The shard space name for the shard database. Shard space for existing shard cannot be changed, once shard is created.
+ Shard space name shall be used while creation of new shards. For User defined sharding, every shard must have a unique
+ shard space name. For system defined sharding, shard space name is not required.
+
+
+ :return: The shard_space of this CreateDedicatedShardDetail.
+ :rtype: str
+ """
+ return self._shard_space
+
+ @shard_space.setter
+ def shard_space(self, shard_space):
+ """
+ Sets the shard_space of this CreateDedicatedShardDetail.
+ The shard space name for the shard database. Shard space for existing shard cannot be changed, once shard is created.
+ Shard space name shall be used while creation of new shards. For User defined sharding, every shard must have a unique
+ shard space name. For system defined sharding, shard space name is not required.
+
+
+ :param shard_space: The shard_space of this CreateDedicatedShardDetail.
+ :type: str
+ """
+ self._shard_space = shard_space
+
+ @property
+ def is_auto_scaling_enabled(self):
+ """
+ **[Required]** Gets the is_auto_scaling_enabled of this CreateDedicatedShardDetail.
+ Determines the auto-scaling mode for the shard database.
+
+
+ :return: The is_auto_scaling_enabled of this CreateDedicatedShardDetail.
+ :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 CreateDedicatedShardDetail.
+ Determines the auto-scaling mode for the shard database.
+
+
+ :param is_auto_scaling_enabled: The is_auto_scaling_enabled of this CreateDedicatedShardDetail.
+ :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 CreateDedicatedShardDetail.
+ The `OCID`__ of the cloud Autonomous Exadata VM Cluster.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :return: The cloud_autonomous_vm_cluster_id of this CreateDedicatedShardDetail.
+ :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 CreateDedicatedShardDetail.
+ The `OCID`__ of the cloud Autonomous Exadata VM Cluster.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :param cloud_autonomous_vm_cluster_id: The cloud_autonomous_vm_cluster_id of this CreateDedicatedShardDetail.
+ :type: str
+ """
+ self._cloud_autonomous_vm_cluster_id = cloud_autonomous_vm_cluster_id
+
+ @property
+ def peer_cloud_autonomous_vm_cluster_id(self):
+ """
+ Gets the peer_cloud_autonomous_vm_cluster_id of this CreateDedicatedShardDetail.
+ The `OCID`__ of the peer cloud Autonomous Exadata VM Cluster.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :return: The peer_cloud_autonomous_vm_cluster_id of this CreateDedicatedShardDetail.
+ :rtype: str
+ """
+ return self._peer_cloud_autonomous_vm_cluster_id
+
+ @peer_cloud_autonomous_vm_cluster_id.setter
+ def peer_cloud_autonomous_vm_cluster_id(self, peer_cloud_autonomous_vm_cluster_id):
+ """
+ Sets the peer_cloud_autonomous_vm_cluster_id of this CreateDedicatedShardDetail.
+ The `OCID`__ of the peer cloud Autonomous Exadata VM Cluster.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :param peer_cloud_autonomous_vm_cluster_id: The peer_cloud_autonomous_vm_cluster_id of this CreateDedicatedShardDetail.
+ :type: str
+ """
+ self._peer_cloud_autonomous_vm_cluster_id = peer_cloud_autonomous_vm_cluster_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/globally_distributed_database/models/create_dedicated_sharded_database.py b/src/oci/globally_distributed_database/models/create_dedicated_sharded_database.py
new file mode 100644
index 0000000000..bd203ef2ce
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/create_dedicated_sharded_database.py
@@ -0,0 +1,561 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+from .create_sharded_database_details import CreateShardedDatabaseDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateDedicatedShardedDatabase(CreateShardedDatabaseDetails):
+ """
+ Request details for creation of ATP-Dedicated based sharded database.
+ """
+
+ #: A constant which can be used with the db_workload property of a CreateDedicatedShardedDatabase.
+ #: This constant has a value of "OLTP"
+ DB_WORKLOAD_OLTP = "OLTP"
+
+ #: A constant which can be used with the db_workload property of a CreateDedicatedShardedDatabase.
+ #: This constant has a value of "DW"
+ DB_WORKLOAD_DW = "DW"
+
+ #: A constant which can be used with the sharding_method property of a CreateDedicatedShardedDatabase.
+ #: This constant has a value of "USER"
+ SHARDING_METHOD_USER = "USER"
+
+ #: A constant which can be used with the sharding_method property of a CreateDedicatedShardedDatabase.
+ #: This constant has a value of "SYSTEM"
+ SHARDING_METHOD_SYSTEM = "SYSTEM"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateDedicatedShardedDatabase object with values from keyword arguments. The default value of the :py:attr:`~oci.globally_distributed_database.models.CreateDedicatedShardedDatabase.db_deployment_type` attribute
+ of this class is ``DEDICATED`` 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 CreateDedicatedShardedDatabase.
+ :type compartment_id: str
+
+ :param db_deployment_type:
+ The value to assign to the db_deployment_type property of this CreateDedicatedShardedDatabase.
+ Allowed values for this property are: "DEDICATED"
+ :type db_deployment_type: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateDedicatedShardedDatabase.
+ :type display_name: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreateDedicatedShardedDatabase.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreateDedicatedShardedDatabase.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param cluster_certificate_common_name:
+ The value to assign to the cluster_certificate_common_name property of this CreateDedicatedShardedDatabase.
+ :type cluster_certificate_common_name: str
+
+ :param chunks:
+ The value to assign to the chunks property of this CreateDedicatedShardedDatabase.
+ :type chunks: int
+
+ :param db_workload:
+ The value to assign to the db_workload property of this CreateDedicatedShardedDatabase.
+ Allowed values for this property are: "OLTP", "DW"
+ :type db_workload: str
+
+ :param sharding_method:
+ The value to assign to the sharding_method property of this CreateDedicatedShardedDatabase.
+ Allowed values for this property are: "USER", "SYSTEM"
+ :type sharding_method: str
+
+ :param db_version:
+ The value to assign to the db_version property of this CreateDedicatedShardedDatabase.
+ :type db_version: str
+
+ :param character_set:
+ The value to assign to the character_set property of this CreateDedicatedShardedDatabase.
+ :type character_set: str
+
+ :param ncharacter_set:
+ The value to assign to the ncharacter_set property of this CreateDedicatedShardedDatabase.
+ :type ncharacter_set: str
+
+ :param listener_port:
+ The value to assign to the listener_port property of this CreateDedicatedShardedDatabase.
+ :type listener_port: int
+
+ :param listener_port_tls:
+ The value to assign to the listener_port_tls property of this CreateDedicatedShardedDatabase.
+ :type listener_port_tls: int
+
+ :param ons_port_local:
+ The value to assign to the ons_port_local property of this CreateDedicatedShardedDatabase.
+ :type ons_port_local: int
+
+ :param ons_port_remote:
+ The value to assign to the ons_port_remote property of this CreateDedicatedShardedDatabase.
+ :type ons_port_remote: int
+
+ :param prefix:
+ The value to assign to the prefix property of this CreateDedicatedShardedDatabase.
+ :type prefix: str
+
+ :param shard_details:
+ The value to assign to the shard_details property of this CreateDedicatedShardedDatabase.
+ :type shard_details: list[oci.globally_distributed_database.models.CreateDedicatedShardDetail]
+
+ :param catalog_details:
+ The value to assign to the catalog_details property of this CreateDedicatedShardedDatabase.
+ :type catalog_details: list[oci.globally_distributed_database.models.CreateDedicatedCatalogDetail]
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str',
+ 'db_deployment_type': 'str',
+ 'display_name': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'cluster_certificate_common_name': 'str',
+ 'chunks': 'int',
+ 'db_workload': 'str',
+ 'sharding_method': 'str',
+ 'db_version': 'str',
+ 'character_set': 'str',
+ 'ncharacter_set': 'str',
+ 'listener_port': 'int',
+ 'listener_port_tls': 'int',
+ 'ons_port_local': 'int',
+ 'ons_port_remote': 'int',
+ 'prefix': 'str',
+ 'shard_details': 'list[CreateDedicatedShardDetail]',
+ 'catalog_details': 'list[CreateDedicatedCatalogDetail]'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId',
+ 'db_deployment_type': 'dbDeploymentType',
+ 'display_name': 'displayName',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags',
+ 'cluster_certificate_common_name': 'clusterCertificateCommonName',
+ 'chunks': 'chunks',
+ 'db_workload': 'dbWorkload',
+ 'sharding_method': 'shardingMethod',
+ 'db_version': 'dbVersion',
+ 'character_set': 'characterSet',
+ 'ncharacter_set': 'ncharacterSet',
+ 'listener_port': 'listenerPort',
+ 'listener_port_tls': 'listenerPortTls',
+ 'ons_port_local': 'onsPortLocal',
+ 'ons_port_remote': 'onsPortRemote',
+ 'prefix': 'prefix',
+ 'shard_details': 'shardDetails',
+ 'catalog_details': 'catalogDetails'
+ }
+
+ self._compartment_id = None
+ self._db_deployment_type = None
+ self._display_name = None
+ self._freeform_tags = None
+ self._defined_tags = None
+ self._cluster_certificate_common_name = None
+ self._chunks = None
+ self._db_workload = None
+ self._sharding_method = None
+ self._db_version = 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._prefix = None
+ self._shard_details = None
+ self._catalog_details = None
+ self._db_deployment_type = 'DEDICATED'
+
+ @property
+ def cluster_certificate_common_name(self):
+ """
+ Gets the cluster_certificate_common_name of this CreateDedicatedShardedDatabase.
+ The certificate common name used in all cloudAutonomousVmClusters for the sharded database topology. Eg. Production.
+ All the clusters used in one sharded database topology shall have same CABundle setup. Valid characterset for
+ clusterCertificateCommonName include uppercase or lowercase letters, numbers, hyphens, underscores, and period.
+
+
+ :return: The cluster_certificate_common_name of this CreateDedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._cluster_certificate_common_name
+
+ @cluster_certificate_common_name.setter
+ def cluster_certificate_common_name(self, cluster_certificate_common_name):
+ """
+ Sets the cluster_certificate_common_name of this CreateDedicatedShardedDatabase.
+ The certificate common name used in all cloudAutonomousVmClusters for the sharded database topology. Eg. Production.
+ All the clusters used in one sharded database topology shall have same CABundle setup. Valid characterset for
+ clusterCertificateCommonName include uppercase or lowercase letters, numbers, hyphens, underscores, and period.
+
+
+ :param cluster_certificate_common_name: The cluster_certificate_common_name of this CreateDedicatedShardedDatabase.
+ :type: str
+ """
+ self._cluster_certificate_common_name = cluster_certificate_common_name
+
+ @property
+ def chunks(self):
+ """
+ Gets the chunks of this CreateDedicatedShardedDatabase.
+ The default number of unique chunks in a shardspace. The value of chunks must be
+ greater than 2 times the size of the largest shardgroup in any shardspace.
+
+
+ :return: The chunks of this CreateDedicatedShardedDatabase.
+ :rtype: int
+ """
+ return self._chunks
+
+ @chunks.setter
+ def chunks(self, chunks):
+ """
+ Sets the chunks of this CreateDedicatedShardedDatabase.
+ The default number of unique chunks in a shardspace. The value of chunks must be
+ greater than 2 times the size of the largest shardgroup in any shardspace.
+
+
+ :param chunks: The chunks of this CreateDedicatedShardedDatabase.
+ :type: int
+ """
+ self._chunks = chunks
+
+ @property
+ def db_workload(self):
+ """
+ **[Required]** Gets the db_workload of this CreateDedicatedShardedDatabase.
+ Possible workload types.
+
+ Allowed values for this property are: "OLTP", "DW"
+
+
+ :return: The db_workload of this CreateDedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._db_workload
+
+ @db_workload.setter
+ def db_workload(self, db_workload):
+ """
+ Sets the db_workload of this CreateDedicatedShardedDatabase.
+ Possible workload types.
+
+
+ :param db_workload: The db_workload of this CreateDedicatedShardedDatabase.
+ :type: str
+ """
+ allowed_values = ["OLTP", "DW"]
+ if not value_allowed_none_or_none_sentinel(db_workload, allowed_values):
+ raise ValueError(
+ f"Invalid value for `db_workload`, must be None or one of {allowed_values}"
+ )
+ self._db_workload = db_workload
+
+ @property
+ def sharding_method(self):
+ """
+ **[Required]** Gets the sharding_method of this CreateDedicatedShardedDatabase.
+ Sharding Method.
+
+ Allowed values for this property are: "USER", "SYSTEM"
+
+
+ :return: The sharding_method of this CreateDedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._sharding_method
+
+ @sharding_method.setter
+ def sharding_method(self, sharding_method):
+ """
+ Sets the sharding_method of this CreateDedicatedShardedDatabase.
+ Sharding Method.
+
+
+ :param sharding_method: The sharding_method of this CreateDedicatedShardedDatabase.
+ :type: str
+ """
+ allowed_values = ["USER", "SYSTEM"]
+ if not value_allowed_none_or_none_sentinel(sharding_method, allowed_values):
+ raise ValueError(
+ f"Invalid value for `sharding_method`, must be None or one of {allowed_values}"
+ )
+ self._sharding_method = sharding_method
+
+ @property
+ def db_version(self):
+ """
+ **[Required]** Gets the db_version of this CreateDedicatedShardedDatabase.
+ Oracle Database version of the Autonomous Container Database.
+
+
+ :return: The db_version of this CreateDedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._db_version
+
+ @db_version.setter
+ def db_version(self, db_version):
+ """
+ Sets the db_version of this CreateDedicatedShardedDatabase.
+ Oracle Database version of the Autonomous Container Database.
+
+
+ :param db_version: The db_version of this CreateDedicatedShardedDatabase.
+ :type: str
+ """
+ self._db_version = db_version
+
+ @property
+ def character_set(self):
+ """
+ **[Required]** Gets the character_set of this CreateDedicatedShardedDatabase.
+ The character set for the new shard database being created. Use database api ListAutonomousDatabaseCharacterSets to
+ get the list of allowed character set for autonomous dedicated database. See documentation:
+ https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabaseCharacterSets/ListAutonomousDatabaseCharacterSets
+
+
+ :return: The character_set of this CreateDedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._character_set
+
+ @character_set.setter
+ def character_set(self, character_set):
+ """
+ Sets the character_set of this CreateDedicatedShardedDatabase.
+ The character set for the new shard database being created. Use database api ListAutonomousDatabaseCharacterSets to
+ get the list of allowed character set for autonomous dedicated database. See documentation:
+ https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabaseCharacterSets/ListAutonomousDatabaseCharacterSets
+
+
+ :param character_set: The character_set of this CreateDedicatedShardedDatabase.
+ :type: str
+ """
+ self._character_set = character_set
+
+ @property
+ def ncharacter_set(self):
+ """
+ **[Required]** Gets the ncharacter_set of this CreateDedicatedShardedDatabase.
+ The national character set for the new shard database being created. Use database api ListAutonomousDatabaseCharacterSets to
+ get the list of allowed national character set for autonomous dedicated database. See documentation:
+ https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabaseCharacterSets/ListAutonomousDatabaseCharacterSets
+
+
+ :return: The ncharacter_set of this CreateDedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._ncharacter_set
+
+ @ncharacter_set.setter
+ def ncharacter_set(self, ncharacter_set):
+ """
+ Sets the ncharacter_set of this CreateDedicatedShardedDatabase.
+ The national character set for the new shard database being created. Use database api ListAutonomousDatabaseCharacterSets to
+ get the list of allowed national character set for autonomous dedicated database. See documentation:
+ https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabaseCharacterSets/ListAutonomousDatabaseCharacterSets
+
+
+ :param ncharacter_set: The ncharacter_set of this CreateDedicatedShardedDatabase.
+ :type: str
+ """
+ self._ncharacter_set = ncharacter_set
+
+ @property
+ def listener_port(self):
+ """
+ **[Required]** Gets the listener_port of this CreateDedicatedShardedDatabase.
+ The listener port number for sharded database.
+
+
+ :return: The listener_port of this CreateDedicatedShardedDatabase.
+ :rtype: int
+ """
+ return self._listener_port
+
+ @listener_port.setter
+ def listener_port(self, listener_port):
+ """
+ Sets the listener_port of this CreateDedicatedShardedDatabase.
+ The listener port number for sharded database.
+
+
+ :param listener_port: The listener_port of this CreateDedicatedShardedDatabase.
+ :type: int
+ """
+ self._listener_port = listener_port
+
+ @property
+ def listener_port_tls(self):
+ """
+ **[Required]** Gets the listener_port_tls of this CreateDedicatedShardedDatabase.
+ The TLS listener port number for sharded database.
+
+
+ :return: The listener_port_tls of this CreateDedicatedShardedDatabase.
+ :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 CreateDedicatedShardedDatabase.
+ The TLS listener port number for sharded database.
+
+
+ :param listener_port_tls: The listener_port_tls of this CreateDedicatedShardedDatabase.
+ :type: int
+ """
+ self._listener_port_tls = listener_port_tls
+
+ @property
+ def ons_port_local(self):
+ """
+ **[Required]** Gets the ons_port_local of this CreateDedicatedShardedDatabase.
+ Ons port local for sharded database.
+
+
+ :return: The ons_port_local of this CreateDedicatedShardedDatabase.
+ :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 CreateDedicatedShardedDatabase.
+ Ons port local for sharded database.
+
+
+ :param ons_port_local: The ons_port_local of this CreateDedicatedShardedDatabase.
+ :type: int
+ """
+ self._ons_port_local = ons_port_local
+
+ @property
+ def ons_port_remote(self):
+ """
+ **[Required]** Gets the ons_port_remote of this CreateDedicatedShardedDatabase.
+ Ons remote port for sharded database.
+
+
+ :return: The ons_port_remote of this CreateDedicatedShardedDatabase.
+ :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 CreateDedicatedShardedDatabase.
+ Ons remote port for sharded database.
+
+
+ :param ons_port_remote: The ons_port_remote of this CreateDedicatedShardedDatabase.
+ :type: int
+ """
+ self._ons_port_remote = ons_port_remote
+
+ @property
+ def prefix(self):
+ """
+ **[Required]** Gets the prefix of this CreateDedicatedShardedDatabase.
+ Unique name prefix for the sharded 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 CreateDedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._prefix
+
+ @prefix.setter
+ def prefix(self, prefix):
+ """
+ Sets the prefix of this CreateDedicatedShardedDatabase.
+ Unique name prefix for the sharded 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 CreateDedicatedShardedDatabase.
+ :type: str
+ """
+ self._prefix = prefix
+
+ @property
+ def shard_details(self):
+ """
+ **[Required]** Gets the shard_details of this CreateDedicatedShardedDatabase.
+ Collection of ATP-Dedicated shards that needs to be created.
+
+
+ :return: The shard_details of this CreateDedicatedShardedDatabase.
+ :rtype: list[oci.globally_distributed_database.models.CreateDedicatedShardDetail]
+ """
+ return self._shard_details
+
+ @shard_details.setter
+ def shard_details(self, shard_details):
+ """
+ Sets the shard_details of this CreateDedicatedShardedDatabase.
+ Collection of ATP-Dedicated shards that needs to be created.
+
+
+ :param shard_details: The shard_details of this CreateDedicatedShardedDatabase.
+ :type: list[oci.globally_distributed_database.models.CreateDedicatedShardDetail]
+ """
+ self._shard_details = shard_details
+
+ @property
+ def catalog_details(self):
+ """
+ **[Required]** Gets the catalog_details of this CreateDedicatedShardedDatabase.
+ Collection of ATP-Dedicated catalogs that needs to be created.
+
+
+ :return: The catalog_details of this CreateDedicatedShardedDatabase.
+ :rtype: list[oci.globally_distributed_database.models.CreateDedicatedCatalogDetail]
+ """
+ return self._catalog_details
+
+ @catalog_details.setter
+ def catalog_details(self, catalog_details):
+ """
+ Sets the catalog_details of this CreateDedicatedShardedDatabase.
+ Collection of ATP-Dedicated catalogs that needs to be created.
+
+
+ :param catalog_details: The catalog_details of this CreateDedicatedShardedDatabase.
+ :type: list[oci.globally_distributed_database.models.CreateDedicatedCatalogDetail]
+ """
+ self._catalog_details = catalog_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/globally_distributed_database/models/create_private_endpoint_details.py b/src/oci/globally_distributed_database/models/create_private_endpoint_details.py
new file mode 100644
index 0000000000..f33a05b6a0
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/create_private_endpoint_details.py
@@ -0,0 +1,262 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreatePrivateEndpointDetails(object):
+ """
+ Details required for private endpoint creation.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreatePrivateEndpointDetails 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 CreatePrivateEndpointDetails.
+ :type compartment_id: str
+
+ :param subnet_id:
+ The value to assign to the subnet_id property of this CreatePrivateEndpointDetails.
+ :type subnet_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CreatePrivateEndpointDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreatePrivateEndpointDetails.
+ :type description: str
+
+ :param nsg_ids:
+ The value to assign to the nsg_ids property of this CreatePrivateEndpointDetails.
+ :type nsg_ids: list[str]
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreatePrivateEndpointDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreatePrivateEndpointDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str',
+ 'subnet_id': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'nsg_ids': 'list[str]',
+ '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',
+ 'nsg_ids': 'nsgIds',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._compartment_id = None
+ self._subnet_id = None
+ self._display_name = None
+ self._description = None
+ self._nsg_ids = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreatePrivateEndpointDetails.
+ Identifier of the compartment where private endpoint is to be created.
+
+
+ :return: The compartment_id of this CreatePrivateEndpointDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreatePrivateEndpointDetails.
+ Identifier of the compartment where private endpoint is to be created.
+
+
+ :param compartment_id: The compartment_id of this CreatePrivateEndpointDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def subnet_id(self):
+ """
+ **[Required]** Gets the subnet_id of this CreatePrivateEndpointDetails.
+ Identifier of the customer subnet against which private endpoint is to be created.
+
+
+ :return: The subnet_id of this CreatePrivateEndpointDetails.
+ :rtype: str
+ """
+ return self._subnet_id
+
+ @subnet_id.setter
+ def subnet_id(self, subnet_id):
+ """
+ Sets the subnet_id of this CreatePrivateEndpointDetails.
+ Identifier of the customer subnet against which private endpoint is to be created.
+
+
+ :param subnet_id: The subnet_id of this CreatePrivateEndpointDetails.
+ :type: str
+ """
+ self._subnet_id = subnet_id
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreatePrivateEndpointDetails.
+ Private endpoint display name.
+
+
+ :return: The display_name of this CreatePrivateEndpointDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreatePrivateEndpointDetails.
+ Private endpoint display name.
+
+
+ :param display_name: The display_name of this CreatePrivateEndpointDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreatePrivateEndpointDetails.
+ PrivateEndpoint description.
+
+
+ :return: The description of this CreatePrivateEndpointDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreatePrivateEndpointDetails.
+ PrivateEndpoint description.
+
+
+ :param description: The description of this CreatePrivateEndpointDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def nsg_ids(self):
+ """
+ Gets the nsg_ids of this CreatePrivateEndpointDetails.
+ The OCIDs of the network security groups that the private endpoint belongs to.
+
+
+ :return: The nsg_ids of this CreatePrivateEndpointDetails.
+ :rtype: list[str]
+ """
+ return self._nsg_ids
+
+ @nsg_ids.setter
+ def nsg_ids(self, nsg_ids):
+ """
+ Sets the nsg_ids of this CreatePrivateEndpointDetails.
+ The OCIDs of the network security groups that the private endpoint belongs to.
+
+
+ :param nsg_ids: The nsg_ids of this CreatePrivateEndpointDetails.
+ :type: list[str]
+ """
+ self._nsg_ids = nsg_ids
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CreatePrivateEndpointDetails.
+ 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 CreatePrivateEndpointDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CreatePrivateEndpointDetails.
+ 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 CreatePrivateEndpointDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CreatePrivateEndpointDetails.
+ 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 CreatePrivateEndpointDetails.
+ :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 CreatePrivateEndpointDetails.
+ 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 CreatePrivateEndpointDetails.
+ :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/globally_distributed_database/models/create_sharded_database_details.py b/src/oci/globally_distributed_database/models/create_sharded_database_details.py
new file mode 100644
index 0000000000..6687c441a2
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/create_sharded_database_details.py
@@ -0,0 +1,229 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateShardedDatabaseDetails(object):
+ """
+ Details required for Sharded database creation.
+ """
+
+ #: A constant which can be used with the db_deployment_type property of a CreateShardedDatabaseDetails.
+ #: This constant has a value of "DEDICATED"
+ DB_DEPLOYMENT_TYPE_DEDICATED = "DEDICATED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateShardedDatabaseDetails 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.globally_distributed_database.models.CreateDedicatedShardedDatabase`
+
+ 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 CreateShardedDatabaseDetails.
+ :type compartment_id: str
+
+ :param db_deployment_type:
+ The value to assign to the db_deployment_type property of this CreateShardedDatabaseDetails.
+ Allowed values for this property are: "DEDICATED"
+ :type db_deployment_type: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateShardedDatabaseDetails.
+ :type display_name: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreateShardedDatabaseDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreateShardedDatabaseDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str',
+ 'db_deployment_type': 'str',
+ 'display_name': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId',
+ 'db_deployment_type': 'dbDeploymentType',
+ 'display_name': 'displayName',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._compartment_id = None
+ self._db_deployment_type = None
+ self._display_name = None
+ self._freeform_tags = None
+ self._defined_tags = 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['dbDeploymentType']
+
+ if type == 'DEDICATED':
+ return 'CreateDedicatedShardedDatabase'
+ else:
+ return 'CreateShardedDatabaseDetails'
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreateShardedDatabaseDetails.
+ Identifier of the compartment where sharded database is to be created.
+
+
+ :return: The compartment_id of this CreateShardedDatabaseDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreateShardedDatabaseDetails.
+ Identifier of the compartment where sharded database is to be created.
+
+
+ :param compartment_id: The compartment_id of this CreateShardedDatabaseDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def db_deployment_type(self):
+ """
+ **[Required]** Gets the db_deployment_type of this CreateShardedDatabaseDetails.
+ The database deployment type.
+
+ Allowed values for this property are: "DEDICATED"
+
+
+ :return: The db_deployment_type of this CreateShardedDatabaseDetails.
+ :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 CreateShardedDatabaseDetails.
+ The database deployment type.
+
+
+ :param db_deployment_type: The db_deployment_type of this CreateShardedDatabaseDetails.
+ :type: str
+ """
+ allowed_values = ["DEDICATED"]
+ if not value_allowed_none_or_none_sentinel(db_deployment_type, allowed_values):
+ raise ValueError(
+ f"Invalid value for `db_deployment_type`, must be None or one of {allowed_values}"
+ )
+ self._db_deployment_type = db_deployment_type
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateShardedDatabaseDetails.
+ Oracle sharded database display name.
+
+
+ :return: The display_name of this CreateShardedDatabaseDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateShardedDatabaseDetails.
+ Oracle sharded database display name.
+
+
+ :param display_name: The display_name of this CreateShardedDatabaseDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CreateShardedDatabaseDetails.
+ 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 CreateShardedDatabaseDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CreateShardedDatabaseDetails.
+ 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 CreateShardedDatabaseDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CreateShardedDatabaseDetails.
+ 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 CreateShardedDatabaseDetails.
+ :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 CreateShardedDatabaseDetails.
+ 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 CreateShardedDatabaseDetails.
+ :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/globally_distributed_database/models/dedicated_catalog_details.py b/src/oci/globally_distributed_database/models/dedicated_catalog_details.py
new file mode 100644
index 0000000000..b8cc832a7e
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/dedicated_catalog_details.py
@@ -0,0 +1,577 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DedicatedCatalogDetails(object):
+ """
+ Details of ATP-D based catalog.
+ """
+
+ #: A constant which can be used with the status property of a DedicatedCatalogDetails.
+ #: This constant has a value of "FAILED"
+ STATUS_FAILED = "FAILED"
+
+ #: A constant which can be used with the status property of a DedicatedCatalogDetails.
+ #: This constant has a value of "DELETING"
+ STATUS_DELETING = "DELETING"
+
+ #: A constant which can be used with the status property of a DedicatedCatalogDetails.
+ #: This constant has a value of "DELETED"
+ STATUS_DELETED = "DELETED"
+
+ #: A constant which can be used with the status property of a DedicatedCatalogDetails.
+ #: This constant has a value of "UPDATING"
+ STATUS_UPDATING = "UPDATING"
+
+ #: A constant which can be used with the status property of a DedicatedCatalogDetails.
+ #: This constant has a value of "CREATING"
+ STATUS_CREATING = "CREATING"
+
+ #: A constant which can be used with the status property of a DedicatedCatalogDetails.
+ #: This constant has a value of "CREATED"
+ STATUS_CREATED = "CREATED"
+
+ #: A constant which can be used with the status property of a DedicatedCatalogDetails.
+ #: 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 DedicatedCatalogDetails.
+ #: This constant has a value of "CONFIGURED"
+ STATUS_CONFIGURED = "CONFIGURED"
+
+ #: A constant which can be used with the status property of a DedicatedCatalogDetails.
+ #: This constant has a value of "NEEDS_ATTENTION"
+ STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DedicatedCatalogDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param encryption_key_details:
+ The value to assign to the encryption_key_details property of this DedicatedCatalogDetails.
+ :type encryption_key_details: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+
+ :param name:
+ The value to assign to the name property of this DedicatedCatalogDetails.
+ :type name: str
+
+ :param compute_count:
+ The value to assign to the compute_count property of this DedicatedCatalogDetails.
+ :type compute_count: float
+
+ :param data_storage_size_in_gbs:
+ The value to assign to the data_storage_size_in_gbs property of this DedicatedCatalogDetails.
+ :type data_storage_size_in_gbs: float
+
+ :param shard_group:
+ The value to assign to the shard_group property of this DedicatedCatalogDetails.
+ :type shard_group: str
+
+ :param time_created:
+ The value to assign to the time_created property of this DedicatedCatalogDetails.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this DedicatedCatalogDetails.
+ :type time_updated: datetime
+
+ :param time_ssl_certificate_expires:
+ The value to assign to the time_ssl_certificate_expires property of this DedicatedCatalogDetails.
+ :type time_ssl_certificate_expires: datetime
+
+ :param status:
+ The value to assign to the status property of this DedicatedCatalogDetails.
+ 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 DedicatedCatalogDetails.
+ :type supporting_resource_id: str
+
+ :param container_database_id:
+ The value to assign to the container_database_id property of this DedicatedCatalogDetails.
+ :type container_database_id: str
+
+ :param container_database_parent_id:
+ The value to assign to the container_database_parent_id property of this DedicatedCatalogDetails.
+ :type container_database_parent_id: str
+
+ :param is_auto_scaling_enabled:
+ The value to assign to the is_auto_scaling_enabled property of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ :type cloud_autonomous_vm_cluster_id: str
+
+ :param peer_cloud_autonomous_vm_cluster_id:
+ The value to assign to the peer_cloud_autonomous_vm_cluster_id property of this DedicatedCatalogDetails.
+ :type peer_cloud_autonomous_vm_cluster_id: str
+
+ :param metadata:
+ The value to assign to the metadata property of this DedicatedCatalogDetails.
+ :type metadata: dict(str, object)
+
+ """
+ self.swagger_types = {
+ 'encryption_key_details': 'DedicatedShardOrCatalogEncryptionKeyDetails',
+ 'name': 'str',
+ 'compute_count': 'float',
+ 'data_storage_size_in_gbs': 'float',
+ 'shard_group': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'time_ssl_certificate_expires': 'datetime',
+ 'status': 'str',
+ 'supporting_resource_id': 'str',
+ 'container_database_id': 'str',
+ 'container_database_parent_id': 'str',
+ 'is_auto_scaling_enabled': 'bool',
+ 'cloud_autonomous_vm_cluster_id': 'str',
+ 'peer_cloud_autonomous_vm_cluster_id': 'str',
+ 'metadata': 'dict(str, object)'
+ }
+
+ self.attribute_map = {
+ 'encryption_key_details': 'encryptionKeyDetails',
+ 'name': 'name',
+ 'compute_count': 'computeCount',
+ 'data_storage_size_in_gbs': 'dataStorageSizeInGbs',
+ 'shard_group': 'shardGroup',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'time_ssl_certificate_expires': 'timeSslCertificateExpires',
+ 'status': 'status',
+ 'supporting_resource_id': 'supportingResourceId',
+ 'container_database_id': 'containerDatabaseId',
+ 'container_database_parent_id': 'containerDatabaseParentId',
+ 'is_auto_scaling_enabled': 'isAutoScalingEnabled',
+ 'cloud_autonomous_vm_cluster_id': 'cloudAutonomousVmClusterId',
+ 'peer_cloud_autonomous_vm_cluster_id': 'peerCloudAutonomousVmClusterId',
+ 'metadata': 'metadata'
+ }
+
+ self._encryption_key_details = None
+ self._name = None
+ self._compute_count = None
+ self._data_storage_size_in_gbs = None
+ self._shard_group = None
+ self._time_created = None
+ self._time_updated = None
+ self._time_ssl_certificate_expires = None
+ self._status = None
+ self._supporting_resource_id = None
+ self._container_database_id = None
+ self._container_database_parent_id = None
+ self._is_auto_scaling_enabled = None
+ self._cloud_autonomous_vm_cluster_id = None
+ self._peer_cloud_autonomous_vm_cluster_id = None
+ self._metadata = None
+
+ @property
+ def encryption_key_details(self):
+ """
+ Gets the encryption_key_details of this DedicatedCatalogDetails.
+
+ :return: The encryption_key_details of this DedicatedCatalogDetails.
+ :rtype: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+ """
+ return self._encryption_key_details
+
+ @encryption_key_details.setter
+ def encryption_key_details(self, encryption_key_details):
+ """
+ Sets the encryption_key_details of this DedicatedCatalogDetails.
+
+ :param encryption_key_details: The encryption_key_details of this DedicatedCatalogDetails.
+ :type: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+ """
+ self._encryption_key_details = encryption_key_details
+
+ @property
+ def name(self):
+ """
+ **[Required]** Gets the name of this DedicatedCatalogDetails.
+ Catalog name
+
+
+ :return: The name of this DedicatedCatalogDetails.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this DedicatedCatalogDetails.
+ Catalog name
+
+
+ :param name: The name of this DedicatedCatalogDetails.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def compute_count(self):
+ """
+ **[Required]** Gets the compute_count of this DedicatedCatalogDetails.
+ The compute amount available to the underlying autonomous database associated with shard or catalog.
+
+
+ :return: The compute_count of this DedicatedCatalogDetails.
+ :rtype: float
+ """
+ return self._compute_count
+
+ @compute_count.setter
+ def compute_count(self, compute_count):
+ """
+ Sets the compute_count of this DedicatedCatalogDetails.
+ The compute amount available to the underlying autonomous database associated with shard or catalog.
+
+
+ :param compute_count: The compute_count of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ The data disk group size to be allocated in GBs.
+
+
+ :return: The data_storage_size_in_gbs of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ The data disk group size to be allocated in GBs.
+
+
+ :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this DedicatedCatalogDetails.
+ :type: float
+ """
+ self._data_storage_size_in_gbs = data_storage_size_in_gbs
+
+ @property
+ def shard_group(self):
+ """
+ **[Required]** Gets the shard_group of this DedicatedCatalogDetails.
+ Name of the shard-group to which the catalog belongs.
+
+
+ :return: The shard_group of this DedicatedCatalogDetails.
+ :rtype: str
+ """
+ return self._shard_group
+
+ @shard_group.setter
+ def shard_group(self, shard_group):
+ """
+ Sets the shard_group of this DedicatedCatalogDetails.
+ Name of the shard-group to which the catalog belongs.
+
+
+ :param shard_group: The shard_group of this DedicatedCatalogDetails.
+ :type: str
+ """
+ self._shard_group = shard_group
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this DedicatedCatalogDetails.
+ The time the catalog was created. An RFC3339 formatted datetime string
+
+
+ :return: The time_created of this DedicatedCatalogDetails.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this DedicatedCatalogDetails.
+ The time the catalog was created. An RFC3339 formatted datetime string
+
+
+ :param time_created: The time_created of this DedicatedCatalogDetails.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this DedicatedCatalogDetails.
+ The time the catalog was last created. An RFC3339 formatted datetime string
+
+
+ :return: The time_updated of this DedicatedCatalogDetails.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this DedicatedCatalogDetails.
+ The time the catalog was last created. An RFC3339 formatted datetime string
+
+
+ :param time_updated: The time_updated of this DedicatedCatalogDetails.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def time_ssl_certificate_expires(self):
+ """
+ Gets the time_ssl_certificate_expires of this DedicatedCatalogDetails.
+ The time the ssl certificate associated with catalog expires. An RFC3339 formatted datetime string
+
+
+ :return: The time_ssl_certificate_expires of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ The time the ssl certificate associated with catalog expires. An RFC3339 formatted datetime string
+
+
+ :param time_ssl_certificate_expires: The time_ssl_certificate_expires of this DedicatedCatalogDetails.
+ :type: datetime
+ """
+ self._time_ssl_certificate_expires = time_ssl_certificate_expires
+
+ @property
+ def status(self):
+ """
+ **[Required]** Gets the status of this DedicatedCatalogDetails.
+ Status of shard or catalog or gsm for the sharded 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 DedicatedCatalogDetails.
+ :rtype: str
+ """
+ return self._status
+
+ @status.setter
+ def status(self, status):
+ """
+ Sets the status of this DedicatedCatalogDetails.
+ Status of shard or catalog or gsm for the sharded database.
+
+
+ :param status: The status of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ Identifier of the underlying supporting resource.
+
+
+ :return: The supporting_resource_id of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ Identifier of the underlying supporting resource.
+
+
+ :param supporting_resource_id: The supporting_resource_id of this DedicatedCatalogDetails.
+ :type: str
+ """
+ self._supporting_resource_id = supporting_resource_id
+
+ @property
+ def container_database_id(self):
+ """
+ Gets the container_database_id of this DedicatedCatalogDetails.
+ Identifier of the underlying container database.
+
+
+ :return: The container_database_id of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ Identifier of the underlying container database.
+
+
+ :param container_database_id: The container_database_id of this DedicatedCatalogDetails.
+ :type: str
+ """
+ self._container_database_id = container_database_id
+
+ @property
+ def container_database_parent_id(self):
+ """
+ Gets the container_database_parent_id of this DedicatedCatalogDetails.
+ Identifier of the underlying container database parent.
+
+
+ :return: The container_database_parent_id of this DedicatedCatalogDetails.
+ :rtype: str
+ """
+ return self._container_database_parent_id
+
+ @container_database_parent_id.setter
+ def container_database_parent_id(self, container_database_parent_id):
+ """
+ Sets the container_database_parent_id of this DedicatedCatalogDetails.
+ Identifier of the underlying container database parent.
+
+
+ :param container_database_parent_id: The container_database_parent_id of this DedicatedCatalogDetails.
+ :type: str
+ """
+ self._container_database_parent_id = container_database_parent_id
+
+ @property
+ def is_auto_scaling_enabled(self):
+ """
+ **[Required]** Gets the is_auto_scaling_enabled of this DedicatedCatalogDetails.
+ Determines the auto-scaling mode.
+
+
+ :return: The is_auto_scaling_enabled of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ Determines the auto-scaling mode.
+
+
+ :param is_auto_scaling_enabled: The is_auto_scaling_enabled of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ Identifier of the primary cloudAutonomousVmCluster for the catalog.
+
+
+ :return: The cloud_autonomous_vm_cluster_id of this DedicatedCatalogDetails.
+ :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 DedicatedCatalogDetails.
+ Identifier of the primary cloudAutonomousVmCluster for the catalog.
+
+
+ :param cloud_autonomous_vm_cluster_id: The cloud_autonomous_vm_cluster_id of this DedicatedCatalogDetails.
+ :type: str
+ """
+ self._cloud_autonomous_vm_cluster_id = cloud_autonomous_vm_cluster_id
+
+ @property
+ def peer_cloud_autonomous_vm_cluster_id(self):
+ """
+ Gets the peer_cloud_autonomous_vm_cluster_id of this DedicatedCatalogDetails.
+ Identifier of the peer cloudAutonomousVmCluster for the catalog.
+
+
+ :return: The peer_cloud_autonomous_vm_cluster_id of this DedicatedCatalogDetails.
+ :rtype: str
+ """
+ return self._peer_cloud_autonomous_vm_cluster_id
+
+ @peer_cloud_autonomous_vm_cluster_id.setter
+ def peer_cloud_autonomous_vm_cluster_id(self, peer_cloud_autonomous_vm_cluster_id):
+ """
+ Sets the peer_cloud_autonomous_vm_cluster_id of this DedicatedCatalogDetails.
+ Identifier of the peer cloudAutonomousVmCluster for the catalog.
+
+
+ :param peer_cloud_autonomous_vm_cluster_id: The peer_cloud_autonomous_vm_cluster_id of this DedicatedCatalogDetails.
+ :type: str
+ """
+ self._peer_cloud_autonomous_vm_cluster_id = peer_cloud_autonomous_vm_cluster_id
+
+ @property
+ def metadata(self):
+ """
+ Gets the metadata of this DedicatedCatalogDetails.
+ Additional metadata related to catalog's underlying supporting resource.
+
+
+ :return: The metadata of this DedicatedCatalogDetails.
+ :rtype: dict(str, object)
+ """
+ return self._metadata
+
+ @metadata.setter
+ def metadata(self, metadata):
+ """
+ Sets the metadata of this DedicatedCatalogDetails.
+ Additional metadata related to catalog's underlying supporting resource.
+
+
+ :param metadata: The metadata of this DedicatedCatalogDetails.
+ :type: dict(str, object)
+ """
+ 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/globally_distributed_database/models/dedicated_shard_details.py b/src/oci/globally_distributed_database/models/dedicated_shard_details.py
new file mode 100644
index 0000000000..a9fbd89f24
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/dedicated_shard_details.py
@@ -0,0 +1,608 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DedicatedShardDetails(object):
+ """
+ Details of ATP-D based shard.
+ """
+
+ #: A constant which can be used with the status property of a DedicatedShardDetails.
+ #: This constant has a value of "FAILED"
+ STATUS_FAILED = "FAILED"
+
+ #: A constant which can be used with the status property of a DedicatedShardDetails.
+ #: This constant has a value of "DELETING"
+ STATUS_DELETING = "DELETING"
+
+ #: A constant which can be used with the status property of a DedicatedShardDetails.
+ #: This constant has a value of "DELETED"
+ STATUS_DELETED = "DELETED"
+
+ #: A constant which can be used with the status property of a DedicatedShardDetails.
+ #: This constant has a value of "UPDATING"
+ STATUS_UPDATING = "UPDATING"
+
+ #: A constant which can be used with the status property of a DedicatedShardDetails.
+ #: This constant has a value of "CREATING"
+ STATUS_CREATING = "CREATING"
+
+ #: A constant which can be used with the status property of a DedicatedShardDetails.
+ #: This constant has a value of "CREATED"
+ STATUS_CREATED = "CREATED"
+
+ #: A constant which can be used with the status property of a DedicatedShardDetails.
+ #: 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 DedicatedShardDetails.
+ #: This constant has a value of "CONFIGURED"
+ STATUS_CONFIGURED = "CONFIGURED"
+
+ #: A constant which can be used with the status property of a DedicatedShardDetails.
+ #: This constant has a value of "NEEDS_ATTENTION"
+ STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DedicatedShardDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param encryption_key_details:
+ The value to assign to the encryption_key_details property of this DedicatedShardDetails.
+ :type encryption_key_details: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+
+ :param name:
+ The value to assign to the name property of this DedicatedShardDetails.
+ :type name: str
+
+ :param compute_count:
+ The value to assign to the compute_count property of this DedicatedShardDetails.
+ :type compute_count: float
+
+ :param data_storage_size_in_gbs:
+ The value to assign to the data_storage_size_in_gbs property of this DedicatedShardDetails.
+ :type data_storage_size_in_gbs: float
+
+ :param shard_group:
+ The value to assign to the shard_group property of this DedicatedShardDetails.
+ :type shard_group: str
+
+ :param time_created:
+ The value to assign to the time_created property of this DedicatedShardDetails.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this DedicatedShardDetails.
+ :type time_updated: datetime
+
+ :param time_ssl_certificate_expires:
+ The value to assign to the time_ssl_certificate_expires property of this DedicatedShardDetails.
+ :type time_ssl_certificate_expires: datetime
+
+ :param status:
+ The value to assign to the status property of this DedicatedShardDetails.
+ 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 shard_space:
+ The value to assign to the shard_space property of this DedicatedShardDetails.
+ :type shard_space: str
+
+ :param supporting_resource_id:
+ The value to assign to the supporting_resource_id property of this DedicatedShardDetails.
+ :type supporting_resource_id: str
+
+ :param container_database_id:
+ The value to assign to the container_database_id property of this DedicatedShardDetails.
+ :type container_database_id: str
+
+ :param container_database_parent_id:
+ The value to assign to the container_database_parent_id property of this DedicatedShardDetails.
+ :type container_database_parent_id: str
+
+ :param is_auto_scaling_enabled:
+ The value to assign to the is_auto_scaling_enabled property of this DedicatedShardDetails.
+ :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 DedicatedShardDetails.
+ :type cloud_autonomous_vm_cluster_id: str
+
+ :param peer_cloud_autonomous_vm_cluster_id:
+ The value to assign to the peer_cloud_autonomous_vm_cluster_id property of this DedicatedShardDetails.
+ :type peer_cloud_autonomous_vm_cluster_id: str
+
+ :param metadata:
+ The value to assign to the metadata property of this DedicatedShardDetails.
+ :type metadata: dict(str, object)
+
+ """
+ self.swagger_types = {
+ 'encryption_key_details': 'DedicatedShardOrCatalogEncryptionKeyDetails',
+ 'name': 'str',
+ 'compute_count': 'float',
+ 'data_storage_size_in_gbs': 'float',
+ 'shard_group': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'time_ssl_certificate_expires': 'datetime',
+ 'status': 'str',
+ 'shard_space': 'str',
+ 'supporting_resource_id': 'str',
+ 'container_database_id': 'str',
+ 'container_database_parent_id': 'str',
+ 'is_auto_scaling_enabled': 'bool',
+ 'cloud_autonomous_vm_cluster_id': 'str',
+ 'peer_cloud_autonomous_vm_cluster_id': 'str',
+ 'metadata': 'dict(str, object)'
+ }
+
+ self.attribute_map = {
+ 'encryption_key_details': 'encryptionKeyDetails',
+ 'name': 'name',
+ 'compute_count': 'computeCount',
+ 'data_storage_size_in_gbs': 'dataStorageSizeInGbs',
+ 'shard_group': 'shardGroup',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'time_ssl_certificate_expires': 'timeSslCertificateExpires',
+ 'status': 'status',
+ 'shard_space': 'shardSpace',
+ 'supporting_resource_id': 'supportingResourceId',
+ 'container_database_id': 'containerDatabaseId',
+ 'container_database_parent_id': 'containerDatabaseParentId',
+ 'is_auto_scaling_enabled': 'isAutoScalingEnabled',
+ 'cloud_autonomous_vm_cluster_id': 'cloudAutonomousVmClusterId',
+ 'peer_cloud_autonomous_vm_cluster_id': 'peerCloudAutonomousVmClusterId',
+ 'metadata': 'metadata'
+ }
+
+ self._encryption_key_details = None
+ self._name = None
+ self._compute_count = None
+ self._data_storage_size_in_gbs = None
+ self._shard_group = None
+ self._time_created = None
+ self._time_updated = None
+ self._time_ssl_certificate_expires = None
+ self._status = None
+ self._shard_space = None
+ self._supporting_resource_id = None
+ self._container_database_id = None
+ self._container_database_parent_id = None
+ self._is_auto_scaling_enabled = None
+ self._cloud_autonomous_vm_cluster_id = None
+ self._peer_cloud_autonomous_vm_cluster_id = None
+ self._metadata = None
+
+ @property
+ def encryption_key_details(self):
+ """
+ Gets the encryption_key_details of this DedicatedShardDetails.
+
+ :return: The encryption_key_details of this DedicatedShardDetails.
+ :rtype: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+ """
+ return self._encryption_key_details
+
+ @encryption_key_details.setter
+ def encryption_key_details(self, encryption_key_details):
+ """
+ Sets the encryption_key_details of this DedicatedShardDetails.
+
+ :param encryption_key_details: The encryption_key_details of this DedicatedShardDetails.
+ :type: oci.globally_distributed_database.models.DedicatedShardOrCatalogEncryptionKeyDetails
+ """
+ self._encryption_key_details = encryption_key_details
+
+ @property
+ def name(self):
+ """
+ **[Required]** Gets the name of this DedicatedShardDetails.
+ Name of the shard.
+
+
+ :return: The name of this DedicatedShardDetails.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this DedicatedShardDetails.
+ Name of the shard.
+
+
+ :param name: The name of this DedicatedShardDetails.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def compute_count(self):
+ """
+ **[Required]** Gets the compute_count of this DedicatedShardDetails.
+ The compute amount available to the underlying autonomous database associated with shard.
+
+
+ :return: The compute_count of this DedicatedShardDetails.
+ :rtype: float
+ """
+ return self._compute_count
+
+ @compute_count.setter
+ def compute_count(self, compute_count):
+ """
+ Sets the compute_count of this DedicatedShardDetails.
+ The compute amount available to the underlying autonomous database associated with shard.
+
+
+ :param compute_count: The compute_count of this DedicatedShardDetails.
+ :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 DedicatedShardDetails.
+ The data disk group size to be allocated in GBs.
+
+
+ :return: The data_storage_size_in_gbs of this DedicatedShardDetails.
+ :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 DedicatedShardDetails.
+ The data disk group size to be allocated in GBs.
+
+
+ :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this DedicatedShardDetails.
+ :type: float
+ """
+ self._data_storage_size_in_gbs = data_storage_size_in_gbs
+
+ @property
+ def shard_group(self):
+ """
+ **[Required]** Gets the shard_group of this DedicatedShardDetails.
+ Name of the shard-group to which the shard belongs.
+
+
+ :return: The shard_group of this DedicatedShardDetails.
+ :rtype: str
+ """
+ return self._shard_group
+
+ @shard_group.setter
+ def shard_group(self, shard_group):
+ """
+ Sets the shard_group of this DedicatedShardDetails.
+ Name of the shard-group to which the shard belongs.
+
+
+ :param shard_group: The shard_group of this DedicatedShardDetails.
+ :type: str
+ """
+ self._shard_group = shard_group
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this DedicatedShardDetails.
+ The time the the shard was created. An RFC3339 formatted datetime string
+
+
+ :return: The time_created of this DedicatedShardDetails.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this DedicatedShardDetails.
+ The time the the shard was created. An RFC3339 formatted datetime string
+
+
+ :param time_created: The time_created of this DedicatedShardDetails.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this DedicatedShardDetails.
+ The time the shard was last updated. An RFC3339 formatted datetime string
+
+
+ :return: The time_updated of this DedicatedShardDetails.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this DedicatedShardDetails.
+ The time the shard was last updated. An RFC3339 formatted datetime string
+
+
+ :param time_updated: The time_updated of this DedicatedShardDetails.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def time_ssl_certificate_expires(self):
+ """
+ Gets the time_ssl_certificate_expires of this DedicatedShardDetails.
+ The time the ssl certificate associated with shard expires. An RFC3339 formatted datetime string
+
+
+ :return: The time_ssl_certificate_expires of this DedicatedShardDetails.
+ :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 DedicatedShardDetails.
+ The time the ssl certificate associated with shard expires. An RFC3339 formatted datetime string
+
+
+ :param time_ssl_certificate_expires: The time_ssl_certificate_expires of this DedicatedShardDetails.
+ :type: datetime
+ """
+ self._time_ssl_certificate_expires = time_ssl_certificate_expires
+
+ @property
+ def status(self):
+ """
+ **[Required]** Gets the status of this DedicatedShardDetails.
+ Status of shard or catalog or gsm for the sharded 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 DedicatedShardDetails.
+ :rtype: str
+ """
+ return self._status
+
+ @status.setter
+ def status(self, status):
+ """
+ Sets the status of this DedicatedShardDetails.
+ Status of shard or catalog or gsm for the sharded database.
+
+
+ :param status: The status of this DedicatedShardDetails.
+ :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 shard_space(self):
+ """
+ Gets the shard_space of this DedicatedShardDetails.
+ Shard space name.
+
+
+ :return: The shard_space of this DedicatedShardDetails.
+ :rtype: str
+ """
+ return self._shard_space
+
+ @shard_space.setter
+ def shard_space(self, shard_space):
+ """
+ Sets the shard_space of this DedicatedShardDetails.
+ Shard space name.
+
+
+ :param shard_space: The shard_space of this DedicatedShardDetails.
+ :type: str
+ """
+ self._shard_space = shard_space
+
+ @property
+ def supporting_resource_id(self):
+ """
+ Gets the supporting_resource_id of this DedicatedShardDetails.
+ Identifier of the underlying supporting resource.
+
+
+ :return: The supporting_resource_id of this DedicatedShardDetails.
+ :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 DedicatedShardDetails.
+ Identifier of the underlying supporting resource.
+
+
+ :param supporting_resource_id: The supporting_resource_id of this DedicatedShardDetails.
+ :type: str
+ """
+ self._supporting_resource_id = supporting_resource_id
+
+ @property
+ def container_database_id(self):
+ """
+ Gets the container_database_id of this DedicatedShardDetails.
+ Identifier of the underlying container database.
+
+
+ :return: The container_database_id of this DedicatedShardDetails.
+ :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 DedicatedShardDetails.
+ Identifier of the underlying container database.
+
+
+ :param container_database_id: The container_database_id of this DedicatedShardDetails.
+ :type: str
+ """
+ self._container_database_id = container_database_id
+
+ @property
+ def container_database_parent_id(self):
+ """
+ Gets the container_database_parent_id of this DedicatedShardDetails.
+ Identifier of the underlying container database parent.
+
+
+ :return: The container_database_parent_id of this DedicatedShardDetails.
+ :rtype: str
+ """
+ return self._container_database_parent_id
+
+ @container_database_parent_id.setter
+ def container_database_parent_id(self, container_database_parent_id):
+ """
+ Sets the container_database_parent_id of this DedicatedShardDetails.
+ Identifier of the underlying container database parent.
+
+
+ :param container_database_parent_id: The container_database_parent_id of this DedicatedShardDetails.
+ :type: str
+ """
+ self._container_database_parent_id = container_database_parent_id
+
+ @property
+ def is_auto_scaling_enabled(self):
+ """
+ **[Required]** Gets the is_auto_scaling_enabled of this DedicatedShardDetails.
+ Determines the auto-scaling mode.
+
+
+ :return: The is_auto_scaling_enabled of this DedicatedShardDetails.
+ :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 DedicatedShardDetails.
+ Determines the auto-scaling mode.
+
+
+ :param is_auto_scaling_enabled: The is_auto_scaling_enabled of this DedicatedShardDetails.
+ :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 DedicatedShardDetails.
+ Identifier of the primary cloudAutonomousVmCluster for the shard.
+
+
+ :return: The cloud_autonomous_vm_cluster_id of this DedicatedShardDetails.
+ :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 DedicatedShardDetails.
+ Identifier of the primary cloudAutonomousVmCluster for the shard.
+
+
+ :param cloud_autonomous_vm_cluster_id: The cloud_autonomous_vm_cluster_id of this DedicatedShardDetails.
+ :type: str
+ """
+ self._cloud_autonomous_vm_cluster_id = cloud_autonomous_vm_cluster_id
+
+ @property
+ def peer_cloud_autonomous_vm_cluster_id(self):
+ """
+ Gets the peer_cloud_autonomous_vm_cluster_id of this DedicatedShardDetails.
+ Identifier of the peer cloudAutonomousVmCluster for the shard.
+
+
+ :return: The peer_cloud_autonomous_vm_cluster_id of this DedicatedShardDetails.
+ :rtype: str
+ """
+ return self._peer_cloud_autonomous_vm_cluster_id
+
+ @peer_cloud_autonomous_vm_cluster_id.setter
+ def peer_cloud_autonomous_vm_cluster_id(self, peer_cloud_autonomous_vm_cluster_id):
+ """
+ Sets the peer_cloud_autonomous_vm_cluster_id of this DedicatedShardDetails.
+ Identifier of the peer cloudAutonomousVmCluster for the shard.
+
+
+ :param peer_cloud_autonomous_vm_cluster_id: The peer_cloud_autonomous_vm_cluster_id of this DedicatedShardDetails.
+ :type: str
+ """
+ self._peer_cloud_autonomous_vm_cluster_id = peer_cloud_autonomous_vm_cluster_id
+
+ @property
+ def metadata(self):
+ """
+ Gets the metadata of this DedicatedShardDetails.
+ Additional metadata related to shard's underlying supporting resource.
+
+
+ :return: The metadata of this DedicatedShardDetails.
+ :rtype: dict(str, object)
+ """
+ return self._metadata
+
+ @metadata.setter
+ def metadata(self, metadata):
+ """
+ Sets the metadata of this DedicatedShardDetails.
+ Additional metadata related to shard's underlying supporting resource.
+
+
+ :param metadata: The metadata of this DedicatedShardDetails.
+ :type: dict(str, object)
+ """
+ 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/globally_distributed_database/models/dedicated_shard_or_catalog_encryption_key_details.py b/src/oci/globally_distributed_database/models/dedicated_shard_or_catalog_encryption_key_details.py
new file mode 100644
index 0000000000..b7247aa93d
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/dedicated_shard_or_catalog_encryption_key_details.py
@@ -0,0 +1,160 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DedicatedShardOrCatalogEncryptionKeyDetails(object):
+ """
+ Details of encryption key to be used to encrypt data for shards and catalog for sharded database. For system-defined
+ sharding type, all shards have to use same encryptionKeyDetails. For system-defined sharding, if encryptionKeyDetails
+ are not specified for catalog, then Oracle managed key will be used for catalog.
+ For user-defined sharding type, if encryptionKeyDetails are not provided for any shard or catalog, then Oracle managed
+ key will be used for such shard or catalog. For system-defined or user-defined sharding type, if the shard or catalog
+ has a peer in region other than primary shard or catalog region, then make sure to provide virtual vault for such shard
+ or catalog, which is also replicated to peer region (the region where peer or standby shard or catalog exists).
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DedicatedShardOrCatalogEncryptionKeyDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param vault_id:
+ The value to assign to the vault_id property of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ :type vault_id: str
+
+ :param kms_key_id:
+ The value to assign to the kms_key_id property of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ :type kms_key_id: str
+
+ :param kms_key_version_id:
+ The value to assign to the kms_key_version_id property of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ :type kms_key_version_id: str
+
+ """
+ self.swagger_types = {
+ 'vault_id': 'str',
+ 'kms_key_id': 'str',
+ 'kms_key_version_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'vault_id': 'vaultId',
+ 'kms_key_id': 'kmsKeyId',
+ 'kms_key_version_id': 'kmsKeyVersionId'
+ }
+
+ self._vault_id = None
+ self._kms_key_id = None
+ self._kms_key_version_id = None
+
+ @property
+ def vault_id(self):
+ """
+ **[Required]** Gets the vault_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ The `OCID`__ of the vault in customer tenancy where KMS key is present.
+ For shard or catalog with cross-region data guard enabled, user needs to make sure to provide virtual private vault only,
+ which is also replicated in the region of standby shard.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :return: The vault_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ :rtype: str
+ """
+ return self._vault_id
+
+ @vault_id.setter
+ def vault_id(self, vault_id):
+ """
+ Sets the vault_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ The `OCID`__ of the vault in customer tenancy where KMS key is present.
+ For shard or catalog with cross-region data guard enabled, user needs to make sure to provide virtual private vault only,
+ which is also replicated in the region of standby shard.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :param vault_id: The vault_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ :type: str
+ """
+ self._vault_id = vault_id
+
+ @property
+ def kms_key_id(self):
+ """
+ **[Required]** Gets the kms_key_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ The `OCID`__ of the KMS key in vault identified by vaultId in customer tenancy
+ that is used as the master encryption key.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :return: The kms_key_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ :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 DedicatedShardOrCatalogEncryptionKeyDetails.
+ The `OCID`__ of the KMS key in vault identified by vaultId in customer tenancy
+ that is used as the master encryption key.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :param kms_key_id: The kms_key_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ :type: str
+ """
+ self._kms_key_id = kms_key_id
+
+ @property
+ def kms_key_version_id(self):
+ """
+ Gets the kms_key_version_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ The `OCID`__ of the KMS key version for key identified by kmsKeyId
+ that is used in data encryption (TDE) operations.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :return: The kms_key_version_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ :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 DedicatedShardOrCatalogEncryptionKeyDetails.
+ The `OCID`__ of the KMS key version for key identified by kmsKeyId
+ that is used in data encryption (TDE) operations.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :param kms_key_version_id: The kms_key_version_id of this DedicatedShardOrCatalogEncryptionKeyDetails.
+ :type: str
+ """
+ self._kms_key_version_id = kms_key_version_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/globally_distributed_database/models/dedicated_sharded_database.py b/src/oci/globally_distributed_database/models/dedicated_sharded_database.py
new file mode 100644
index 0000000000..9775a5bfcb
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/dedicated_sharded_database.py
@@ -0,0 +1,716 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+from .sharded_database import ShardedDatabase
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DedicatedShardedDatabase(ShardedDatabase):
+ """
+ Details of ATP-D based sharded database.
+ """
+
+ #: A constant which can be used with the db_workload property of a DedicatedShardedDatabase.
+ #: This constant has a value of "OLTP"
+ DB_WORKLOAD_OLTP = "OLTP"
+
+ #: A constant which can be used with the db_workload property of a DedicatedShardedDatabase.
+ #: This constant has a value of "DW"
+ DB_WORKLOAD_DW = "DW"
+
+ #: A constant which can be used with the sharding_method property of a DedicatedShardedDatabase.
+ #: This constant has a value of "USER"
+ SHARDING_METHOD_USER = "USER"
+
+ #: A constant which can be used with the sharding_method property of a DedicatedShardedDatabase.
+ #: This constant has a value of "SYSTEM"
+ SHARDING_METHOD_SYSTEM = "SYSTEM"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DedicatedShardedDatabase object with values from keyword arguments. The default value of the :py:attr:`~oci.globally_distributed_database.models.DedicatedShardedDatabase.db_deployment_type` attribute
+ of this class is ``DEDICATED`` 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 DedicatedShardedDatabase.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this DedicatedShardedDatabase.
+ :type compartment_id: str
+
+ :param db_deployment_type:
+ The value to assign to the db_deployment_type property of this DedicatedShardedDatabase.
+ Allowed values for this property are: "DEDICATED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type db_deployment_type: str
+
+ :param display_name:
+ The value to assign to the display_name property of this DedicatedShardedDatabase.
+ :type display_name: str
+
+ :param time_created:
+ The value to assign to the time_created property of this DedicatedShardedDatabase.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this DedicatedShardedDatabase.
+ :type time_updated: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this DedicatedShardedDatabase.
+ Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE", '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 DedicatedShardedDatabase.
+ :type lifecycle_state_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this DedicatedShardedDatabase.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this DedicatedShardedDatabase.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param system_tags:
+ The value to assign to the system_tags property of this DedicatedShardedDatabase.
+ :type system_tags: dict(str, dict(str, object))
+
+ :param cluster_certificate_common_name:
+ The value to assign to the cluster_certificate_common_name property of this DedicatedShardedDatabase.
+ :type cluster_certificate_common_name: str
+
+ :param character_set:
+ The value to assign to the character_set property of this DedicatedShardedDatabase.
+ :type character_set: str
+
+ :param ncharacter_set:
+ The value to assign to the ncharacter_set property of this DedicatedShardedDatabase.
+ :type ncharacter_set: str
+
+ :param chunks:
+ The value to assign to the chunks property of this DedicatedShardedDatabase.
+ :type chunks: int
+
+ :param db_workload:
+ The value to assign to the db_workload property of this DedicatedShardedDatabase.
+ 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: str
+
+ :param sharding_method:
+ The value to assign to the sharding_method property of this DedicatedShardedDatabase.
+ Allowed values for this property are: "USER", "SYSTEM", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type sharding_method: str
+
+ :param db_version:
+ The value to assign to the db_version property of this DedicatedShardedDatabase.
+ :type db_version: str
+
+ :param listener_port:
+ The value to assign to the listener_port property of this DedicatedShardedDatabase.
+ :type listener_port: int
+
+ :param listener_port_tls:
+ The value to assign to the listener_port_tls property of this DedicatedShardedDatabase.
+ :type listener_port_tls: int
+
+ :param ons_port_local:
+ The value to assign to the ons_port_local property of this DedicatedShardedDatabase.
+ :type ons_port_local: int
+
+ :param ons_port_remote:
+ The value to assign to the ons_port_remote property of this DedicatedShardedDatabase.
+ :type ons_port_remote: int
+
+ :param prefix:
+ The value to assign to the prefix property of this DedicatedShardedDatabase.
+ :type prefix: str
+
+ :param private_endpoint:
+ The value to assign to the private_endpoint property of this DedicatedShardedDatabase.
+ :type private_endpoint: str
+
+ :param connection_strings:
+ The value to assign to the connection_strings property of this DedicatedShardedDatabase.
+ :type connection_strings: oci.globally_distributed_database.models.ConnectionString
+
+ :param time_zone:
+ The value to assign to the time_zone property of this DedicatedShardedDatabase.
+ :type time_zone: str
+
+ :param gsms:
+ The value to assign to the gsms property of this DedicatedShardedDatabase.
+ :type gsms: list[oci.globally_distributed_database.models.GsmDetails]
+
+ :param shard_details:
+ The value to assign to the shard_details property of this DedicatedShardedDatabase.
+ :type shard_details: list[oci.globally_distributed_database.models.DedicatedShardDetails]
+
+ :param catalog_details:
+ The value to assign to the catalog_details property of this DedicatedShardedDatabase.
+ :type catalog_details: list[oci.globally_distributed_database.models.DedicatedCatalogDetails]
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'db_deployment_type': 'str',
+ 'display_name': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_details': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'system_tags': 'dict(str, dict(str, object))',
+ 'cluster_certificate_common_name': 'str',
+ 'character_set': 'str',
+ 'ncharacter_set': 'str',
+ 'chunks': 'int',
+ 'db_workload': 'str',
+ 'sharding_method': 'str',
+ 'db_version': 'str',
+ 'listener_port': 'int',
+ 'listener_port_tls': 'int',
+ 'ons_port_local': 'int',
+ 'ons_port_remote': 'int',
+ 'prefix': 'str',
+ 'private_endpoint': 'str',
+ 'connection_strings': 'ConnectionString',
+ 'time_zone': 'str',
+ 'gsms': 'list[GsmDetails]',
+ 'shard_details': 'list[DedicatedShardDetails]',
+ 'catalog_details': 'list[DedicatedCatalogDetails]'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'db_deployment_type': 'dbDeploymentType',
+ 'display_name': 'displayName',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags',
+ 'system_tags': 'systemTags',
+ 'cluster_certificate_common_name': 'clusterCertificateCommonName',
+ 'character_set': 'characterSet',
+ 'ncharacter_set': 'ncharacterSet',
+ 'chunks': 'chunks',
+ 'db_workload': 'dbWorkload',
+ 'sharding_method': 'shardingMethod',
+ 'db_version': 'dbVersion',
+ 'listener_port': 'listenerPort',
+ 'listener_port_tls': 'listenerPortTls',
+ 'ons_port_local': 'onsPortLocal',
+ 'ons_port_remote': 'onsPortRemote',
+ 'prefix': 'prefix',
+ 'private_endpoint': 'privateEndpoint',
+ 'connection_strings': 'connectionStrings',
+ 'time_zone': 'timeZone',
+ 'gsms': 'gsms',
+ 'shard_details': 'shardDetails',
+ 'catalog_details': 'catalogDetails'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._db_deployment_type = None
+ self._display_name = None
+ self._time_created = None
+ self._time_updated = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+ self._system_tags = None
+ self._cluster_certificate_common_name = None
+ self._character_set = None
+ self._ncharacter_set = None
+ self._chunks = None
+ self._db_workload = None
+ self._sharding_method = None
+ self._db_version = None
+ self._listener_port = None
+ self._listener_port_tls = None
+ self._ons_port_local = None
+ self._ons_port_remote = None
+ self._prefix = None
+ self._private_endpoint = None
+ self._connection_strings = None
+ self._time_zone = None
+ self._gsms = None
+ self._shard_details = None
+ self._catalog_details = None
+ self._db_deployment_type = 'DEDICATED'
+
+ @property
+ def cluster_certificate_common_name(self):
+ """
+ Gets the cluster_certificate_common_name of this DedicatedShardedDatabase.
+ The certificate common name used in all cloudAutonomousVmClusters for the sharded database topology. Eg. Production.
+ All the clusters used in one sharded database topology shall have same CABundle setup. Valid characterset for
+ clusterCertificateCommonName include uppercase or lowercase letters, numbers, hyphens, underscores, and period.
+
+
+ :return: The cluster_certificate_common_name of this DedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._cluster_certificate_common_name
+
+ @cluster_certificate_common_name.setter
+ def cluster_certificate_common_name(self, cluster_certificate_common_name):
+ """
+ Sets the cluster_certificate_common_name of this DedicatedShardedDatabase.
+ The certificate common name used in all cloudAutonomousVmClusters for the sharded database topology. Eg. Production.
+ All the clusters used in one sharded database topology shall have same CABundle setup. Valid characterset for
+ clusterCertificateCommonName include uppercase or lowercase letters, numbers, hyphens, underscores, and period.
+
+
+ :param cluster_certificate_common_name: The cluster_certificate_common_name of this DedicatedShardedDatabase.
+ :type: str
+ """
+ self._cluster_certificate_common_name = cluster_certificate_common_name
+
+ @property
+ def character_set(self):
+ """
+ **[Required]** Gets the character_set of this DedicatedShardedDatabase.
+ The character set for the database.
+
+
+ :return: The character_set of this DedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._character_set
+
+ @character_set.setter
+ def character_set(self, character_set):
+ """
+ Sets the character_set of this DedicatedShardedDatabase.
+ The character set for the database.
+
+
+ :param character_set: The character_set of this DedicatedShardedDatabase.
+ :type: str
+ """
+ self._character_set = character_set
+
+ @property
+ def ncharacter_set(self):
+ """
+ **[Required]** Gets the ncharacter_set of this DedicatedShardedDatabase.
+ The national character set for the database.
+
+
+ :return: The ncharacter_set of this DedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._ncharacter_set
+
+ @ncharacter_set.setter
+ def ncharacter_set(self, ncharacter_set):
+ """
+ Sets the ncharacter_set of this DedicatedShardedDatabase.
+ The national character set for the database.
+
+
+ :param ncharacter_set: The ncharacter_set of this DedicatedShardedDatabase.
+ :type: str
+ """
+ self._ncharacter_set = ncharacter_set
+
+ @property
+ def chunks(self):
+ """
+ Gets the chunks of this DedicatedShardedDatabase.
+ The default number of unique chunks in a shardspace. The value of chunks must be
+ greater than 2 times the size of the largest shardgroup in any shardspace.
+
+
+ :return: The chunks of this DedicatedShardedDatabase.
+ :rtype: int
+ """
+ return self._chunks
+
+ @chunks.setter
+ def chunks(self, chunks):
+ """
+ Sets the chunks of this DedicatedShardedDatabase.
+ The default number of unique chunks in a shardspace. The value of chunks must be
+ greater than 2 times the size of the largest shardgroup in any shardspace.
+
+
+ :param chunks: The chunks of this DedicatedShardedDatabase.
+ :type: int
+ """
+ self._chunks = chunks
+
+ @property
+ def db_workload(self):
+ """
+ Gets the db_workload of this DedicatedShardedDatabase.
+ Possible workload types.
+
+ 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 of this DedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._db_workload
+
+ @db_workload.setter
+ def db_workload(self, db_workload):
+ """
+ Sets the db_workload of this DedicatedShardedDatabase.
+ Possible workload types.
+
+
+ :param db_workload: The db_workload of this DedicatedShardedDatabase.
+ :type: str
+ """
+ allowed_values = ["OLTP", "DW"]
+ if not value_allowed_none_or_none_sentinel(db_workload, allowed_values):
+ db_workload = 'UNKNOWN_ENUM_VALUE'
+ self._db_workload = db_workload
+
+ @property
+ def sharding_method(self):
+ """
+ **[Required]** Gets the sharding_method of this DedicatedShardedDatabase.
+ Sharding Method.
+
+ Allowed values for this property are: "USER", "SYSTEM", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The sharding_method of this DedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._sharding_method
+
+ @sharding_method.setter
+ def sharding_method(self, sharding_method):
+ """
+ Sets the sharding_method of this DedicatedShardedDatabase.
+ Sharding Method.
+
+
+ :param sharding_method: The sharding_method of this DedicatedShardedDatabase.
+ :type: str
+ """
+ allowed_values = ["USER", "SYSTEM"]
+ if not value_allowed_none_or_none_sentinel(sharding_method, allowed_values):
+ sharding_method = 'UNKNOWN_ENUM_VALUE'
+ self._sharding_method = sharding_method
+
+ @property
+ def db_version(self):
+ """
+ **[Required]** Gets the db_version of this DedicatedShardedDatabase.
+ Oracle Database version number.
+
+
+ :return: The db_version of this DedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._db_version
+
+ @db_version.setter
+ def db_version(self, db_version):
+ """
+ Sets the db_version of this DedicatedShardedDatabase.
+ Oracle Database version number.
+
+
+ :param db_version: The db_version of this DedicatedShardedDatabase.
+ :type: str
+ """
+ self._db_version = db_version
+
+ @property
+ def listener_port(self):
+ """
+ Gets the listener_port of this DedicatedShardedDatabase.
+ The GSM listener port number.
+
+
+ :return: The listener_port of this DedicatedShardedDatabase.
+ :rtype: int
+ """
+ return self._listener_port
+
+ @listener_port.setter
+ def listener_port(self, listener_port):
+ """
+ Sets the listener_port of this DedicatedShardedDatabase.
+ The GSM listener port number.
+
+
+ :param listener_port: The listener_port of this DedicatedShardedDatabase.
+ :type: int
+ """
+ self._listener_port = listener_port
+
+ @property
+ def listener_port_tls(self):
+ """
+ Gets the listener_port_tls of this DedicatedShardedDatabase.
+ The TLS listener port number for sharded database.
+
+
+ :return: The listener_port_tls of this DedicatedShardedDatabase.
+ :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 DedicatedShardedDatabase.
+ The TLS listener port number for sharded database.
+
+
+ :param listener_port_tls: The listener_port_tls of this DedicatedShardedDatabase.
+ :type: int
+ """
+ self._listener_port_tls = listener_port_tls
+
+ @property
+ def ons_port_local(self):
+ """
+ Gets the ons_port_local of this DedicatedShardedDatabase.
+ Ons local port number.
+
+
+ :return: The ons_port_local of this DedicatedShardedDatabase.
+ :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 DedicatedShardedDatabase.
+ Ons local port number.
+
+
+ :param ons_port_local: The ons_port_local of this DedicatedShardedDatabase.
+ :type: int
+ """
+ self._ons_port_local = ons_port_local
+
+ @property
+ def ons_port_remote(self):
+ """
+ Gets the ons_port_remote of this DedicatedShardedDatabase.
+ Ons remote port number.
+
+
+ :return: The ons_port_remote of this DedicatedShardedDatabase.
+ :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 DedicatedShardedDatabase.
+ Ons remote port number.
+
+
+ :param ons_port_remote: The ons_port_remote of this DedicatedShardedDatabase.
+ :type: int
+ """
+ self._ons_port_remote = ons_port_remote
+
+ @property
+ def prefix(self):
+ """
+ **[Required]** Gets the prefix of this DedicatedShardedDatabase.
+ Unique prefix for the sharded database.
+
+
+ :return: The prefix of this DedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._prefix
+
+ @prefix.setter
+ def prefix(self, prefix):
+ """
+ Sets the prefix of this DedicatedShardedDatabase.
+ Unique prefix for the sharded database.
+
+
+ :param prefix: The prefix of this DedicatedShardedDatabase.
+ :type: str
+ """
+ self._prefix = prefix
+
+ @property
+ def private_endpoint(self):
+ """
+ Gets the private_endpoint of this DedicatedShardedDatabase.
+ The OCID of private endpoint being used by the sharded database.
+
+
+ :return: The private_endpoint of this DedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._private_endpoint
+
+ @private_endpoint.setter
+ def private_endpoint(self, private_endpoint):
+ """
+ Sets the private_endpoint of this DedicatedShardedDatabase.
+ The OCID of private endpoint being used by the sharded database.
+
+
+ :param private_endpoint: The private_endpoint of this DedicatedShardedDatabase.
+ :type: str
+ """
+ self._private_endpoint = private_endpoint
+
+ @property
+ def connection_strings(self):
+ """
+ Gets the connection_strings of this DedicatedShardedDatabase.
+
+ :return: The connection_strings of this DedicatedShardedDatabase.
+ :rtype: oci.globally_distributed_database.models.ConnectionString
+ """
+ return self._connection_strings
+
+ @connection_strings.setter
+ def connection_strings(self, connection_strings):
+ """
+ Sets the connection_strings of this DedicatedShardedDatabase.
+
+ :param connection_strings: The connection_strings of this DedicatedShardedDatabase.
+ :type: oci.globally_distributed_database.models.ConnectionString
+ """
+ self._connection_strings = connection_strings
+
+ @property
+ def time_zone(self):
+ """
+ Gets the time_zone of this DedicatedShardedDatabase.
+ Timezone associated with the sharded database.
+
+
+ :return: The time_zone of this DedicatedShardedDatabase.
+ :rtype: str
+ """
+ return self._time_zone
+
+ @time_zone.setter
+ def time_zone(self, time_zone):
+ """
+ Sets the time_zone of this DedicatedShardedDatabase.
+ Timezone associated with the sharded database.
+
+
+ :param time_zone: The time_zone of this DedicatedShardedDatabase.
+ :type: str
+ """
+ self._time_zone = time_zone
+
+ @property
+ def gsms(self):
+ """
+ Gets the gsms of this DedicatedShardedDatabase.
+ Details of GSM instances for the sharded database.
+
+
+ :return: The gsms of this DedicatedShardedDatabase.
+ :rtype: list[oci.globally_distributed_database.models.GsmDetails]
+ """
+ return self._gsms
+
+ @gsms.setter
+ def gsms(self, gsms):
+ """
+ Sets the gsms of this DedicatedShardedDatabase.
+ Details of GSM instances for the sharded database.
+
+
+ :param gsms: The gsms of this DedicatedShardedDatabase.
+ :type: list[oci.globally_distributed_database.models.GsmDetails]
+ """
+ self._gsms = gsms
+
+ @property
+ def shard_details(self):
+ """
+ Gets the shard_details of this DedicatedShardedDatabase.
+ Details of ATP-D based shards.
+
+
+ :return: The shard_details of this DedicatedShardedDatabase.
+ :rtype: list[oci.globally_distributed_database.models.DedicatedShardDetails]
+ """
+ return self._shard_details
+
+ @shard_details.setter
+ def shard_details(self, shard_details):
+ """
+ Sets the shard_details of this DedicatedShardedDatabase.
+ Details of ATP-D based shards.
+
+
+ :param shard_details: The shard_details of this DedicatedShardedDatabase.
+ :type: list[oci.globally_distributed_database.models.DedicatedShardDetails]
+ """
+ self._shard_details = shard_details
+
+ @property
+ def catalog_details(self):
+ """
+ Gets the catalog_details of this DedicatedShardedDatabase.
+ Details of ATP-D based catalogs.
+
+
+ :return: The catalog_details of this DedicatedShardedDatabase.
+ :rtype: list[oci.globally_distributed_database.models.DedicatedCatalogDetails]
+ """
+ return self._catalog_details
+
+ @catalog_details.setter
+ def catalog_details(self, catalog_details):
+ """
+ Sets the catalog_details of this DedicatedShardedDatabase.
+ Details of ATP-D based catalogs.
+
+
+ :param catalog_details: The catalog_details of this DedicatedShardedDatabase.
+ :type: list[oci.globally_distributed_database.models.DedicatedCatalogDetails]
+ """
+ self._catalog_details = catalog_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/globally_distributed_database/models/dedicated_sharded_database_summary.py b/src/oci/globally_distributed_database/models/dedicated_sharded_database_summary.py
new file mode 100644
index 0000000000..2464a99ce4
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/dedicated_sharded_database_summary.py
@@ -0,0 +1,594 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+from .sharded_database_summary import ShardedDatabaseSummary
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DedicatedShardedDatabaseSummary(ShardedDatabaseSummary):
+ """
+ Summary of ATP-D based sharded database.
+ """
+
+ #: A constant which can be used with the db_workload property of a DedicatedShardedDatabaseSummary.
+ #: This constant has a value of "OLTP"
+ DB_WORKLOAD_OLTP = "OLTP"
+
+ #: A constant which can be used with the db_workload property of a DedicatedShardedDatabaseSummary.
+ #: This constant has a value of "DW"
+ DB_WORKLOAD_DW = "DW"
+
+ #: A constant which can be used with the sharding_method property of a DedicatedShardedDatabaseSummary.
+ #: This constant has a value of "USER"
+ SHARDING_METHOD_USER = "USER"
+
+ #: A constant which can be used with the sharding_method property of a DedicatedShardedDatabaseSummary.
+ #: This constant has a value of "SYSTEM"
+ SHARDING_METHOD_SYSTEM = "SYSTEM"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DedicatedShardedDatabaseSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.globally_distributed_database.models.DedicatedShardedDatabaseSummary.db_deployment_type` attribute
+ of this class is ``DEDICATED`` 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 DedicatedShardedDatabaseSummary.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this DedicatedShardedDatabaseSummary.
+ :type compartment_id: str
+
+ :param db_deployment_type:
+ The value to assign to the db_deployment_type property of this DedicatedShardedDatabaseSummary.
+ Allowed values for this property are: "DEDICATED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type db_deployment_type: str
+
+ :param display_name:
+ The value to assign to the display_name property of this DedicatedShardedDatabaseSummary.
+ :type display_name: str
+
+ :param time_created:
+ The value to assign to the time_created property of this DedicatedShardedDatabaseSummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this DedicatedShardedDatabaseSummary.
+ :type time_updated: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this DedicatedShardedDatabaseSummary.
+ :type lifecycle_state: str
+
+ :param lifecycle_state_details:
+ The value to assign to the lifecycle_state_details property of this DedicatedShardedDatabaseSummary.
+ :type lifecycle_state_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this DedicatedShardedDatabaseSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this DedicatedShardedDatabaseSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param system_tags:
+ The value to assign to the system_tags property of this DedicatedShardedDatabaseSummary.
+ :type system_tags: dict(str, dict(str, object))
+
+ :param cluster_certificate_common_name:
+ The value to assign to the cluster_certificate_common_name property of this DedicatedShardedDatabaseSummary.
+ :type cluster_certificate_common_name: str
+
+ :param db_workload:
+ The value to assign to the db_workload property of this DedicatedShardedDatabaseSummary.
+ 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: str
+
+ :param sharding_method:
+ The value to assign to the sharding_method property of this DedicatedShardedDatabaseSummary.
+ Allowed values for this property are: "USER", "SYSTEM", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type sharding_method: str
+
+ :param character_set:
+ The value to assign to the character_set property of this DedicatedShardedDatabaseSummary.
+ :type character_set: str
+
+ :param ncharacter_set:
+ The value to assign to the ncharacter_set property of this DedicatedShardedDatabaseSummary.
+ :type ncharacter_set: str
+
+ :param chunks:
+ The value to assign to the chunks property of this DedicatedShardedDatabaseSummary.
+ :type chunks: int
+
+ :param db_version:
+ The value to assign to the db_version property of this DedicatedShardedDatabaseSummary.
+ :type db_version: str
+
+ :param listener_port:
+ The value to assign to the listener_port property of this DedicatedShardedDatabaseSummary.
+ :type listener_port: int
+
+ :param listener_port_tls:
+ The value to assign to the listener_port_tls property of this DedicatedShardedDatabaseSummary.
+ :type listener_port_tls: int
+
+ :param ons_port_local:
+ The value to assign to the ons_port_local property of this DedicatedShardedDatabaseSummary.
+ :type ons_port_local: int
+
+ :param ons_port_remote:
+ The value to assign to the ons_port_remote property of this DedicatedShardedDatabaseSummary.
+ :type ons_port_remote: int
+
+ :param prefix:
+ The value to assign to the prefix property of this DedicatedShardedDatabaseSummary.
+ :type prefix: str
+
+ :param total_cpu_count:
+ The value to assign to the total_cpu_count property of this DedicatedShardedDatabaseSummary.
+ :type total_cpu_count: int
+
+ :param total_data_storage_size_in_gbs:
+ The value to assign to the total_data_storage_size_in_gbs property of this DedicatedShardedDatabaseSummary.
+ :type total_data_storage_size_in_gbs: float
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'db_deployment_type': 'str',
+ 'display_name': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_details': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'system_tags': 'dict(str, dict(str, object))',
+ 'cluster_certificate_common_name': 'str',
+ 'db_workload': 'str',
+ 'sharding_method': 'str',
+ 'character_set': 'str',
+ 'ncharacter_set': 'str',
+ 'chunks': 'int',
+ 'db_version': 'str',
+ 'listener_port': 'int',
+ 'listener_port_tls': 'int',
+ 'ons_port_local': 'int',
+ 'ons_port_remote': 'int',
+ 'prefix': 'str',
+ 'total_cpu_count': 'int',
+ 'total_data_storage_size_in_gbs': 'float'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'db_deployment_type': 'dbDeploymentType',
+ 'display_name': 'displayName',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags',
+ 'system_tags': 'systemTags',
+ 'cluster_certificate_common_name': 'clusterCertificateCommonName',
+ 'db_workload': 'dbWorkload',
+ 'sharding_method': 'shardingMethod',
+ 'character_set': 'characterSet',
+ 'ncharacter_set': 'ncharacterSet',
+ 'chunks': 'chunks',
+ 'db_version': 'dbVersion',
+ 'listener_port': 'listenerPort',
+ 'listener_port_tls': 'listenerPortTls',
+ 'ons_port_local': 'onsPortLocal',
+ 'ons_port_remote': 'onsPortRemote',
+ 'prefix': 'prefix',
+ 'total_cpu_count': 'totalCpuCount',
+ 'total_data_storage_size_in_gbs': 'totalDataStorageSizeInGbs'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._db_deployment_type = None
+ self._display_name = None
+ self._time_created = None
+ self._time_updated = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+ self._system_tags = None
+ self._cluster_certificate_common_name = None
+ self._db_workload = None
+ self._sharding_method = None
+ self._character_set = None
+ self._ncharacter_set = None
+ self._chunks = None
+ self._db_version = None
+ self._listener_port = None
+ self._listener_port_tls = None
+ self._ons_port_local = None
+ self._ons_port_remote = None
+ self._prefix = None
+ self._total_cpu_count = None
+ self._total_data_storage_size_in_gbs = None
+ self._db_deployment_type = 'DEDICATED'
+
+ @property
+ def cluster_certificate_common_name(self):
+ """
+ Gets the cluster_certificate_common_name of this DedicatedShardedDatabaseSummary.
+ The certificate common name used in all cloudAutonomousVmClusters for the sharded database topology. Eg. Production.
+ All the clusters used in one sharded database topology shall have same CABundle setup. Valid characterset for
+ clusterCertificateCommonName include uppercase or lowercase letters, numbers, hyphens, underscores, and period.
+
+
+ :return: The cluster_certificate_common_name of this DedicatedShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._cluster_certificate_common_name
+
+ @cluster_certificate_common_name.setter
+ def cluster_certificate_common_name(self, cluster_certificate_common_name):
+ """
+ Sets the cluster_certificate_common_name of this DedicatedShardedDatabaseSummary.
+ The certificate common name used in all cloudAutonomousVmClusters for the sharded database topology. Eg. Production.
+ All the clusters used in one sharded database topology shall have same CABundle setup. Valid characterset for
+ clusterCertificateCommonName include uppercase or lowercase letters, numbers, hyphens, underscores, and period.
+
+
+ :param cluster_certificate_common_name: The cluster_certificate_common_name of this DedicatedShardedDatabaseSummary.
+ :type: str
+ """
+ self._cluster_certificate_common_name = cluster_certificate_common_name
+
+ @property
+ def db_workload(self):
+ """
+ **[Required]** Gets the db_workload of this DedicatedShardedDatabaseSummary.
+ Possible workload types.
+
+ 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 of this DedicatedShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._db_workload
+
+ @db_workload.setter
+ def db_workload(self, db_workload):
+ """
+ Sets the db_workload of this DedicatedShardedDatabaseSummary.
+ Possible workload types.
+
+
+ :param db_workload: The db_workload of this DedicatedShardedDatabaseSummary.
+ :type: str
+ """
+ allowed_values = ["OLTP", "DW"]
+ if not value_allowed_none_or_none_sentinel(db_workload, allowed_values):
+ db_workload = 'UNKNOWN_ENUM_VALUE'
+ self._db_workload = db_workload
+
+ @property
+ def sharding_method(self):
+ """
+ **[Required]** Gets the sharding_method of this DedicatedShardedDatabaseSummary.
+ Sharding Method.
+
+ Allowed values for this property are: "USER", "SYSTEM", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The sharding_method of this DedicatedShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._sharding_method
+
+ @sharding_method.setter
+ def sharding_method(self, sharding_method):
+ """
+ Sets the sharding_method of this DedicatedShardedDatabaseSummary.
+ Sharding Method.
+
+
+ :param sharding_method: The sharding_method of this DedicatedShardedDatabaseSummary.
+ :type: str
+ """
+ allowed_values = ["USER", "SYSTEM"]
+ if not value_allowed_none_or_none_sentinel(sharding_method, allowed_values):
+ sharding_method = 'UNKNOWN_ENUM_VALUE'
+ self._sharding_method = sharding_method
+
+ @property
+ def character_set(self):
+ """
+ **[Required]** Gets the character_set of this DedicatedShardedDatabaseSummary.
+ The character set for the sharded database.
+
+
+ :return: The character_set of this DedicatedShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._character_set
+
+ @character_set.setter
+ def character_set(self, character_set):
+ """
+ Sets the character_set of this DedicatedShardedDatabaseSummary.
+ The character set for the sharded database.
+
+
+ :param character_set: The character_set of this DedicatedShardedDatabaseSummary.
+ :type: str
+ """
+ self._character_set = character_set
+
+ @property
+ def ncharacter_set(self):
+ """
+ **[Required]** Gets the ncharacter_set of this DedicatedShardedDatabaseSummary.
+ The national character set for the sharded database.
+
+
+ :return: The ncharacter_set of this DedicatedShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._ncharacter_set
+
+ @ncharacter_set.setter
+ def ncharacter_set(self, ncharacter_set):
+ """
+ Sets the ncharacter_set of this DedicatedShardedDatabaseSummary.
+ The national character set for the sharded database.
+
+
+ :param ncharacter_set: The ncharacter_set of this DedicatedShardedDatabaseSummary.
+ :type: str
+ """
+ self._ncharacter_set = ncharacter_set
+
+ @property
+ def chunks(self):
+ """
+ Gets the chunks of this DedicatedShardedDatabaseSummary.
+ The default number of unique chunks in a shardspace. The value of chunks must be
+ greater than 2 times the size of the largest shardgroup in any shardspace.
+
+
+ :return: The chunks of this DedicatedShardedDatabaseSummary.
+ :rtype: int
+ """
+ return self._chunks
+
+ @chunks.setter
+ def chunks(self, chunks):
+ """
+ Sets the chunks of this DedicatedShardedDatabaseSummary.
+ The default number of unique chunks in a shardspace. The value of chunks must be
+ greater than 2 times the size of the largest shardgroup in any shardspace.
+
+
+ :param chunks: The chunks of this DedicatedShardedDatabaseSummary.
+ :type: int
+ """
+ self._chunks = chunks
+
+ @property
+ def db_version(self):
+ """
+ Gets the db_version of this DedicatedShardedDatabaseSummary.
+ Oracle Database version of the Autonomous Container Database.
+
+
+ :return: The db_version of this DedicatedShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._db_version
+
+ @db_version.setter
+ def db_version(self, db_version):
+ """
+ Sets the db_version of this DedicatedShardedDatabaseSummary.
+ Oracle Database version of the Autonomous Container Database.
+
+
+ :param db_version: The db_version of this DedicatedShardedDatabaseSummary.
+ :type: str
+ """
+ self._db_version = db_version
+
+ @property
+ def listener_port(self):
+ """
+ Gets the listener_port of this DedicatedShardedDatabaseSummary.
+ The listener port number for the sharded database.
+
+
+ :return: The listener_port of this DedicatedShardedDatabaseSummary.
+ :rtype: int
+ """
+ return self._listener_port
+
+ @listener_port.setter
+ def listener_port(self, listener_port):
+ """
+ Sets the listener_port of this DedicatedShardedDatabaseSummary.
+ The listener port number for the sharded database.
+
+
+ :param listener_port: The listener_port of this DedicatedShardedDatabaseSummary.
+ :type: int
+ """
+ self._listener_port = listener_port
+
+ @property
+ def listener_port_tls(self):
+ """
+ Gets the listener_port_tls of this DedicatedShardedDatabaseSummary.
+ The TLS listener port number for sharded database.
+
+
+ :return: The listener_port_tls of this DedicatedShardedDatabaseSummary.
+ :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 DedicatedShardedDatabaseSummary.
+ The TLS listener port number for sharded database.
+
+
+ :param listener_port_tls: The listener_port_tls of this DedicatedShardedDatabaseSummary.
+ :type: int
+ """
+ self._listener_port_tls = listener_port_tls
+
+ @property
+ def ons_port_local(self):
+ """
+ Gets the ons_port_local of this DedicatedShardedDatabaseSummary.
+ Ons local port number.
+
+
+ :return: The ons_port_local of this DedicatedShardedDatabaseSummary.
+ :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 DedicatedShardedDatabaseSummary.
+ Ons local port number.
+
+
+ :param ons_port_local: The ons_port_local of this DedicatedShardedDatabaseSummary.
+ :type: int
+ """
+ self._ons_port_local = ons_port_local
+
+ @property
+ def ons_port_remote(self):
+ """
+ Gets the ons_port_remote of this DedicatedShardedDatabaseSummary.
+ Ons remote port number.
+
+
+ :return: The ons_port_remote of this DedicatedShardedDatabaseSummary.
+ :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 DedicatedShardedDatabaseSummary.
+ Ons remote port number.
+
+
+ :param ons_port_remote: The ons_port_remote of this DedicatedShardedDatabaseSummary.
+ :type: int
+ """
+ self._ons_port_remote = ons_port_remote
+
+ @property
+ def prefix(self):
+ """
+ Gets the prefix of this DedicatedShardedDatabaseSummary.
+ Name prefix for the sharded databases.
+
+
+ :return: The prefix of this DedicatedShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._prefix
+
+ @prefix.setter
+ def prefix(self, prefix):
+ """
+ Sets the prefix of this DedicatedShardedDatabaseSummary.
+ Name prefix for the sharded databases.
+
+
+ :param prefix: The prefix of this DedicatedShardedDatabaseSummary.
+ :type: str
+ """
+ self._prefix = prefix
+
+ @property
+ def total_cpu_count(self):
+ """
+ Gets the total_cpu_count of this DedicatedShardedDatabaseSummary.
+ Total cpu count usage for shards and catalogs of the sharded database.
+
+
+ :return: The total_cpu_count of this DedicatedShardedDatabaseSummary.
+ :rtype: int
+ """
+ return self._total_cpu_count
+
+ @total_cpu_count.setter
+ def total_cpu_count(self, total_cpu_count):
+ """
+ Sets the total_cpu_count of this DedicatedShardedDatabaseSummary.
+ Total cpu count usage for shards and catalogs of the sharded database.
+
+
+ :param total_cpu_count: The total_cpu_count of this DedicatedShardedDatabaseSummary.
+ :type: int
+ """
+ self._total_cpu_count = total_cpu_count
+
+ @property
+ def total_data_storage_size_in_gbs(self):
+ """
+ Gets the total_data_storage_size_in_gbs of this DedicatedShardedDatabaseSummary.
+ The aggregarted value of dataStorageSizeInGbs for all shards and catalogs.
+
+
+ :return: The total_data_storage_size_in_gbs of this DedicatedShardedDatabaseSummary.
+ :rtype: float
+ """
+ return self._total_data_storage_size_in_gbs
+
+ @total_data_storage_size_in_gbs.setter
+ def total_data_storage_size_in_gbs(self, total_data_storage_size_in_gbs):
+ """
+ Sets the total_data_storage_size_in_gbs of this DedicatedShardedDatabaseSummary.
+ The aggregarted value of dataStorageSizeInGbs for all shards and catalogs.
+
+
+ :param total_data_storage_size_in_gbs: The total_data_storage_size_in_gbs of this DedicatedShardedDatabaseSummary.
+ :type: float
+ """
+ self._total_data_storage_size_in_gbs = total_data_storage_size_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/globally_distributed_database/models/fetch_shardable_cloud_autonomous_vm_clusters_details.py b/src/oci/globally_distributed_database/models/fetch_shardable_cloud_autonomous_vm_clusters_details.py
new file mode 100644
index 0000000000..dffa7af978
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/fetch_shardable_cloud_autonomous_vm_clusters_details.py
@@ -0,0 +1,271 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class FetchShardableCloudAutonomousVmClustersDetails(object):
+ """
+ Details required for fetch sharded cloud autonomous vm clusters.
+ """
+
+ #: A constant which can be used with the lifecycle_state property of a FetchShardableCloudAutonomousVmClustersDetails.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a FetchShardableCloudAutonomousVmClustersDetails.
+ #: This constant has a value of "FAILED"
+ LIFECYCLE_STATE_FAILED = "FAILED"
+
+ #: A constant which can be used with the lifecycle_state property of a FetchShardableCloudAutonomousVmClustersDetails.
+ #: 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 FetchShardableCloudAutonomousVmClustersDetails.
+ #: This constant has a value of "INACTIVE"
+ LIFECYCLE_STATE_INACTIVE = "INACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a FetchShardableCloudAutonomousVmClustersDetails.
+ #: This constant has a value of "DELETING"
+ LIFECYCLE_STATE_DELETING = "DELETING"
+
+ #: A constant which can be used with the lifecycle_state property of a FetchShardableCloudAutonomousVmClustersDetails.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ #: A constant which can be used with the lifecycle_state property of a FetchShardableCloudAutonomousVmClustersDetails.
+ #: This constant has a value of "UPDATING"
+ LIFECYCLE_STATE_UPDATING = "UPDATING"
+
+ #: A constant which can be used with the lifecycle_state property of a FetchShardableCloudAutonomousVmClustersDetails.
+ #: This constant has a value of "CREATING"
+ LIFECYCLE_STATE_CREATING = "CREATING"
+
+ #: A constant which can be used with the lifecycle_state property of a FetchShardableCloudAutonomousVmClustersDetails.
+ #: This constant has a value of "UNAVAILABLE"
+ LIFECYCLE_STATE_UNAVAILABLE = "UNAVAILABLE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new FetchShardableCloudAutonomousVmClustersDetails 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 FetchShardableCloudAutonomousVmClustersDetails.
+ :type compartment_id: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this FetchShardableCloudAutonomousVmClustersDetails.
+ Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE"
+ :type lifecycle_state: str
+
+ :param lifecycle_state_details:
+ The value to assign to the lifecycle_state_details property of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type lifecycle_state_details: str
+
+ :param minimum_available_cdb_count:
+ The value to assign to the minimum_available_cdb_count property of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type minimum_available_cdb_count: int
+
+ :param are_depleted_clusters_included:
+ The value to assign to the are_depleted_clusters_included property of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type are_depleted_clusters_included: bool
+
+ :param regions:
+ The value to assign to the regions property of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type regions: list[str]
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_details': 'str',
+ 'minimum_available_cdb_count': 'int',
+ 'are_depleted_clusters_included': 'bool',
+ 'regions': 'list[str]'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ 'minimum_available_cdb_count': 'minimumAvailableCdbCount',
+ 'are_depleted_clusters_included': 'areDepletedClustersIncluded',
+ 'regions': 'regions'
+ }
+
+ self._compartment_id = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._minimum_available_cdb_count = None
+ self._are_depleted_clusters_included = None
+ self._regions = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this FetchShardableCloudAutonomousVmClustersDetails.
+ Compartment id of cloud autonomous vm clusters.
+
+
+ :return: The compartment_id of this FetchShardableCloudAutonomousVmClustersDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this FetchShardableCloudAutonomousVmClustersDetails.
+ Compartment id of cloud autonomous vm clusters.
+
+
+ :param compartment_id: The compartment_id of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this FetchShardableCloudAutonomousVmClustersDetails.
+ Lifecycle states for shardable Cloud autonomous vm cluster.
+
+ Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE"
+
+
+ :return: The lifecycle_state of this FetchShardableCloudAutonomousVmClustersDetails.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this FetchShardableCloudAutonomousVmClustersDetails.
+ Lifecycle states for shardable Cloud autonomous vm cluster.
+
+
+ :param lifecycle_state: The lifecycle_state of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type: str
+ """
+ allowed_values = ["ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE"]
+ 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}"
+ )
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_state_details(self):
+ """
+ Gets the lifecycle_state_details of this FetchShardableCloudAutonomousVmClustersDetails.
+ Detailed message for the lifecycle state.
+
+
+ :return: The lifecycle_state_details of this FetchShardableCloudAutonomousVmClustersDetails.
+ :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 FetchShardableCloudAutonomousVmClustersDetails.
+ Detailed message for the lifecycle state.
+
+
+ :param lifecycle_state_details: The lifecycle_state_details of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type: str
+ """
+ self._lifecycle_state_details = lifecycle_state_details
+
+ @property
+ def minimum_available_cdb_count(self):
+ """
+ Gets the minimum_available_cdb_count of this FetchShardableCloudAutonomousVmClustersDetails.
+ List only clusters for which atleast given minimum CDB count is available.
+
+
+ :return: The minimum_available_cdb_count of this FetchShardableCloudAutonomousVmClustersDetails.
+ :rtype: int
+ """
+ return self._minimum_available_cdb_count
+
+ @minimum_available_cdb_count.setter
+ def minimum_available_cdb_count(self, minimum_available_cdb_count):
+ """
+ Sets the minimum_available_cdb_count of this FetchShardableCloudAutonomousVmClustersDetails.
+ List only clusters for which atleast given minimum CDB count is available.
+
+
+ :param minimum_available_cdb_count: The minimum_available_cdb_count of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type: int
+ """
+ self._minimum_available_cdb_count = minimum_available_cdb_count
+
+ @property
+ def are_depleted_clusters_included(self):
+ """
+ Gets the are_depleted_clusters_included of this FetchShardableCloudAutonomousVmClustersDetails.
+ Flag to indicate of response shall also include clusters for which no more capacity is left to create new resources.
+
+
+ :return: The are_depleted_clusters_included of this FetchShardableCloudAutonomousVmClustersDetails.
+ :rtype: bool
+ """
+ return self._are_depleted_clusters_included
+
+ @are_depleted_clusters_included.setter
+ def are_depleted_clusters_included(self, are_depleted_clusters_included):
+ """
+ Sets the are_depleted_clusters_included of this FetchShardableCloudAutonomousVmClustersDetails.
+ Flag to indicate of response shall also include clusters for which no more capacity is left to create new resources.
+
+
+ :param are_depleted_clusters_included: The are_depleted_clusters_included of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type: bool
+ """
+ self._are_depleted_clusters_included = are_depleted_clusters_included
+
+ @property
+ def regions(self):
+ """
+ Gets the regions of this FetchShardableCloudAutonomousVmClustersDetails.
+ Region code of regions for which sharded cloud autonomous vm clusters need to be fetched.
+
+
+ :return: The regions of this FetchShardableCloudAutonomousVmClustersDetails.
+ :rtype: list[str]
+ """
+ return self._regions
+
+ @regions.setter
+ def regions(self, regions):
+ """
+ Sets the regions of this FetchShardableCloudAutonomousVmClustersDetails.
+ Region code of regions for which sharded cloud autonomous vm clusters need to be fetched.
+
+
+ :param regions: The regions of this FetchShardableCloudAutonomousVmClustersDetails.
+ :type: list[str]
+ """
+ self._regions = regions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/globally_distributed_database/models/generate_wallet_details.py b/src/oci/globally_distributed_database/models/generate_wallet_details.py
new file mode 100644
index 0000000000..becdf767e1
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/generate_wallet_details.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class GenerateWalletDetails(object):
+ """
+ Details to create and download an Oracle Sharded Database wallet.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new GenerateWalletDetails 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 GenerateWalletDetails.
+ :type password: str
+
+ """
+ self.swagger_types = {
+ 'password': 'str'
+ }
+
+ self.attribute_map = {
+ 'password': 'password'
+ }
+
+ self._password = None
+
+ @property
+ def password(self):
+ """
+ **[Required]** Gets the password of this GenerateWalletDetails.
+ 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 GenerateWalletDetails.
+ :rtype: str
+ """
+ return self._password
+
+ @password.setter
+ def password(self, password):
+ """
+ Sets the password of this GenerateWalletDetails.
+ 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 GenerateWalletDetails.
+ :type: str
+ """
+ self._password = password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/globally_distributed_database/models/gsm_details.py b/src/oci/globally_distributed_database/models/gsm_details.py
new file mode 100644
index 0000000000..782dae3efa
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/gsm_details.py
@@ -0,0 +1,364 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class GsmDetails(object):
+ """
+ Details of global service manager(GSM also known as shard director) instances for sharded database.
+ """
+
+ #: A constant which can be used with the status property of a GsmDetails.
+ #: This constant has a value of "FAILED"
+ STATUS_FAILED = "FAILED"
+
+ #: A constant which can be used with the status property of a GsmDetails.
+ #: This constant has a value of "DELETING"
+ STATUS_DELETING = "DELETING"
+
+ #: A constant which can be used with the status property of a GsmDetails.
+ #: This constant has a value of "DELETED"
+ STATUS_DELETED = "DELETED"
+
+ #: A constant which can be used with the status property of a GsmDetails.
+ #: This constant has a value of "UPDATING"
+ STATUS_UPDATING = "UPDATING"
+
+ #: A constant which can be used with the status property of a GsmDetails.
+ #: This constant has a value of "CREATING"
+ STATUS_CREATING = "CREATING"
+
+ #: A constant which can be used with the status property of a GsmDetails.
+ #: This constant has a value of "CREATED"
+ STATUS_CREATED = "CREATED"
+
+ #: A constant which can be used with the status property of a GsmDetails.
+ #: 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 GsmDetails.
+ #: This constant has a value of "CONFIGURED"
+ STATUS_CONFIGURED = "CONFIGURED"
+
+ #: A constant which can be used with the status property of a GsmDetails.
+ #: This constant has a value of "NEEDS_ATTENTION"
+ STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new GsmDetails 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 GsmDetails.
+ :type name: str
+
+ :param compute_count:
+ The value to assign to the compute_count property of this GsmDetails.
+ :type compute_count: float
+
+ :param data_storage_size_in_gbs:
+ The value to assign to the data_storage_size_in_gbs property of this GsmDetails.
+ :type data_storage_size_in_gbs: float
+
+ :param time_created:
+ The value to assign to the time_created property of this GsmDetails.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this GsmDetails.
+ :type time_updated: datetime
+
+ :param time_ssl_certificate_expires:
+ The value to assign to the time_ssl_certificate_expires property of this GsmDetails.
+ :type time_ssl_certificate_expires: datetime
+
+ :param status:
+ The value to assign to the status property of this GsmDetails.
+ 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 GsmDetails.
+ :type supporting_resource_id: str
+
+ :param metadata:
+ The value to assign to the metadata property of this GsmDetails.
+ :type metadata: dict(str, object)
+
+ """
+ self.swagger_types = {
+ 'name': 'str',
+ 'compute_count': 'float',
+ 'data_storage_size_in_gbs': 'float',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'time_ssl_certificate_expires': 'datetime',
+ 'status': 'str',
+ 'supporting_resource_id': 'str',
+ 'metadata': 'dict(str, object)'
+ }
+
+ self.attribute_map = {
+ 'name': 'name',
+ 'compute_count': 'computeCount',
+ 'data_storage_size_in_gbs': 'dataStorageSizeInGbs',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'time_ssl_certificate_expires': 'timeSslCertificateExpires',
+ 'status': 'status',
+ 'supporting_resource_id': 'supportingResourceId',
+ '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._time_ssl_certificate_expires = None
+ self._status = None
+ self._supporting_resource_id = None
+ self._metadata = None
+
+ @property
+ def name(self):
+ """
+ **[Required]** Gets the name of this GsmDetails.
+ Name of the GSM instance
+
+
+ :return: The name of this GsmDetails.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this GsmDetails.
+ Name of the GSM instance
+
+
+ :param name: The name of this GsmDetails.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def compute_count(self):
+ """
+ **[Required]** Gets the compute_count of this GsmDetails.
+ The compute count for the GSM instance.
+
+
+ :return: The compute_count of this GsmDetails.
+ :rtype: float
+ """
+ return self._compute_count
+
+ @compute_count.setter
+ def compute_count(self, compute_count):
+ """
+ Sets the compute_count of this GsmDetails.
+ The compute count for the GSM instance.
+
+
+ :param compute_count: The compute_count of this GsmDetails.
+ :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 GsmDetails.
+ The data disk group size to be allocated in GBs.
+
+
+ :return: The data_storage_size_in_gbs of this GsmDetails.
+ :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 GsmDetails.
+ The data disk group size to be allocated in GBs.
+
+
+ :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this GsmDetails.
+ :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 GsmDetails.
+ The time the GSM instance was created. An RFC3339 formatted datetime string
+
+
+ :return: The time_created of this GsmDetails.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this GsmDetails.
+ The time the GSM instance was created. An RFC3339 formatted datetime string
+
+
+ :param time_created: The time_created of this GsmDetails.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this GsmDetails.
+ The time the GSM instance was last updated. An RFC3339 formatted datetime string
+
+
+ :return: The time_updated of this GsmDetails.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this GsmDetails.
+ The time the GSM instance was last updated. An RFC3339 formatted datetime string
+
+
+ :param time_updated: The time_updated of this GsmDetails.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def time_ssl_certificate_expires(self):
+ """
+ Gets the time_ssl_certificate_expires of this GsmDetails.
+ The time the ssl certificate associated with GSM expires. An RFC3339 formatted datetime string
+
+
+ :return: The time_ssl_certificate_expires of this GsmDetails.
+ :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 GsmDetails.
+ The time the ssl certificate associated with GSM expires. An RFC3339 formatted datetime string
+
+
+ :param time_ssl_certificate_expires: The time_ssl_certificate_expires of this GsmDetails.
+ :type: datetime
+ """
+ self._time_ssl_certificate_expires = time_ssl_certificate_expires
+
+ @property
+ def status(self):
+ """
+ **[Required]** Gets the status of this GsmDetails.
+ Status of shard or catalog or gsm for the sharded 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 GsmDetails.
+ :rtype: str
+ """
+ return self._status
+
+ @status.setter
+ def status(self, status):
+ """
+ Sets the status of this GsmDetails.
+ Status of shard or catalog or gsm for the sharded database.
+
+
+ :param status: The status of this GsmDetails.
+ :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 GsmDetails.
+ Identifier of the underlying supporting resource.
+
+
+ :return: The supporting_resource_id of this GsmDetails.
+ :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 GsmDetails.
+ Identifier of the underlying supporting resource.
+
+
+ :param supporting_resource_id: The supporting_resource_id of this GsmDetails.
+ :type: str
+ """
+ self._supporting_resource_id = supporting_resource_id
+
+ @property
+ def metadata(self):
+ """
+ Gets the metadata of this GsmDetails.
+ Additional metadata related to GSM's underlying supporting resource.
+
+
+ :return: The metadata of this GsmDetails.
+ :rtype: dict(str, object)
+ """
+ return self._metadata
+
+ @metadata.setter
+ def metadata(self, metadata):
+ """
+ Sets the metadata of this GsmDetails.
+ Additional metadata related to GSM's underlying supporting resource.
+
+
+ :param metadata: The metadata of this GsmDetails.
+ :type: dict(str, object)
+ """
+ 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/globally_distributed_database/models/patch_insert_instruction.py b/src/oci/globally_distributed_database/models/patch_insert_instruction.py
new file mode 100644
index 0000000000..2eccb9383b
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/patch_insert_instruction.py
@@ -0,0 +1,89 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+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.globally_distributed_database.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/globally_distributed_database/models/patch_instruction.py b/src/oci/globally_distributed_database/models/patch_instruction.py
new file mode 100644
index 0000000000..3fe0b126d8
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/patch_instruction.py
@@ -0,0 +1,156 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_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.globally_distributed_database.models.PatchRemoveInstruction`
+ * :class:`~oci.globally_distributed_database.models.PatchInsertInstruction`
+ * :class:`~oci.globally_distributed_database.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/globally_distributed_database/models/patch_merge_instruction.py b/src/oci/globally_distributed_database/models/patch_merge_instruction.py
new file mode 100644
index 0000000000..aa65165095
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/patch_merge_instruction.py
@@ -0,0 +1,97 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+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.globally_distributed_database.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/globally_distributed_database/models/patch_remove_instruction.py b/src/oci/globally_distributed_database/models/patch_remove_instruction.py
new file mode 100644
index 0000000000..7d0e43296e
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/patch_remove_instruction.py
@@ -0,0 +1,59 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+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.globally_distributed_database.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/globally_distributed_database/models/patch_sharded_database_details.py b/src/oci/globally_distributed_database/models/patch_sharded_database_details.py
new file mode 100644
index 0000000000..6fb0b7d2a4
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/patch_sharded_database_details.py
@@ -0,0 +1,75 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PatchShardedDatabaseDetails(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 PatchShardedDatabaseDetails 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 PatchShardedDatabaseDetails.
+ :type items: list[oci.globally_distributed_database.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 PatchShardedDatabaseDetails.
+ List of patch instructions.
+
+
+ :return: The items of this PatchShardedDatabaseDetails.
+ :rtype: list[oci.globally_distributed_database.models.PatchInstruction]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this PatchShardedDatabaseDetails.
+ List of patch instructions.
+
+
+ :param items: The items of this PatchShardedDatabaseDetails.
+ :type: list[oci.globally_distributed_database.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/globally_distributed_database/models/prevalidate_create_payload.py b/src/oci/globally_distributed_database/models/prevalidate_create_payload.py
new file mode 100644
index 0000000000..f6fd37b648
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/prevalidate_create_payload.py
@@ -0,0 +1,78 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+from .prevalidate_payload import PrevalidatePayload
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrevalidateCreatePayload(PrevalidatePayload):
+ """
+ Payload to prevalidate create sharded database operation.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrevalidateCreatePayload object with values from keyword arguments. The default value of the :py:attr:`~oci.globally_distributed_database.models.PrevalidateCreatePayload.operation` attribute
+ of this class is ``CREATE`` 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 PrevalidateCreatePayload.
+ Allowed values for this property are: "CREATE", "PATCH"
+ :type operation: str
+
+ :param prevalidate_payload:
+ The value to assign to the prevalidate_payload property of this PrevalidateCreatePayload.
+ :type prevalidate_payload: oci.globally_distributed_database.models.CreateShardedDatabaseDetails
+
+ """
+ self.swagger_types = {
+ 'operation': 'str',
+ 'prevalidate_payload': 'CreateShardedDatabaseDetails'
+ }
+
+ self.attribute_map = {
+ 'operation': 'operation',
+ 'prevalidate_payload': 'prevalidatePayload'
+ }
+
+ self._operation = None
+ self._prevalidate_payload = None
+ self._operation = 'CREATE'
+
+ @property
+ def prevalidate_payload(self):
+ """
+ **[Required]** Gets the prevalidate_payload of this PrevalidateCreatePayload.
+
+ :return: The prevalidate_payload of this PrevalidateCreatePayload.
+ :rtype: oci.globally_distributed_database.models.CreateShardedDatabaseDetails
+ """
+ return self._prevalidate_payload
+
+ @prevalidate_payload.setter
+ def prevalidate_payload(self, prevalidate_payload):
+ """
+ Sets the prevalidate_payload of this PrevalidateCreatePayload.
+
+ :param prevalidate_payload: The prevalidate_payload of this PrevalidateCreatePayload.
+ :type: oci.globally_distributed_database.models.CreateShardedDatabaseDetails
+ """
+ self._prevalidate_payload = prevalidate_payload
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/globally_distributed_database/models/prevalidate_patch_payload.py b/src/oci/globally_distributed_database/models/prevalidate_patch_payload.py
new file mode 100644
index 0000000000..b648e9bbf4
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/prevalidate_patch_payload.py
@@ -0,0 +1,109 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+from .prevalidate_payload import PrevalidatePayload
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrevalidatePatchPayload(PrevalidatePayload):
+ """
+ Payload to prevalidate patch sharded database operation.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrevalidatePatchPayload object with values from keyword arguments. The default value of the :py:attr:`~oci.globally_distributed_database.models.PrevalidatePatchPayload.operation` attribute
+ of this class is ``PATCH`` 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 PrevalidatePatchPayload.
+ Allowed values for this property are: "CREATE", "PATCH"
+ :type operation: str
+
+ :param prevalidate_payload:
+ The value to assign to the prevalidate_payload property of this PrevalidatePatchPayload.
+ :type prevalidate_payload: oci.globally_distributed_database.models.PatchShardedDatabaseDetails
+
+ :param sharded_database_id:
+ The value to assign to the sharded_database_id property of this PrevalidatePatchPayload.
+ :type sharded_database_id: str
+
+ """
+ self.swagger_types = {
+ 'operation': 'str',
+ 'prevalidate_payload': 'PatchShardedDatabaseDetails',
+ 'sharded_database_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'operation': 'operation',
+ 'prevalidate_payload': 'prevalidatePayload',
+ 'sharded_database_id': 'shardedDatabaseId'
+ }
+
+ self._operation = None
+ self._prevalidate_payload = None
+ self._sharded_database_id = None
+ self._operation = 'PATCH'
+
+ @property
+ def prevalidate_payload(self):
+ """
+ **[Required]** Gets the prevalidate_payload of this PrevalidatePatchPayload.
+
+ :return: The prevalidate_payload of this PrevalidatePatchPayload.
+ :rtype: oci.globally_distributed_database.models.PatchShardedDatabaseDetails
+ """
+ return self._prevalidate_payload
+
+ @prevalidate_payload.setter
+ def prevalidate_payload(self, prevalidate_payload):
+ """
+ Sets the prevalidate_payload of this PrevalidatePatchPayload.
+
+ :param prevalidate_payload: The prevalidate_payload of this PrevalidatePatchPayload.
+ :type: oci.globally_distributed_database.models.PatchShardedDatabaseDetails
+ """
+ self._prevalidate_payload = prevalidate_payload
+
+ @property
+ def sharded_database_id(self):
+ """
+ **[Required]** Gets the sharded_database_id of this PrevalidatePatchPayload.
+ Sharded database identifier
+
+
+ :return: The sharded_database_id of this PrevalidatePatchPayload.
+ :rtype: str
+ """
+ return self._sharded_database_id
+
+ @sharded_database_id.setter
+ def sharded_database_id(self, sharded_database_id):
+ """
+ Sets the sharded_database_id of this PrevalidatePatchPayload.
+ Sharded database identifier
+
+
+ :param sharded_database_id: The sharded_database_id of this PrevalidatePatchPayload.
+ :type: str
+ """
+ self._sharded_database_id = sharded_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/globally_distributed_database/models/prevalidate_payload.py b/src/oci/globally_distributed_database/models/prevalidate_payload.py
new file mode 100644
index 0000000000..68c4f2ab81
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/prevalidate_payload.py
@@ -0,0 +1,109 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrevalidatePayload(object):
+ """
+ Payload required to run prevalidation operation for create sharded database or patch sharded database, based on operation selected.
+ """
+
+ #: A constant which can be used with the operation property of a PrevalidatePayload.
+ #: This constant has a value of "CREATE"
+ OPERATION_CREATE = "CREATE"
+
+ #: A constant which can be used with the operation property of a PrevalidatePayload.
+ #: This constant has a value of "PATCH"
+ OPERATION_PATCH = "PATCH"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrevalidatePayload 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.globally_distributed_database.models.PrevalidatePatchPayload`
+ * :class:`~oci.globally_distributed_database.models.PrevalidateCreatePayload`
+
+ 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 PrevalidatePayload.
+ Allowed values for this property are: "CREATE", "PATCH"
+ :type operation: str
+
+ """
+ self.swagger_types = {
+ 'operation': 'str'
+ }
+
+ self.attribute_map = {
+ 'operation': 'operation'
+ }
+
+ self._operation = 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 == 'PATCH':
+ return 'PrevalidatePatchPayload'
+
+ if type == 'CREATE':
+ return 'PrevalidateCreatePayload'
+ else:
+ return 'PrevalidatePayload'
+
+ @property
+ def operation(self):
+ """
+ **[Required]** Gets the operation of this PrevalidatePayload.
+ The operation on sharded database that need to be pre-validated.
+
+ Allowed values for this property are: "CREATE", "PATCH"
+
+
+ :return: The operation of this PrevalidatePayload.
+ :rtype: str
+ """
+ return self._operation
+
+ @operation.setter
+ def operation(self, operation):
+ """
+ Sets the operation of this PrevalidatePayload.
+ The operation on sharded database that need to be pre-validated.
+
+
+ :param operation: The operation of this PrevalidatePayload.
+ :type: str
+ """
+ allowed_values = ["CREATE", "PATCH"]
+ 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
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/globally_distributed_database/models/prevalidate_sharded_database_details.py b/src/oci/globally_distributed_database/models/prevalidate_sharded_database_details.py
new file mode 100644
index 0000000000..a67e739406
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/prevalidate_sharded_database_details.py
@@ -0,0 +1,68 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrevalidateShardedDatabaseDetails(object):
+ """
+ Input for prevalidate sharded database API to validate various operations payload.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrevalidateShardedDatabaseDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param prevalidate_sharded_database_details:
+ The value to assign to the prevalidate_sharded_database_details property of this PrevalidateShardedDatabaseDetails.
+ :type prevalidate_sharded_database_details: oci.globally_distributed_database.models.PrevalidatePayload
+
+ """
+ self.swagger_types = {
+ 'prevalidate_sharded_database_details': 'PrevalidatePayload'
+ }
+
+ self.attribute_map = {
+ 'prevalidate_sharded_database_details': 'prevalidateShardedDatabaseDetails'
+ }
+
+ self._prevalidate_sharded_database_details = None
+
+ @property
+ def prevalidate_sharded_database_details(self):
+ """
+ **[Required]** Gets the prevalidate_sharded_database_details of this PrevalidateShardedDatabaseDetails.
+
+ :return: The prevalidate_sharded_database_details of this PrevalidateShardedDatabaseDetails.
+ :rtype: oci.globally_distributed_database.models.PrevalidatePayload
+ """
+ return self._prevalidate_sharded_database_details
+
+ @prevalidate_sharded_database_details.setter
+ def prevalidate_sharded_database_details(self, prevalidate_sharded_database_details):
+ """
+ Sets the prevalidate_sharded_database_details of this PrevalidateShardedDatabaseDetails.
+
+ :param prevalidate_sharded_database_details: The prevalidate_sharded_database_details of this PrevalidateShardedDatabaseDetails.
+ :type: oci.globally_distributed_database.models.PrevalidatePayload
+ """
+ self._prevalidate_sharded_database_details = prevalidate_sharded_database_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/globally_distributed_database/models/prevalidate_sharded_database_result.py b/src/oci/globally_distributed_database/models/prevalidate_sharded_database_result.py
new file mode 100644
index 0000000000..fe6a0d13cd
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/prevalidate_sharded_database_result.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrevalidateShardedDatabaseResult(object):
+ """
+ Response of prevalidation api.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrevalidateShardedDatabaseResult object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param validation_result:
+ The value to assign to the validation_result property of this PrevalidateShardedDatabaseResult.
+ :type validation_result: dict(str, object)
+
+ """
+ self.swagger_types = {
+ 'validation_result': 'dict(str, object)'
+ }
+
+ self.attribute_map = {
+ 'validation_result': 'validationResult'
+ }
+
+ self._validation_result = None
+
+ @property
+ def validation_result(self):
+ """
+ **[Required]** Gets the validation_result of this PrevalidateShardedDatabaseResult.
+ Prevalidation result based on input payload.
+
+
+ :return: The validation_result of this PrevalidateShardedDatabaseResult.
+ :rtype: dict(str, object)
+ """
+ return self._validation_result
+
+ @validation_result.setter
+ def validation_result(self, validation_result):
+ """
+ Sets the validation_result of this PrevalidateShardedDatabaseResult.
+ Prevalidation result based on input payload.
+
+
+ :param validation_result: The validation_result of this PrevalidateShardedDatabaseResult.
+ :type: dict(str, object)
+ """
+ self._validation_result = validation_result
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/globally_distributed_database/models/private_endpoint.py b/src/oci/globally_distributed_database/models/private_endpoint.py
new file mode 100644
index 0000000000..3224ed51d4
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/private_endpoint.py
@@ -0,0 +1,579 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrivateEndpoint(object):
+ """
+ PrivateEndpoint resource.
+ """
+
+ #: A constant which can be used with the lifecycle_state property of a PrivateEndpoint.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a PrivateEndpoint.
+ #: This constant has a value of "FAILED"
+ LIFECYCLE_STATE_FAILED = "FAILED"
+
+ #: A constant which can be used with the lifecycle_state property of a PrivateEndpoint.
+ #: This constant has a value of "INACTIVE"
+ LIFECYCLE_STATE_INACTIVE = "INACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a PrivateEndpoint.
+ #: This constant has a value of "DELETING"
+ LIFECYCLE_STATE_DELETING = "DELETING"
+
+ #: A constant which can be used with the lifecycle_state property of a PrivateEndpoint.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ #: A constant which can be used with the lifecycle_state property of a PrivateEndpoint.
+ #: This constant has a value of "UPDATING"
+ LIFECYCLE_STATE_UPDATING = "UPDATING"
+
+ #: A constant which can be used with the lifecycle_state property of a PrivateEndpoint.
+ #: This constant has a value of "CREATING"
+ LIFECYCLE_STATE_CREATING = "CREATING"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrivateEndpoint 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 PrivateEndpoint.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this PrivateEndpoint.
+ :type compartment_id: str
+
+ :param subnet_id:
+ The value to assign to the subnet_id property of this PrivateEndpoint.
+ :type subnet_id: str
+
+ :param vcn_id:
+ The value to assign to the vcn_id property of this PrivateEndpoint.
+ :type vcn_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this PrivateEndpoint.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this PrivateEndpoint.
+ :type description: str
+
+ :param private_ip:
+ The value to assign to the private_ip property of this PrivateEndpoint.
+ :type private_ip: str
+
+ :param nsg_ids:
+ The value to assign to the nsg_ids property of this PrivateEndpoint.
+ :type nsg_ids: list[str]
+
+ :param sharded_databases:
+ The value to assign to the sharded_databases property of this PrivateEndpoint.
+ :type sharded_databases: list[str]
+
+ :param time_created:
+ The value to assign to the time_created property of this PrivateEndpoint.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this PrivateEndpoint.
+ :type time_updated: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this PrivateEndpoint.
+ 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_state_details:
+ The value to assign to the lifecycle_state_details property of this PrivateEndpoint.
+ :type lifecycle_state_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this PrivateEndpoint.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this PrivateEndpoint.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param system_tags:
+ The value to assign to the system_tags property of this PrivateEndpoint.
+ :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',
+ 'nsg_ids': 'list[str]',
+ 'sharded_databases': 'list[str]',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_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',
+ 'compartment_id': 'compartmentId',
+ 'subnet_id': 'subnetId',
+ 'vcn_id': 'vcnId',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'private_ip': 'privateIp',
+ 'nsg_ids': 'nsgIds',
+ 'sharded_databases': 'shardedDatabases',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ '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._nsg_ids = None
+ self._sharded_databases = None
+ self._time_created = None
+ self._time_updated = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+ self._system_tags = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this PrivateEndpoint.
+ The identifier of the Private Endpoint.
+
+
+ :return: The id of this PrivateEndpoint.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this PrivateEndpoint.
+ The identifier of the Private Endpoint.
+
+
+ :param id: The id of this PrivateEndpoint.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this PrivateEndpoint.
+ Identifier of the compartment in which private endpoint exists.
+
+
+ :return: The compartment_id of this PrivateEndpoint.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this PrivateEndpoint.
+ Identifier of the compartment in which private endpoint exists.
+
+
+ :param compartment_id: The compartment_id of this PrivateEndpoint.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def subnet_id(self):
+ """
+ **[Required]** Gets the subnet_id of this PrivateEndpoint.
+ Identifier of the subnet in which private endpoint exists.
+
+
+ :return: The subnet_id of this PrivateEndpoint.
+ :rtype: str
+ """
+ return self._subnet_id
+
+ @subnet_id.setter
+ def subnet_id(self, subnet_id):
+ """
+ Sets the subnet_id of this PrivateEndpoint.
+ Identifier of the subnet in which private endpoint exists.
+
+
+ :param subnet_id: The subnet_id of this PrivateEndpoint.
+ :type: str
+ """
+ self._subnet_id = subnet_id
+
+ @property
+ def vcn_id(self):
+ """
+ **[Required]** Gets the vcn_id of this PrivateEndpoint.
+ Identifier of the VCN in which subnet exists.
+
+
+ :return: The vcn_id of this PrivateEndpoint.
+ :rtype: str
+ """
+ return self._vcn_id
+
+ @vcn_id.setter
+ def vcn_id(self, vcn_id):
+ """
+ Sets the vcn_id of this PrivateEndpoint.
+ Identifier of the VCN in which subnet exists.
+
+
+ :param vcn_id: The vcn_id of this PrivateEndpoint.
+ :type: str
+ """
+ self._vcn_id = vcn_id
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this PrivateEndpoint.
+ PrivateEndpoint display name.
+
+
+ :return: The display_name of this PrivateEndpoint.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this PrivateEndpoint.
+ PrivateEndpoint display name.
+
+
+ :param display_name: The display_name of this PrivateEndpoint.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this PrivateEndpoint.
+ PrivateEndpoint description.
+
+
+ :return: The description of this PrivateEndpoint.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this PrivateEndpoint.
+ PrivateEndpoint description.
+
+
+ :param description: The description of this PrivateEndpoint.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def private_ip(self):
+ """
+ Gets the private_ip of this PrivateEndpoint.
+ IP address of the Private Endpoint.
+
+
+ :return: The private_ip of this PrivateEndpoint.
+ :rtype: str
+ """
+ return self._private_ip
+
+ @private_ip.setter
+ def private_ip(self, private_ip):
+ """
+ Sets the private_ip of this PrivateEndpoint.
+ IP address of the Private Endpoint.
+
+
+ :param private_ip: The private_ip of this PrivateEndpoint.
+ :type: str
+ """
+ self._private_ip = private_ip
+
+ @property
+ def nsg_ids(self):
+ """
+ Gets the nsg_ids of this PrivateEndpoint.
+ The OCIDs of the network security groups that the private endpoint belongs to.
+
+
+ :return: The nsg_ids of this PrivateEndpoint.
+ :rtype: list[str]
+ """
+ return self._nsg_ids
+
+ @nsg_ids.setter
+ def nsg_ids(self, nsg_ids):
+ """
+ Sets the nsg_ids of this PrivateEndpoint.
+ The OCIDs of the network security groups that the private endpoint belongs to.
+
+
+ :param nsg_ids: The nsg_ids of this PrivateEndpoint.
+ :type: list[str]
+ """
+ self._nsg_ids = nsg_ids
+
+ @property
+ def sharded_databases(self):
+ """
+ Gets the sharded_databases of this PrivateEndpoint.
+ The OCIDs of sharded databases that consumes the given private endpoint.
+
+
+ :return: The sharded_databases of this PrivateEndpoint.
+ :rtype: list[str]
+ """
+ return self._sharded_databases
+
+ @sharded_databases.setter
+ def sharded_databases(self, sharded_databases):
+ """
+ Sets the sharded_databases of this PrivateEndpoint.
+ The OCIDs of sharded databases that consumes the given private endpoint.
+
+
+ :param sharded_databases: The sharded_databases of this PrivateEndpoint.
+ :type: list[str]
+ """
+ self._sharded_databases = sharded_databases
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this PrivateEndpoint.
+ The time the PrivateEndpoint was first created. An RFC3339 formatted datetime string
+
+
+ :return: The time_created of this PrivateEndpoint.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this PrivateEndpoint.
+ The time the PrivateEndpoint was first created. An RFC3339 formatted datetime string
+
+
+ :param time_created: The time_created of this PrivateEndpoint.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this PrivateEndpoint.
+ The time the Private Endpoint was last updated. An RFC3339 formatted datetime string
+
+
+ :return: The time_updated of this PrivateEndpoint.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this PrivateEndpoint.
+ The time the Private Endpoint was last updated. An RFC3339 formatted datetime string
+
+
+ :param time_updated: The time_updated of this PrivateEndpoint.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this PrivateEndpoint.
+ 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 PrivateEndpoint.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this PrivateEndpoint.
+ Lifecycle states for private endpoint.
+
+
+ :param lifecycle_state: The lifecycle_state of this PrivateEndpoint.
+ :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_state_details(self):
+ """
+ Gets the lifecycle_state_details of this PrivateEndpoint.
+ Detailed message for the lifecycle state.
+
+
+ :return: The lifecycle_state_details of this PrivateEndpoint.
+ :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 PrivateEndpoint.
+ Detailed message for the lifecycle state.
+
+
+ :param lifecycle_state_details: The lifecycle_state_details of this PrivateEndpoint.
+ :type: str
+ """
+ self._lifecycle_state_details = lifecycle_state_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this PrivateEndpoint.
+ 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 PrivateEndpoint.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this PrivateEndpoint.
+ 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 PrivateEndpoint.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this PrivateEndpoint.
+ 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 PrivateEndpoint.
+ :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 PrivateEndpoint.
+ 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 PrivateEndpoint.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def system_tags(self):
+ """
+ Gets the system_tags of this PrivateEndpoint.
+ 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 PrivateEndpoint.
+ :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 PrivateEndpoint.
+ 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 PrivateEndpoint.
+ :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/globally_distributed_database/models/private_endpoint_collection.py b/src/oci/globally_distributed_database/models/private_endpoint_collection.py
new file mode 100644
index 0000000000..8155a32622
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/private_endpoint_collection.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrivateEndpointCollection(object):
+ """
+ Collection of private endpoints.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrivateEndpointCollection 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 PrivateEndpointCollection.
+ :type items: list[oci.globally_distributed_database.models.PrivateEndpointSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[PrivateEndpointSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this PrivateEndpointCollection.
+ Array of private endpoint summaries.
+
+
+ :return: The items of this PrivateEndpointCollection.
+ :rtype: list[oci.globally_distributed_database.models.PrivateEndpointSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this PrivateEndpointCollection.
+ Array of private endpoint summaries.
+
+
+ :param items: The items of this PrivateEndpointCollection.
+ :type: list[oci.globally_distributed_database.models.PrivateEndpointSummary]
+ """
+ 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/globally_distributed_database/models/private_endpoint_summary.py b/src/oci/globally_distributed_database/models/private_endpoint_summary.py
new file mode 100644
index 0000000000..6a5367925c
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/private_endpoint_summary.py
@@ -0,0 +1,481 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrivateEndpointSummary(object):
+ """
+ PrivateEndpoint resource summary.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrivateEndpointSummary 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 PrivateEndpointSummary.
+ :type id: str
+
+ :param description:
+ The value to assign to the description property of this PrivateEndpointSummary.
+ :type description: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this PrivateEndpointSummary.
+ :type compartment_id: str
+
+ :param subnet_id:
+ The value to assign to the subnet_id property of this PrivateEndpointSummary.
+ :type subnet_id: str
+
+ :param vcn_id:
+ The value to assign to the vcn_id property of this PrivateEndpointSummary.
+ :type vcn_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this PrivateEndpointSummary.
+ :type display_name: str
+
+ :param nsg_ids:
+ The value to assign to the nsg_ids property of this PrivateEndpointSummary.
+ :type nsg_ids: list[str]
+
+ :param time_created:
+ The value to assign to the time_created property of this PrivateEndpointSummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this PrivateEndpointSummary.
+ :type time_updated: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this PrivateEndpointSummary.
+ :type lifecycle_state: str
+
+ :param lifecycle_state_details:
+ The value to assign to the lifecycle_state_details property of this PrivateEndpointSummary.
+ :type lifecycle_state_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this PrivateEndpointSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this PrivateEndpointSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param system_tags:
+ The value to assign to the system_tags property of this PrivateEndpointSummary.
+ :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',
+ 'nsg_ids': 'list[str]',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_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',
+ 'nsg_ids': 'nsgIds',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ '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._nsg_ids = None
+ self._time_created = None
+ self._time_updated = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+ self._system_tags = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this PrivateEndpointSummary.
+ PrivateEndpoint identifier
+
+
+ :return: The id of this PrivateEndpointSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this PrivateEndpointSummary.
+ PrivateEndpoint identifier
+
+
+ :param id: The id of this PrivateEndpointSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def description(self):
+ """
+ Gets the description of this PrivateEndpointSummary.
+ PrivateEndpoint description.
+
+
+ :return: The description of this PrivateEndpointSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this PrivateEndpointSummary.
+ PrivateEndpoint description.
+
+
+ :param description: The description of this PrivateEndpointSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this PrivateEndpointSummary.
+ Identifier of the compartment where private endpoint exists.
+
+
+ :return: The compartment_id of this PrivateEndpointSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this PrivateEndpointSummary.
+ Identifier of the compartment where private endpoint exists.
+
+
+ :param compartment_id: The compartment_id of this PrivateEndpointSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def subnet_id(self):
+ """
+ **[Required]** Gets the subnet_id of this PrivateEndpointSummary.
+ Identifier of the customer subnet against which private endpoint is created.
+
+
+ :return: The subnet_id of this PrivateEndpointSummary.
+ :rtype: str
+ """
+ return self._subnet_id
+
+ @subnet_id.setter
+ def subnet_id(self, subnet_id):
+ """
+ Sets the subnet_id of this PrivateEndpointSummary.
+ Identifier of the customer subnet against which private endpoint is created.
+
+
+ :param subnet_id: The subnet_id of this PrivateEndpointSummary.
+ :type: str
+ """
+ self._subnet_id = subnet_id
+
+ @property
+ def vcn_id(self):
+ """
+ **[Required]** Gets the vcn_id of this PrivateEndpointSummary.
+ Identifier of the VCN in which subnet exists.
+
+
+ :return: The vcn_id of this PrivateEndpointSummary.
+ :rtype: str
+ """
+ return self._vcn_id
+
+ @vcn_id.setter
+ def vcn_id(self, vcn_id):
+ """
+ Sets the vcn_id of this PrivateEndpointSummary.
+ Identifier of the VCN in which subnet exists.
+
+
+ :param vcn_id: The vcn_id of this PrivateEndpointSummary.
+ :type: str
+ """
+ self._vcn_id = vcn_id
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this PrivateEndpointSummary.
+ Private endpoint display name.
+
+
+ :return: The display_name of this PrivateEndpointSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this PrivateEndpointSummary.
+ Private endpoint display name.
+
+
+ :param display_name: The display_name of this PrivateEndpointSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def nsg_ids(self):
+ """
+ Gets the nsg_ids of this PrivateEndpointSummary.
+ The OCIDs of the network security groups that the private endpoint belongs to.
+
+
+ :return: The nsg_ids of this PrivateEndpointSummary.
+ :rtype: list[str]
+ """
+ return self._nsg_ids
+
+ @nsg_ids.setter
+ def nsg_ids(self, nsg_ids):
+ """
+ Sets the nsg_ids of this PrivateEndpointSummary.
+ The OCIDs of the network security groups that the private endpoint belongs to.
+
+
+ :param nsg_ids: The nsg_ids of this PrivateEndpointSummary.
+ :type: list[str]
+ """
+ self._nsg_ids = nsg_ids
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this PrivateEndpointSummary.
+ The time the the private endpoint was created. An RFC3339 formatted datetime string
+
+
+ :return: The time_created of this PrivateEndpointSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this PrivateEndpointSummary.
+ The time the the private endpoint was created. An RFC3339 formatted datetime string
+
+
+ :param time_created: The time_created of this PrivateEndpointSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this PrivateEndpointSummary.
+ The time the private endpoint was last updated. An RFC3339 formatted datetime string
+
+
+ :return: The time_updated of this PrivateEndpointSummary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this PrivateEndpointSummary.
+ The time the private endpoint was last updated. An RFC3339 formatted datetime string
+
+
+ :param time_updated: The time_updated of this PrivateEndpointSummary.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this PrivateEndpointSummary.
+ Lifecycle state of private endpoint.
+
+
+ :return: The lifecycle_state of this PrivateEndpointSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this PrivateEndpointSummary.
+ Lifecycle state of private endpoint.
+
+
+ :param lifecycle_state: The lifecycle_state of this PrivateEndpointSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_state_details(self):
+ """
+ Gets the lifecycle_state_details of this PrivateEndpointSummary.
+ Detailed message for the lifecycle state.
+
+
+ :return: The lifecycle_state_details of this PrivateEndpointSummary.
+ :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 PrivateEndpointSummary.
+ Detailed message for the lifecycle state.
+
+
+ :param lifecycle_state_details: The lifecycle_state_details of this PrivateEndpointSummary.
+ :type: str
+ """
+ self._lifecycle_state_details = lifecycle_state_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this PrivateEndpointSummary.
+ 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 PrivateEndpointSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this PrivateEndpointSummary.
+ 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 PrivateEndpointSummary.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this PrivateEndpointSummary.
+ 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 PrivateEndpointSummary.
+ :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 PrivateEndpointSummary.
+ 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 PrivateEndpointSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def system_tags(self):
+ """
+ Gets the system_tags of this PrivateEndpointSummary.
+ 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 PrivateEndpointSummary.
+ :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 PrivateEndpointSummary.
+ 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 PrivateEndpointSummary.
+ :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/globally_distributed_database/models/shardable_cloud_autonomous_vm_cluster_summary.py b/src/oci/globally_distributed_database/models/shardable_cloud_autonomous_vm_cluster_summary.py
new file mode 100644
index 0000000000..aa65b5198c
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/shardable_cloud_autonomous_vm_cluster_summary.py
@@ -0,0 +1,928 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ShardableCloudAutonomousVmClusterSummary(object):
+ """
+ Shardable cloud autonomous vm cluster summary.
+ """
+
+ #: A constant which can be used with the lifecycle_state property of a ShardableCloudAutonomousVmClusterSummary.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardableCloudAutonomousVmClusterSummary.
+ #: This constant has a value of "FAILED"
+ LIFECYCLE_STATE_FAILED = "FAILED"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardableCloudAutonomousVmClusterSummary.
+ #: 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 ShardableCloudAutonomousVmClusterSummary.
+ #: This constant has a value of "INACTIVE"
+ LIFECYCLE_STATE_INACTIVE = "INACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardableCloudAutonomousVmClusterSummary.
+ #: This constant has a value of "DELETING"
+ LIFECYCLE_STATE_DELETING = "DELETING"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardableCloudAutonomousVmClusterSummary.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardableCloudAutonomousVmClusterSummary.
+ #: This constant has a value of "UPDATING"
+ LIFECYCLE_STATE_UPDATING = "UPDATING"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardableCloudAutonomousVmClusterSummary.
+ #: This constant has a value of "CREATING"
+ LIFECYCLE_STATE_CREATING = "CREATING"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardableCloudAutonomousVmClusterSummary.
+ #: This constant has a value of "UNAVAILABLE"
+ LIFECYCLE_STATE_UNAVAILABLE = "UNAVAILABLE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ShardableCloudAutonomousVmClusterSummary 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 ShardableCloudAutonomousVmClusterSummary.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this ShardableCloudAutonomousVmClusterSummary.
+ :type compartment_id: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this ShardableCloudAutonomousVmClusterSummary.
+ Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE", '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 ShardableCloudAutonomousVmClusterSummary.
+ :type lifecycle_state_details: str
+
+ :param display_name:
+ The value to assign to the display_name property of this ShardableCloudAutonomousVmClusterSummary.
+ :type display_name: str
+
+ :param compute_model:
+ The value to assign to the compute_model property of this ShardableCloudAutonomousVmClusterSummary.
+ :type compute_model: str
+
+ :param available_container_databases:
+ The value to assign to the available_container_databases property of this ShardableCloudAutonomousVmClusterSummary.
+ :type available_container_databases: int
+
+ :param available_cpus:
+ The value to assign to the available_cpus property of this ShardableCloudAutonomousVmClusterSummary.
+ :type available_cpus: float
+
+ :param availability_domain:
+ The value to assign to the availability_domain property of this ShardableCloudAutonomousVmClusterSummary.
+ :type availability_domain: str
+
+ :param autonomous_data_storage_size_in_tbs:
+ The value to assign to the autonomous_data_storage_size_in_tbs property of this ShardableCloudAutonomousVmClusterSummary.
+ :type autonomous_data_storage_size_in_tbs: float
+
+ :param available_autonomous_data_storage_size_in_tbs:
+ The value to assign to the available_autonomous_data_storage_size_in_tbs property of this ShardableCloudAutonomousVmClusterSummary.
+ :type available_autonomous_data_storage_size_in_tbs: float
+
+ :param cloud_exadata_infrastructure_id:
+ The value to assign to the cloud_exadata_infrastructure_id property of this ShardableCloudAutonomousVmClusterSummary.
+ :type cloud_exadata_infrastructure_id: str
+
+ :param cluster_time_zone:
+ The value to assign to the cluster_time_zone property of this ShardableCloudAutonomousVmClusterSummary.
+ :type cluster_time_zone: str
+
+ :param total_container_databases:
+ The value to assign to the total_container_databases property of this ShardableCloudAutonomousVmClusterSummary.
+ :type total_container_databases: int
+
+ :param subnet_id:
+ The value to assign to the subnet_id property of this ShardableCloudAutonomousVmClusterSummary.
+ :type subnet_id: str
+
+ :param shape:
+ The value to assign to the shape property of this ShardableCloudAutonomousVmClusterSummary.
+ :type shape: str
+
+ :param node_count:
+ The value to assign to the node_count property of this ShardableCloudAutonomousVmClusterSummary.
+ :type node_count: int
+
+ :param license_model:
+ The value to assign to the license_model property of this ShardableCloudAutonomousVmClusterSummary.
+ :type license_model: str
+
+ :param memory_size_in_gbs:
+ The value to assign to the memory_size_in_gbs property of this ShardableCloudAutonomousVmClusterSummary.
+ :type memory_size_in_gbs: int
+
+ :param memory_per_oracle_compute_unit_in_gbs:
+ The value to assign to the memory_per_oracle_compute_unit_in_gbs property of this ShardableCloudAutonomousVmClusterSummary.
+ :type memory_per_oracle_compute_unit_in_gbs: int
+
+ :param cpu_core_count:
+ The value to assign to the cpu_core_count property of this ShardableCloudAutonomousVmClusterSummary.
+ :type cpu_core_count: int
+
+ :param cpu_core_count_per_node:
+ The value to assign to the cpu_core_count_per_node property of this ShardableCloudAutonomousVmClusterSummary.
+ :type cpu_core_count_per_node: int
+
+ :param ocpu_count:
+ The value to assign to the ocpu_count property of this ShardableCloudAutonomousVmClusterSummary.
+ :type ocpu_count: float
+
+ :param reclaimable_cpus:
+ The value to assign to the reclaimable_cpus property of this ShardableCloudAutonomousVmClusterSummary.
+ :type reclaimable_cpus: float
+
+ :param provisionable_autonomous_container_databases:
+ The value to assign to the provisionable_autonomous_container_databases property of this ShardableCloudAutonomousVmClusterSummary.
+ :type provisionable_autonomous_container_databases: int
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this ShardableCloudAutonomousVmClusterSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this ShardableCloudAutonomousVmClusterSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_details': 'str',
+ 'display_name': 'str',
+ 'compute_model': 'str',
+ 'available_container_databases': 'int',
+ 'available_cpus': 'float',
+ 'availability_domain': 'str',
+ 'autonomous_data_storage_size_in_tbs': 'float',
+ 'available_autonomous_data_storage_size_in_tbs': 'float',
+ 'cloud_exadata_infrastructure_id': 'str',
+ 'cluster_time_zone': 'str',
+ 'total_container_databases': 'int',
+ 'subnet_id': 'str',
+ 'shape': 'str',
+ 'node_count': 'int',
+ 'license_model': 'str',
+ 'memory_size_in_gbs': 'int',
+ 'memory_per_oracle_compute_unit_in_gbs': 'int',
+ 'cpu_core_count': 'int',
+ 'cpu_core_count_per_node': 'int',
+ 'ocpu_count': 'float',
+ 'reclaimable_cpus': 'float',
+ 'provisionable_autonomous_container_databases': 'int',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ 'display_name': 'displayName',
+ 'compute_model': 'computeModel',
+ 'available_container_databases': 'availableContainerDatabases',
+ 'available_cpus': 'availableCpus',
+ 'availability_domain': 'availabilityDomain',
+ 'autonomous_data_storage_size_in_tbs': 'autonomousDataStorageSizeInTBs',
+ 'available_autonomous_data_storage_size_in_tbs': 'availableAutonomousDataStorageSizeInTBs',
+ 'cloud_exadata_infrastructure_id': 'cloudExadataInfrastructureId',
+ 'cluster_time_zone': 'clusterTimeZone',
+ 'total_container_databases': 'totalContainerDatabases',
+ 'subnet_id': 'subnetId',
+ 'shape': 'shape',
+ 'node_count': 'nodeCount',
+ 'license_model': 'licenseModel',
+ 'memory_size_in_gbs': 'memorySizeInGBs',
+ 'memory_per_oracle_compute_unit_in_gbs': 'memoryPerOracleComputeUnitInGBs',
+ 'cpu_core_count': 'cpuCoreCount',
+ 'cpu_core_count_per_node': 'cpuCoreCountPerNode',
+ 'ocpu_count': 'ocpuCount',
+ 'reclaimable_cpus': 'reclaimableCpus',
+ 'provisionable_autonomous_container_databases': 'provisionableAutonomousContainerDatabases',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._display_name = None
+ self._compute_model = None
+ self._available_container_databases = None
+ self._available_cpus = None
+ self._availability_domain = None
+ self._autonomous_data_storage_size_in_tbs = None
+ self._available_autonomous_data_storage_size_in_tbs = None
+ self._cloud_exadata_infrastructure_id = None
+ self._cluster_time_zone = None
+ self._total_container_databases = None
+ self._subnet_id = None
+ self._shape = None
+ self._node_count = None
+ self._license_model = None
+ self._memory_size_in_gbs = None
+ self._memory_per_oracle_compute_unit_in_gbs = None
+ self._cpu_core_count = None
+ self._cpu_core_count_per_node = None
+ self._ocpu_count = None
+ self._reclaimable_cpus = None
+ self._provisionable_autonomous_container_databases = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster identifier
+
+
+ :return: The id of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster identifier
+
+
+ :param id: The id of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster compartment id
+
+
+ :return: The compartment_id of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster compartment id
+
+
+ :param compartment_id: The compartment_id of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this ShardableCloudAutonomousVmClusterSummary.
+ Lifecycle states for shardable Cloud autonomous vm cluster.
+
+ Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this ShardableCloudAutonomousVmClusterSummary.
+ Lifecycle states for shardable Cloud autonomous vm cluster.
+
+
+ :param lifecycle_state: The lifecycle_state of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ allowed_values = ["ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE"]
+ 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 ShardableCloudAutonomousVmClusterSummary.
+ Detailed message for the lifecycle state.
+
+
+ :return: The lifecycle_state_details of this ShardableCloudAutonomousVmClusterSummary.
+ :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 ShardableCloudAutonomousVmClusterSummary.
+ Detailed message for the lifecycle state.
+
+
+ :param lifecycle_state_details: The lifecycle_state_details of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._lifecycle_state_details = lifecycle_state_details
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster displayName
+
+
+ :return: The display_name of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster displayName
+
+
+ :param display_name: The display_name of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def compute_model(self):
+ """
+ Gets the compute_model of this ShardableCloudAutonomousVmClusterSummary.
+ The compute model of the Cloud Autonomous VM Cluster.
+
+
+ :return: The compute_model of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._compute_model
+
+ @compute_model.setter
+ def compute_model(self, compute_model):
+ """
+ Sets the compute_model of this ShardableCloudAutonomousVmClusterSummary.
+ The compute model of the Cloud Autonomous VM Cluster.
+
+
+ :param compute_model: The compute_model of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._compute_model = compute_model
+
+ @property
+ def available_container_databases(self):
+ """
+ Gets the available_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ The number of Autonomous Container Databases that can be created with the currently available local storage.
+
+
+ :return: The available_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: int
+ """
+ return self._available_container_databases
+
+ @available_container_databases.setter
+ def available_container_databases(self, available_container_databases):
+ """
+ Sets the available_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ The number of Autonomous Container Databases that can be created with the currently available local storage.
+
+
+ :param available_container_databases: The available_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ :type: int
+ """
+ self._available_container_databases = available_container_databases
+
+ @property
+ def available_cpus(self):
+ """
+ Gets the available_cpus of this ShardableCloudAutonomousVmClusterSummary.
+ CPU cores available for allocation to Autonomous Databases.
+
+
+ :return: The available_cpus of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: float
+ """
+ return self._available_cpus
+
+ @available_cpus.setter
+ def available_cpus(self, available_cpus):
+ """
+ Sets the available_cpus of this ShardableCloudAutonomousVmClusterSummary.
+ CPU cores available for allocation to Autonomous Databases.
+
+
+ :param available_cpus: The available_cpus of this ShardableCloudAutonomousVmClusterSummary.
+ :type: float
+ """
+ self._available_cpus = available_cpus
+
+ @property
+ def availability_domain(self):
+ """
+ Gets the availability_domain of this ShardableCloudAutonomousVmClusterSummary.
+ The name of the availability domain that the cloud Autonomous VM cluster is located in.
+ The format of the availability domain is the same as returned by Cloud Autonomous VM Cluster API.
+
+
+ :return: The availability_domain of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._availability_domain
+
+ @availability_domain.setter
+ def availability_domain(self, availability_domain):
+ """
+ Sets the availability_domain of this ShardableCloudAutonomousVmClusterSummary.
+ The name of the availability domain that the cloud Autonomous VM cluster is located in.
+ The format of the availability domain is the same as returned by Cloud Autonomous VM Cluster API.
+
+
+ :param availability_domain: The availability_domain of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._availability_domain = availability_domain
+
+ @property
+ def autonomous_data_storage_size_in_tbs(self):
+ """
+ Gets the autonomous_data_storage_size_in_tbs of this ShardableCloudAutonomousVmClusterSummary.
+ The data disk group size allocated for Autonomous Databases, in TBs.
+
+
+ :return: The autonomous_data_storage_size_in_tbs of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: float
+ """
+ return self._autonomous_data_storage_size_in_tbs
+
+ @autonomous_data_storage_size_in_tbs.setter
+ def autonomous_data_storage_size_in_tbs(self, autonomous_data_storage_size_in_tbs):
+ """
+ Sets the autonomous_data_storage_size_in_tbs of this ShardableCloudAutonomousVmClusterSummary.
+ The data disk group size allocated for Autonomous Databases, in TBs.
+
+
+ :param autonomous_data_storage_size_in_tbs: The autonomous_data_storage_size_in_tbs of this ShardableCloudAutonomousVmClusterSummary.
+ :type: float
+ """
+ self._autonomous_data_storage_size_in_tbs = autonomous_data_storage_size_in_tbs
+
+ @property
+ def available_autonomous_data_storage_size_in_tbs(self):
+ """
+ Gets the available_autonomous_data_storage_size_in_tbs of this ShardableCloudAutonomousVmClusterSummary.
+ The data disk group size available for Autonomous Databases, in TBs.
+
+
+ :return: The available_autonomous_data_storage_size_in_tbs of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: float
+ """
+ return self._available_autonomous_data_storage_size_in_tbs
+
+ @available_autonomous_data_storage_size_in_tbs.setter
+ def available_autonomous_data_storage_size_in_tbs(self, available_autonomous_data_storage_size_in_tbs):
+ """
+ Sets the available_autonomous_data_storage_size_in_tbs of this ShardableCloudAutonomousVmClusterSummary.
+ The data disk group size available for Autonomous Databases, in TBs.
+
+
+ :param available_autonomous_data_storage_size_in_tbs: The available_autonomous_data_storage_size_in_tbs of this ShardableCloudAutonomousVmClusterSummary.
+ :type: float
+ """
+ self._available_autonomous_data_storage_size_in_tbs = available_autonomous_data_storage_size_in_tbs
+
+ @property
+ def cloud_exadata_infrastructure_id(self):
+ """
+ Gets the cloud_exadata_infrastructure_id of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud Exadata Infrastructure Identifier.
+
+
+ :return: The cloud_exadata_infrastructure_id of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._cloud_exadata_infrastructure_id
+
+ @cloud_exadata_infrastructure_id.setter
+ def cloud_exadata_infrastructure_id(self, cloud_exadata_infrastructure_id):
+ """
+ Sets the cloud_exadata_infrastructure_id of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud Exadata Infrastructure Identifier.
+
+
+ :param cloud_exadata_infrastructure_id: The cloud_exadata_infrastructure_id of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._cloud_exadata_infrastructure_id = cloud_exadata_infrastructure_id
+
+ @property
+ def cluster_time_zone(self):
+ """
+ Gets the cluster_time_zone of this ShardableCloudAutonomousVmClusterSummary.
+ The time zone of the Cloud Autonomous VM Cluster.
+
+
+ :return: The cluster_time_zone of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._cluster_time_zone
+
+ @cluster_time_zone.setter
+ def cluster_time_zone(self, cluster_time_zone):
+ """
+ Sets the cluster_time_zone of this ShardableCloudAutonomousVmClusterSummary.
+ The time zone of the Cloud Autonomous VM Cluster.
+
+
+ :param cluster_time_zone: The cluster_time_zone of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._cluster_time_zone = cluster_time_zone
+
+ @property
+ def total_container_databases(self):
+ """
+ Gets the total_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ The total number of Autonomous Container Databases that can be created with the allocated local storage.
+
+
+ :return: The total_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: int
+ """
+ return self._total_container_databases
+
+ @total_container_databases.setter
+ def total_container_databases(self, total_container_databases):
+ """
+ Sets the total_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ The total number of Autonomous Container Databases that can be created with the allocated local storage.
+
+
+ :param total_container_databases: The total_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ :type: int
+ """
+ self._total_container_databases = total_container_databases
+
+ @property
+ def subnet_id(self):
+ """
+ Gets the subnet_id of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster subnet id
+
+
+ :return: The subnet_id of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._subnet_id
+
+ @subnet_id.setter
+ def subnet_id(self, subnet_id):
+ """
+ Sets the subnet_id of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster subnet id
+
+
+ :param subnet_id: The subnet_id of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._subnet_id = subnet_id
+
+ @property
+ def shape(self):
+ """
+ Gets the shape of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster shape
+
+
+ :return: The shape of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._shape
+
+ @shape.setter
+ def shape(self, shape):
+ """
+ Sets the shape of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster shape
+
+
+ :param shape: The shape of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._shape = shape
+
+ @property
+ def node_count(self):
+ """
+ Gets the node_count of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster node count
+
+
+ :return: The node_count of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: int
+ """
+ return self._node_count
+
+ @node_count.setter
+ def node_count(self, node_count):
+ """
+ Sets the node_count of this ShardableCloudAutonomousVmClusterSummary.
+ Cloud autonomous vmcluster node count
+
+
+ :param node_count: The node_count of this ShardableCloudAutonomousVmClusterSummary.
+ :type: int
+ """
+ self._node_count = node_count
+
+ @property
+ def license_model(self):
+ """
+ Gets the license_model of this ShardableCloudAutonomousVmClusterSummary.
+ The Oracle license model that applies to the Oracle Autonomous Database.
+
+
+ :return: The license_model of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: str
+ """
+ return self._license_model
+
+ @license_model.setter
+ def license_model(self, license_model):
+ """
+ Sets the license_model of this ShardableCloudAutonomousVmClusterSummary.
+ The Oracle license model that applies to the Oracle Autonomous Database.
+
+
+ :param license_model: The license_model of this ShardableCloudAutonomousVmClusterSummary.
+ :type: str
+ """
+ self._license_model = license_model
+
+ @property
+ def memory_size_in_gbs(self):
+ """
+ Gets the memory_size_in_gbs of this ShardableCloudAutonomousVmClusterSummary.
+ The memory allocated in GBs.
+
+
+ :return: The memory_size_in_gbs of this ShardableCloudAutonomousVmClusterSummary.
+ :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 ShardableCloudAutonomousVmClusterSummary.
+ The memory allocated in GBs.
+
+
+ :param memory_size_in_gbs: The memory_size_in_gbs of this ShardableCloudAutonomousVmClusterSummary.
+ :type: int
+ """
+ self._memory_size_in_gbs = memory_size_in_gbs
+
+ @property
+ def memory_per_oracle_compute_unit_in_gbs(self):
+ """
+ Gets the memory_per_oracle_compute_unit_in_gbs of this ShardableCloudAutonomousVmClusterSummary.
+ The amount of memory (in GBs) enabled per OCPU or ECPU.
+
+
+ :return: The memory_per_oracle_compute_unit_in_gbs of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: int
+ """
+ return self._memory_per_oracle_compute_unit_in_gbs
+
+ @memory_per_oracle_compute_unit_in_gbs.setter
+ def memory_per_oracle_compute_unit_in_gbs(self, memory_per_oracle_compute_unit_in_gbs):
+ """
+ Sets the memory_per_oracle_compute_unit_in_gbs of this ShardableCloudAutonomousVmClusterSummary.
+ The amount of memory (in GBs) enabled per OCPU or ECPU.
+
+
+ :param memory_per_oracle_compute_unit_in_gbs: The memory_per_oracle_compute_unit_in_gbs of this ShardableCloudAutonomousVmClusterSummary.
+ :type: int
+ """
+ self._memory_per_oracle_compute_unit_in_gbs = memory_per_oracle_compute_unit_in_gbs
+
+ @property
+ def cpu_core_count(self):
+ """
+ Gets the cpu_core_count of this ShardableCloudAutonomousVmClusterSummary.
+ The number of CPU cores on the cloud Autonomous VM cluster.
+
+
+ :return: The cpu_core_count of this ShardableCloudAutonomousVmClusterSummary.
+ :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 ShardableCloudAutonomousVmClusterSummary.
+ The number of CPU cores on the cloud Autonomous VM cluster.
+
+
+ :param cpu_core_count: The cpu_core_count of this ShardableCloudAutonomousVmClusterSummary.
+ :type: int
+ """
+ self._cpu_core_count = cpu_core_count
+
+ @property
+ def cpu_core_count_per_node(self):
+ """
+ Gets the cpu_core_count_per_node of this ShardableCloudAutonomousVmClusterSummary.
+ The number of CPU cores enabled per VM cluster node.
+
+
+ :return: The cpu_core_count_per_node of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: int
+ """
+ return self._cpu_core_count_per_node
+
+ @cpu_core_count_per_node.setter
+ def cpu_core_count_per_node(self, cpu_core_count_per_node):
+ """
+ Sets the cpu_core_count_per_node of this ShardableCloudAutonomousVmClusterSummary.
+ The number of CPU cores enabled per VM cluster node.
+
+
+ :param cpu_core_count_per_node: The cpu_core_count_per_node of this ShardableCloudAutonomousVmClusterSummary.
+ :type: int
+ """
+ self._cpu_core_count_per_node = cpu_core_count_per_node
+
+ @property
+ def ocpu_count(self):
+ """
+ Gets the ocpu_count of this ShardableCloudAutonomousVmClusterSummary.
+ The number of CPU cores on the cloud Autonomous VM cluster.
+
+
+ :return: The ocpu_count of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: float
+ """
+ return self._ocpu_count
+
+ @ocpu_count.setter
+ def ocpu_count(self, ocpu_count):
+ """
+ Sets the ocpu_count of this ShardableCloudAutonomousVmClusterSummary.
+ The number of CPU cores on the cloud Autonomous VM cluster.
+
+
+ :param ocpu_count: The ocpu_count of this ShardableCloudAutonomousVmClusterSummary.
+ :type: float
+ """
+ self._ocpu_count = ocpu_count
+
+ @property
+ def reclaimable_cpus(self):
+ """
+ Gets the reclaimable_cpus of this ShardableCloudAutonomousVmClusterSummary.
+ The CPUs that continue to be included in the count of CPUs available to the Autonomous Container Database even after one of its Autonomous Database is terminated or scaled down. You can release them to the available CPUs at its parent Autonomous VM Cluster level by restarting the Autonomous Container Database.
+
+
+ :return: The reclaimable_cpus of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: float
+ """
+ return self._reclaimable_cpus
+
+ @reclaimable_cpus.setter
+ def reclaimable_cpus(self, reclaimable_cpus):
+ """
+ Sets the reclaimable_cpus of this ShardableCloudAutonomousVmClusterSummary.
+ The CPUs that continue to be included in the count of CPUs available to the Autonomous Container Database even after one of its Autonomous Database is terminated or scaled down. You can release them to the available CPUs at its parent Autonomous VM Cluster level by restarting the Autonomous Container Database.
+
+
+ :param reclaimable_cpus: The reclaimable_cpus of this ShardableCloudAutonomousVmClusterSummary.
+ :type: float
+ """
+ self._reclaimable_cpus = reclaimable_cpus
+
+ @property
+ def provisionable_autonomous_container_databases(self):
+ """
+ Gets the provisionable_autonomous_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ Number of Autonomous Container Databases that can be created in the Autonomous VM Cluster
+
+
+ :return: The provisionable_autonomous_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ :rtype: int
+ """
+ return self._provisionable_autonomous_container_databases
+
+ @provisionable_autonomous_container_databases.setter
+ def provisionable_autonomous_container_databases(self, provisionable_autonomous_container_databases):
+ """
+ Sets the provisionable_autonomous_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ Number of Autonomous Container Databases that can be created in the Autonomous VM Cluster
+
+
+ :param provisionable_autonomous_container_databases: The provisionable_autonomous_container_databases of this ShardableCloudAutonomousVmClusterSummary.
+ :type: int
+ """
+ self._provisionable_autonomous_container_databases = provisionable_autonomous_container_databases
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this ShardableCloudAutonomousVmClusterSummary.
+ 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 ShardableCloudAutonomousVmClusterSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this ShardableCloudAutonomousVmClusterSummary.
+ 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 ShardableCloudAutonomousVmClusterSummary.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this ShardableCloudAutonomousVmClusterSummary.
+ 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 ShardableCloudAutonomousVmClusterSummary.
+ :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 ShardableCloudAutonomousVmClusterSummary.
+ 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 ShardableCloudAutonomousVmClusterSummary.
+ :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/globally_distributed_database/models/shardable_cloud_autonomous_vm_clusters.py b/src/oci/globally_distributed_database/models/shardable_cloud_autonomous_vm_clusters.py
new file mode 100644
index 0000000000..4da548c50e
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/shardable_cloud_autonomous_vm_clusters.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ShardableCloudAutonomousVmClusters(object):
+ """
+ Collection of shardable cloud autonomous vm clusters.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ShardableCloudAutonomousVmClusters 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 ShardableCloudAutonomousVmClusters.
+ :type items: list[oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusterSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[ShardableCloudAutonomousVmClusterSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this ShardableCloudAutonomousVmClusters.
+ Array of shardable cloud autonomous vm clusters summaries.
+
+
+ :return: The items of this ShardableCloudAutonomousVmClusters.
+ :rtype: list[oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusterSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this ShardableCloudAutonomousVmClusters.
+ Array of shardable cloud autonomous vm clusters summaries.
+
+
+ :param items: The items of this ShardableCloudAutonomousVmClusters.
+ :type: list[oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusterSummary]
+ """
+ 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/globally_distributed_database/models/sharded_database.py b/src/oci/globally_distributed_database/models/sharded_database.py
new file mode 100644
index 0000000000..6cd7025469
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/sharded_database.py
@@ -0,0 +1,461 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ShardedDatabase(object):
+ """
+ Sharded Database resource.
+ """
+
+ #: A constant which can be used with the db_deployment_type property of a ShardedDatabase.
+ #: This constant has a value of "DEDICATED"
+ DB_DEPLOYMENT_TYPE_DEDICATED = "DEDICATED"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardedDatabase.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardedDatabase.
+ #: This constant has a value of "FAILED"
+ LIFECYCLE_STATE_FAILED = "FAILED"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardedDatabase.
+ #: 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 ShardedDatabase.
+ #: This constant has a value of "INACTIVE"
+ LIFECYCLE_STATE_INACTIVE = "INACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardedDatabase.
+ #: This constant has a value of "DELETING"
+ LIFECYCLE_STATE_DELETING = "DELETING"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardedDatabase.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardedDatabase.
+ #: This constant has a value of "UPDATING"
+ LIFECYCLE_STATE_UPDATING = "UPDATING"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardedDatabase.
+ #: This constant has a value of "CREATING"
+ LIFECYCLE_STATE_CREATING = "CREATING"
+
+ #: A constant which can be used with the lifecycle_state property of a ShardedDatabase.
+ #: This constant has a value of "UNAVAILABLE"
+ LIFECYCLE_STATE_UNAVAILABLE = "UNAVAILABLE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ShardedDatabase 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.globally_distributed_database.models.DedicatedShardedDatabase`
+
+ 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 ShardedDatabase.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this ShardedDatabase.
+ :type compartment_id: str
+
+ :param db_deployment_type:
+ The value to assign to the db_deployment_type property of this ShardedDatabase.
+ Allowed values for this property are: "DEDICATED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type db_deployment_type: str
+
+ :param display_name:
+ The value to assign to the display_name property of this ShardedDatabase.
+ :type display_name: str
+
+ :param time_created:
+ The value to assign to the time_created property of this ShardedDatabase.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this ShardedDatabase.
+ :type time_updated: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this ShardedDatabase.
+ Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE", '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 ShardedDatabase.
+ :type lifecycle_state_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this ShardedDatabase.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this ShardedDatabase.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param system_tags:
+ The value to assign to the system_tags property of this ShardedDatabase.
+ :type system_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'db_deployment_type': 'str',
+ 'display_name': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_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',
+ 'compartment_id': 'compartmentId',
+ 'db_deployment_type': 'dbDeploymentType',
+ 'display_name': 'displayName',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags',
+ 'system_tags': 'systemTags'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._db_deployment_type = None
+ self._display_name = None
+ self._time_created = None
+ self._time_updated = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+ self._system_tags = 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['dbDeploymentType']
+
+ if type == 'DEDICATED':
+ return 'DedicatedShardedDatabase'
+ else:
+ return 'ShardedDatabase'
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this ShardedDatabase.
+ Sharded Database identifier
+
+
+ :return: The id of this ShardedDatabase.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this ShardedDatabase.
+ Sharded Database identifier
+
+
+ :param id: The id of this ShardedDatabase.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this ShardedDatabase.
+ Identifier of the compartment in which sharded database exists.
+
+
+ :return: The compartment_id of this ShardedDatabase.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ShardedDatabase.
+ Identifier of the compartment in which sharded database exists.
+
+
+ :param compartment_id: The compartment_id of this ShardedDatabase.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def db_deployment_type(self):
+ """
+ **[Required]** Gets the db_deployment_type of this ShardedDatabase.
+ The database deployment type.
+
+ Allowed values for this property are: "DEDICATED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The db_deployment_type of this ShardedDatabase.
+ :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 ShardedDatabase.
+ The database deployment type.
+
+
+ :param db_deployment_type: The db_deployment_type of this ShardedDatabase.
+ :type: str
+ """
+ allowed_values = ["DEDICATED"]
+ 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 display_name(self):
+ """
+ **[Required]** Gets the display_name of this ShardedDatabase.
+ Oracle sharded database display name.
+
+
+ :return: The display_name of this ShardedDatabase.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this ShardedDatabase.
+ Oracle sharded database display name.
+
+
+ :param display_name: The display_name of this ShardedDatabase.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this ShardedDatabase.
+ The time the the Sharded Database was created. An RFC3339 formatted datetime string
+
+
+ :return: The time_created of this ShardedDatabase.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this ShardedDatabase.
+ The time the the Sharded Database was created. An RFC3339 formatted datetime string
+
+
+ :param time_created: The time_created of this ShardedDatabase.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this ShardedDatabase.
+ The time the Sharded Database was last updated. An RFC3339 formatted datetime string
+
+
+ :return: The time_updated of this ShardedDatabase.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this ShardedDatabase.
+ The time the Sharded Database was last updated. An RFC3339 formatted datetime string
+
+
+ :param time_updated: The time_updated of this ShardedDatabase.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this ShardedDatabase.
+ Lifecycle states for sharded databases.
+
+ Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this ShardedDatabase.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this ShardedDatabase.
+ Lifecycle states for sharded databases.
+
+
+ :param lifecycle_state: The lifecycle_state of this ShardedDatabase.
+ :type: str
+ """
+ allowed_values = ["ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE"]
+ 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):
+ """
+ **[Required]** Gets the lifecycle_state_details of this ShardedDatabase.
+ Detailed message for the lifecycle state.
+
+
+ :return: The lifecycle_state_details of this ShardedDatabase.
+ :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 ShardedDatabase.
+ Detailed message for the lifecycle state.
+
+
+ :param lifecycle_state_details: The lifecycle_state_details of this ShardedDatabase.
+ :type: str
+ """
+ self._lifecycle_state_details = lifecycle_state_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this ShardedDatabase.
+ 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 ShardedDatabase.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this ShardedDatabase.
+ 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 ShardedDatabase.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this ShardedDatabase.
+ 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 ShardedDatabase.
+ :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 ShardedDatabase.
+ 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 ShardedDatabase.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def system_tags(self):
+ """
+ Gets the system_tags of this ShardedDatabase.
+ 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 ShardedDatabase.
+ :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 ShardedDatabase.
+ 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 ShardedDatabase.
+ :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/globally_distributed_database/models/sharded_database_collection.py b/src/oci/globally_distributed_database/models/sharded_database_collection.py
new file mode 100644
index 0000000000..b75b210607
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/sharded_database_collection.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ShardedDatabaseCollection(object):
+ """
+ Collection of sharded databases.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ShardedDatabaseCollection 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 ShardedDatabaseCollection.
+ :type items: list[oci.globally_distributed_database.models.ShardedDatabaseSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[ShardedDatabaseSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this ShardedDatabaseCollection.
+ Array of sharded databases summaries.
+
+
+ :return: The items of this ShardedDatabaseCollection.
+ :rtype: list[oci.globally_distributed_database.models.ShardedDatabaseSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this ShardedDatabaseCollection.
+ Array of sharded databases summaries.
+
+
+ :param items: The items of this ShardedDatabaseCollection.
+ :type: list[oci.globally_distributed_database.models.ShardedDatabaseSummary]
+ """
+ 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/globally_distributed_database/models/sharded_database_summary.py b/src/oci/globally_distributed_database/models/sharded_database_summary.py
new file mode 100644
index 0000000000..a2bab7b944
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/sharded_database_summary.py
@@ -0,0 +1,417 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ShardedDatabaseSummary(object):
+ """
+ Sharded Database resource summary.
+ """
+
+ #: A constant which can be used with the db_deployment_type property of a ShardedDatabaseSummary.
+ #: This constant has a value of "DEDICATED"
+ DB_DEPLOYMENT_TYPE_DEDICATED = "DEDICATED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ShardedDatabaseSummary 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.globally_distributed_database.models.DedicatedShardedDatabaseSummary`
+
+ 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 ShardedDatabaseSummary.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this ShardedDatabaseSummary.
+ :type compartment_id: str
+
+ :param db_deployment_type:
+ The value to assign to the db_deployment_type property of this ShardedDatabaseSummary.
+ Allowed values for this property are: "DEDICATED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type db_deployment_type: str
+
+ :param display_name:
+ The value to assign to the display_name property of this ShardedDatabaseSummary.
+ :type display_name: str
+
+ :param time_created:
+ The value to assign to the time_created property of this ShardedDatabaseSummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this ShardedDatabaseSummary.
+ :type time_updated: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this ShardedDatabaseSummary.
+ :type lifecycle_state: str
+
+ :param lifecycle_state_details:
+ The value to assign to the lifecycle_state_details property of this ShardedDatabaseSummary.
+ :type lifecycle_state_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this ShardedDatabaseSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this ShardedDatabaseSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param system_tags:
+ The value to assign to the system_tags property of this ShardedDatabaseSummary.
+ :type system_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'db_deployment_type': 'str',
+ 'display_name': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_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',
+ 'compartment_id': 'compartmentId',
+ 'db_deployment_type': 'dbDeploymentType',
+ 'display_name': 'displayName',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags',
+ 'system_tags': 'systemTags'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._db_deployment_type = None
+ self._display_name = None
+ self._time_created = None
+ self._time_updated = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+ self._system_tags = 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['dbDeploymentType']
+
+ if type == 'DEDICATED':
+ return 'DedicatedShardedDatabaseSummary'
+ else:
+ return 'ShardedDatabaseSummary'
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this ShardedDatabaseSummary.
+ Sharded Database identifier
+
+
+ :return: The id of this ShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this ShardedDatabaseSummary.
+ Sharded Database identifier
+
+
+ :param id: The id of this ShardedDatabaseSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this ShardedDatabaseSummary.
+ Identifier of the compartment where sharded database exists.
+
+
+ :return: The compartment_id of this ShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ShardedDatabaseSummary.
+ Identifier of the compartment where sharded database exists.
+
+
+ :param compartment_id: The compartment_id of this ShardedDatabaseSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def db_deployment_type(self):
+ """
+ **[Required]** Gets the db_deployment_type of this ShardedDatabaseSummary.
+ The database deployment type.
+
+ Allowed values for this property are: "DEDICATED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The db_deployment_type of this ShardedDatabaseSummary.
+ :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 ShardedDatabaseSummary.
+ The database deployment type.
+
+
+ :param db_deployment_type: The db_deployment_type of this ShardedDatabaseSummary.
+ :type: str
+ """
+ allowed_values = ["DEDICATED"]
+ 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 display_name(self):
+ """
+ **[Required]** Gets the display_name of this ShardedDatabaseSummary.
+ Oracle sharded database display name.
+
+
+ :return: The display_name of this ShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this ShardedDatabaseSummary.
+ Oracle sharded database display name.
+
+
+ :param display_name: The display_name of this ShardedDatabaseSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this ShardedDatabaseSummary.
+ The time the the Sharded Database was created. An RFC3339 formatted datetime string
+
+
+ :return: The time_created of this ShardedDatabaseSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this ShardedDatabaseSummary.
+ The time the the Sharded Database was created. An RFC3339 formatted datetime string
+
+
+ :param time_created: The time_created of this ShardedDatabaseSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this ShardedDatabaseSummary.
+ The time the Sharded Database was last updated. An RFC3339 formatted datetime string
+
+
+ :return: The time_updated of this ShardedDatabaseSummary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this ShardedDatabaseSummary.
+ The time the Sharded Database was last updated. An RFC3339 formatted datetime string
+
+
+ :param time_updated: The time_updated of this ShardedDatabaseSummary.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this ShardedDatabaseSummary.
+ Lifecycle state of sharded database.
+
+
+ :return: The lifecycle_state of this ShardedDatabaseSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this ShardedDatabaseSummary.
+ Lifecycle state of sharded database.
+
+
+ :param lifecycle_state: The lifecycle_state of this ShardedDatabaseSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_state_details(self):
+ """
+ **[Required]** Gets the lifecycle_state_details of this ShardedDatabaseSummary.
+ Detailed message for the lifecycle state.
+
+
+ :return: The lifecycle_state_details of this ShardedDatabaseSummary.
+ :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 ShardedDatabaseSummary.
+ Detailed message for the lifecycle state.
+
+
+ :param lifecycle_state_details: The lifecycle_state_details of this ShardedDatabaseSummary.
+ :type: str
+ """
+ self._lifecycle_state_details = lifecycle_state_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this ShardedDatabaseSummary.
+ 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 ShardedDatabaseSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this ShardedDatabaseSummary.
+ 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 ShardedDatabaseSummary.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this ShardedDatabaseSummary.
+ 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 ShardedDatabaseSummary.
+ :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 ShardedDatabaseSummary.
+ 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 ShardedDatabaseSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def system_tags(self):
+ """
+ Gets the system_tags of this ShardedDatabaseSummary.
+ 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 ShardedDatabaseSummary.
+ :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 ShardedDatabaseSummary.
+ 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 ShardedDatabaseSummary.
+ :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/globally_distributed_database/models/update_private_endpoint_details.py b/src/oci/globally_distributed_database/models/update_private_endpoint_details.py
new file mode 100644
index 0000000000..9a0bb9c30c
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/update_private_endpoint_details.py
@@ -0,0 +1,200 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdatePrivateEndpointDetails(object):
+ """
+ The details of private endpoint to be updated.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdatePrivateEndpointDetails 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 UpdatePrivateEndpointDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdatePrivateEndpointDetails.
+ :type description: str
+
+ :param nsg_ids:
+ The value to assign to the nsg_ids property of this UpdatePrivateEndpointDetails.
+ :type nsg_ids: list[str]
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this UpdatePrivateEndpointDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this UpdatePrivateEndpointDetails.
+ :type defined_tags: 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))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'nsg_ids': 'nsgIds',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._nsg_ids = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdatePrivateEndpointDetails.
+ Display name for PrivateEndpoint
+
+
+ :return: The display_name of this UpdatePrivateEndpointDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdatePrivateEndpointDetails.
+ Display name for PrivateEndpoint
+
+
+ :param display_name: The display_name of this UpdatePrivateEndpointDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdatePrivateEndpointDetails.
+ PrivateEndpoint description.
+
+
+ :return: The description of this UpdatePrivateEndpointDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdatePrivateEndpointDetails.
+ PrivateEndpoint description.
+
+
+ :param description: The description of this UpdatePrivateEndpointDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def nsg_ids(self):
+ """
+ Gets the nsg_ids of this UpdatePrivateEndpointDetails.
+ The OCIDs of the network security groups that the private endpoint belongs to.
+
+
+ :return: The nsg_ids of this UpdatePrivateEndpointDetails.
+ :rtype: list[str]
+ """
+ return self._nsg_ids
+
+ @nsg_ids.setter
+ def nsg_ids(self, nsg_ids):
+ """
+ Sets the nsg_ids of this UpdatePrivateEndpointDetails.
+ The OCIDs of the network security groups that the private endpoint belongs to.
+
+
+ :param nsg_ids: The nsg_ids of this UpdatePrivateEndpointDetails.
+ :type: list[str]
+ """
+ self._nsg_ids = nsg_ids
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this UpdatePrivateEndpointDetails.
+ 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 UpdatePrivateEndpointDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this UpdatePrivateEndpointDetails.
+ 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 UpdatePrivateEndpointDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this UpdatePrivateEndpointDetails.
+ 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 UpdatePrivateEndpointDetails.
+ :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 UpdatePrivateEndpointDetails.
+ 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 UpdatePrivateEndpointDetails.
+ :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/globally_distributed_database/models/update_sharded_database_details.py b/src/oci/globally_distributed_database/models/update_sharded_database_details.py
new file mode 100644
index 0000000000..8119c1776a
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/update_sharded_database_details.py
@@ -0,0 +1,138 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateShardedDatabaseDetails(object):
+ """
+ The details of sharded database to be updated.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateShardedDatabaseDetails 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 UpdateShardedDatabaseDetails.
+ :type display_name: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this UpdateShardedDatabaseDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this UpdateShardedDatabaseDetails.
+ :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 UpdateShardedDatabaseDetails.
+ Display name of the sharded database.
+
+
+ :return: The display_name of this UpdateShardedDatabaseDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateShardedDatabaseDetails.
+ Display name of the sharded database.
+
+
+ :param display_name: The display_name of this UpdateShardedDatabaseDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this UpdateShardedDatabaseDetails.
+ 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 UpdateShardedDatabaseDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this UpdateShardedDatabaseDetails.
+ 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 UpdateShardedDatabaseDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this UpdateShardedDatabaseDetails.
+ 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 UpdateShardedDatabaseDetails.
+ :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 UpdateShardedDatabaseDetails.
+ 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 UpdateShardedDatabaseDetails.
+ :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/globally_distributed_database/models/upload_signed_certificate_and_generate_wallet_details.py b/src/oci/globally_distributed_database/models/upload_signed_certificate_and_generate_wallet_details.py
new file mode 100644
index 0000000000..065d9d372d
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/upload_signed_certificate_and_generate_wallet_details.py
@@ -0,0 +1,73 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UploadSignedCertificateAndGenerateWalletDetails(object):
+ """
+ Details of the request to upload the CA signed certificates to GSMs and generate wallets for
+ GSMs of the sharded database.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UploadSignedCertificateAndGenerateWalletDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param ca_signed_certificate:
+ The value to assign to the ca_signed_certificate property of this UploadSignedCertificateAndGenerateWalletDetails.
+ :type ca_signed_certificate: str
+
+ """
+ self.swagger_types = {
+ 'ca_signed_certificate': 'str'
+ }
+
+ self.attribute_map = {
+ 'ca_signed_certificate': 'caSignedCertificate'
+ }
+
+ self._ca_signed_certificate = None
+
+ @property
+ def ca_signed_certificate(self):
+ """
+ **[Required]** Gets the ca_signed_certificate of this UploadSignedCertificateAndGenerateWalletDetails.
+ The CA signed certificate key..
+
+
+ :return: The ca_signed_certificate of this UploadSignedCertificateAndGenerateWalletDetails.
+ :rtype: str
+ """
+ return self._ca_signed_certificate
+
+ @ca_signed_certificate.setter
+ def ca_signed_certificate(self, ca_signed_certificate):
+ """
+ Sets the ca_signed_certificate of this UploadSignedCertificateAndGenerateWalletDetails.
+ The CA signed certificate key..
+
+
+ :param ca_signed_certificate: The ca_signed_certificate of this UploadSignedCertificateAndGenerateWalletDetails.
+ :type: str
+ """
+ self._ca_signed_certificate = ca_signed_certificate
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/globally_distributed_database/models/work_request.py b/src/oci/globally_distributed_database/models/work_request.py
new file mode 100644
index 0000000000..ce6823a6e5
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/work_request.py
@@ -0,0 +1,458 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_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_SHARDED_DATABASE"
+ OPERATION_TYPE_CREATE_SHARDED_DATABASE = "CREATE_SHARDED_DATABASE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "DELETE_SHARDED_DATABASE"
+ OPERATION_TYPE_DELETE_SHARDED_DATABASE = "DELETE_SHARDED_DATABASE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "UPDATE_SHARDED_DATABASE"
+ OPERATION_TYPE_UPDATE_SHARDED_DATABASE = "UPDATE_SHARDED_DATABASE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "CONFIGURE_SHARDED_DATABASE_GSMS"
+ OPERATION_TYPE_CONFIGURE_SHARDED_DATABASE_GSMS = "CONFIGURE_SHARDED_DATABASE_GSMS"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "START_SHARDED_DATABASE"
+ OPERATION_TYPE_START_SHARDED_DATABASE = "START_SHARDED_DATABASE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "STOP_SHARDED_DATABASE"
+ OPERATION_TYPE_STOP_SHARDED_DATABASE = "STOP_SHARDED_DATABASE"
+
+ #: 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 "CHANGE_SHARDED_DB_COMPARTMENT"
+ OPERATION_TYPE_CHANGE_SHARDED_DB_COMPARTMENT = "CHANGE_SHARDED_DB_COMPARTMENT"
+
+ #: 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 "UPDATE_PRIVATE_ENDPOINT"
+ OPERATION_TYPE_UPDATE_PRIVATE_ENDPOINT = "UPDATE_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 "INSERT_SHARDS"
+ OPERATION_TYPE_INSERT_SHARDS = "INSERT_SHARDS"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "REMOVE_SHARDS"
+ OPERATION_TYPE_REMOVE_SHARDS = "REMOVE_SHARDS"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "MERGE_CATALOG_SHARDS"
+ OPERATION_TYPE_MERGE_CATALOG_SHARDS = "MERGE_CATALOG_SHARDS"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET"
+ OPERATION_TYPE_UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET = "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "GENERATE_GSM_CERT_SIGNING_REQ"
+ OPERATION_TYPE_GENERATE_GSM_CERT_SIGNING_REQ = "GENERATE_GSM_CERT_SIGNING_REQ"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "CONFIGURE_SHARDING"
+ OPERATION_TYPE_CONFIGURE_SHARDING = "CONFIGURE_SHARDING"
+
+ #: 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"
+
+ 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_SHARDED_DATABASE", "DELETE_SHARDED_DATABASE", "UPDATE_SHARDED_DATABASE", "CONFIGURE_SHARDED_DATABASE_GSMS", "START_SHARDED_DATABASE", "STOP_SHARDED_DATABASE", "VALIDATE_NETWORK", "CHANGE_SHARDED_DB_COMPARTMENT", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "INSERT_SHARDS", "REMOVE_SHARDS", "MERGE_CATALOG_SHARDS", "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET", "GENERATE_GSM_CERT_SIGNING_REQ", "CONFIGURE_SHARDING", '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", '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.globally_distributed_database.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_SHARDED_DATABASE", "DELETE_SHARDED_DATABASE", "UPDATE_SHARDED_DATABASE", "CONFIGURE_SHARDED_DATABASE_GSMS", "START_SHARDED_DATABASE", "STOP_SHARDED_DATABASE", "VALIDATE_NETWORK", "CHANGE_SHARDED_DB_COMPARTMENT", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "INSERT_SHARDS", "REMOVE_SHARDS", "MERGE_CATALOG_SHARDS", "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET", "GENERATE_GSM_CERT_SIGNING_REQ", "CONFIGURE_SHARDING", '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_SHARDED_DATABASE", "DELETE_SHARDED_DATABASE", "UPDATE_SHARDED_DATABASE", "CONFIGURE_SHARDED_DATABASE_GSMS", "START_SHARDED_DATABASE", "STOP_SHARDED_DATABASE", "VALIDATE_NETWORK", "CHANGE_SHARDED_DB_COMPARTMENT", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "INSERT_SHARDS", "REMOVE_SHARDS", "MERGE_CATALOG_SHARDS", "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET", "GENERATE_GSM_CERT_SIGNING_REQ", "CONFIGURE_SHARDING"]
+ 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", '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"]
+ 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.globally_distributed_database.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.globally_distributed_database.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/globally_distributed_database/models/work_request_error.py b/src/oci/globally_distributed_database/models/work_request_error.py
new file mode 100644
index 0000000000..d5f0146d93
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/work_request_error.py
@@ -0,0 +1,136 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_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.cloud.oracle.com/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.cloud.oracle.com/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/globally_distributed_database/models/work_request_error_collection.py b/src/oci/globally_distributed_database/models/work_request_error_collection.py
new file mode 100644
index 0000000000..948ae06c97
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/work_request_error_collection.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_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.globally_distributed_database.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.globally_distributed_database.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.globally_distributed_database.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/globally_distributed_database/models/work_request_log_entry.py b/src/oci/globally_distributed_database/models/work_request_log_entry.py
new file mode 100644
index 0000000000..ba5f9c98e0
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/work_request_log_entry.py
@@ -0,0 +1,103 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_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/globally_distributed_database/models/work_request_log_entry_collection.py b/src/oci/globally_distributed_database/models/work_request_log_entry_collection.py
new file mode 100644
index 0000000000..1a812161a7
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/work_request_log_entry_collection.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_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.globally_distributed_database.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.globally_distributed_database.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.globally_distributed_database.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/globally_distributed_database/models/work_request_resource.py b/src/oci/globally_distributed_database/models/work_request_resource.py
new file mode 100644
index 0000000000..dcc5435f0e
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/work_request_resource.py
@@ -0,0 +1,234 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_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/globally_distributed_database/models/work_request_summary.py b/src/oci/globally_distributed_database/models/work_request_summary.py
new file mode 100644
index 0000000000..e73a3e1d39
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/work_request_summary.py
@@ -0,0 +1,458 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_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_SHARDED_DATABASE"
+ OPERATION_TYPE_CREATE_SHARDED_DATABASE = "CREATE_SHARDED_DATABASE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "DELETE_SHARDED_DATABASE"
+ OPERATION_TYPE_DELETE_SHARDED_DATABASE = "DELETE_SHARDED_DATABASE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "UPDATE_SHARDED_DATABASE"
+ OPERATION_TYPE_UPDATE_SHARDED_DATABASE = "UPDATE_SHARDED_DATABASE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "CONFIGURE_SHARDED_DATABASE_GSMS"
+ OPERATION_TYPE_CONFIGURE_SHARDED_DATABASE_GSMS = "CONFIGURE_SHARDED_DATABASE_GSMS"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "START_SHARDED_DATABASE"
+ OPERATION_TYPE_START_SHARDED_DATABASE = "START_SHARDED_DATABASE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "STOP_SHARDED_DATABASE"
+ OPERATION_TYPE_STOP_SHARDED_DATABASE = "STOP_SHARDED_DATABASE"
+
+ #: 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 "CHANGE_SHARDED_DB_COMPARTMENT"
+ OPERATION_TYPE_CHANGE_SHARDED_DB_COMPARTMENT = "CHANGE_SHARDED_DB_COMPARTMENT"
+
+ #: 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 "UPDATE_PRIVATE_ENDPOINT"
+ OPERATION_TYPE_UPDATE_PRIVATE_ENDPOINT = "UPDATE_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 "INSERT_SHARDS"
+ OPERATION_TYPE_INSERT_SHARDS = "INSERT_SHARDS"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "REMOVE_SHARDS"
+ OPERATION_TYPE_REMOVE_SHARDS = "REMOVE_SHARDS"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "MERGE_CATALOG_SHARDS"
+ OPERATION_TYPE_MERGE_CATALOG_SHARDS = "MERGE_CATALOG_SHARDS"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET"
+ OPERATION_TYPE_UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET = "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "GENERATE_GSM_CERT_SIGNING_REQ"
+ OPERATION_TYPE_GENERATE_GSM_CERT_SIGNING_REQ = "GENERATE_GSM_CERT_SIGNING_REQ"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "CONFIGURE_SHARDING"
+ OPERATION_TYPE_CONFIGURE_SHARDING = "CONFIGURE_SHARDING"
+
+ #: 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"
+
+ 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_SHARDED_DATABASE", "DELETE_SHARDED_DATABASE", "UPDATE_SHARDED_DATABASE", "CONFIGURE_SHARDED_DATABASE_GSMS", "START_SHARDED_DATABASE", "STOP_SHARDED_DATABASE", "VALIDATE_NETWORK", "CHANGE_SHARDED_DB_COMPARTMENT", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "INSERT_SHARDS", "REMOVE_SHARDS", "MERGE_CATALOG_SHARDS", "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET", "GENERATE_GSM_CERT_SIGNING_REQ", "CONFIGURE_SHARDING", '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", '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.globally_distributed_database.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_SHARDED_DATABASE", "DELETE_SHARDED_DATABASE", "UPDATE_SHARDED_DATABASE", "CONFIGURE_SHARDED_DATABASE_GSMS", "START_SHARDED_DATABASE", "STOP_SHARDED_DATABASE", "VALIDATE_NETWORK", "CHANGE_SHARDED_DB_COMPARTMENT", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "INSERT_SHARDS", "REMOVE_SHARDS", "MERGE_CATALOG_SHARDS", "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET", "GENERATE_GSM_CERT_SIGNING_REQ", "CONFIGURE_SHARDING", '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_SHARDED_DATABASE", "DELETE_SHARDED_DATABASE", "UPDATE_SHARDED_DATABASE", "CONFIGURE_SHARDED_DATABASE_GSMS", "START_SHARDED_DATABASE", "STOP_SHARDED_DATABASE", "VALIDATE_NETWORK", "CHANGE_SHARDED_DB_COMPARTMENT", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "INSERT_SHARDS", "REMOVE_SHARDS", "MERGE_CATALOG_SHARDS", "UPLOAD_SIGNED_CERT_AND_GENERATE_WALLET", "GENERATE_GSM_CERT_SIGNING_REQ", "CONFIGURE_SHARDING"]
+ 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", '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"]
+ 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.globally_distributed_database.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.globally_distributed_database.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/globally_distributed_database/models/work_request_summary_collection.py b/src/oci/globally_distributed_database/models/work_request_summary_collection.py
new file mode 100644
index 0000000000..80f579bdd1
--- /dev/null
+++ b/src/oci/globally_distributed_database/models/work_request_summary_collection.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+
+from oci.util import formatted_flat_dict, NONE_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.globally_distributed_database.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.globally_distributed_database.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.globally_distributed_database.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/globally_distributed_database/sharded_database_service_client.py b/src/oci/globally_distributed_database/sharded_database_service_client.py
new file mode 100644
index 0000000000..353430af61
--- /dev/null
+++ b/src/oci/globally_distributed_database/sharded_database_service_client.py
@@ -0,0 +1,3599 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+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 InvalidAlloyConfig
+from oci.alloy import OCI_SDK_ENABLED_SERVICES_SET
+from .models import globally_distributed_database_type_mapping
+missing = Sentinel("Missing")
+
+
+class ShardedDatabaseServiceClient(object):
+ """
+ Use the Globally Distributed Database service APIs to create and manage 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.
+ """
+ if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("globally_distributed_database"):
+ raise InvalidAlloyConfig("The Alloy configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local alloy-config 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': '/20230301',
+ 'service_endpoint_template': 'https://globaldb.{region}.oci.{secondLevelDomain}',
+ 'service_endpoint_template_per_realm': { }, # noqa: E201 E202
+ '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')
+ }
+ 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')
+ self.base_client = BaseClient("sharded_database_service", config, signer, globally_distributed_database_type_mapping, **base_client_init_kwargs)
+ self.retry_strategy = kwargs.get('retry_strategy')
+ self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback')
+
+ def change_private_endpoint_compartment(self, change_private_endpoint_compartment_details, private_endpoint_id, **kwargs):
+ """
+ Move the private endpoint to the specified compartment.
+
+
+ :param oci.globally_distributed_database.models.ChangePrivateEndpointCompartmentDetails change_private_endpoint_compartment_details: (required)
+ Request to move the private endpoint to a different compartment.
+
+ :param str private_endpoint_id: (required)
+ Oracle Sharded 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
+
+ :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_private_endpoint_compartment API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['privateEndpointId']
+ resource_path = "/privateEndpoints/{privateEndpointId}/actions/changeCompartment"
+ method = "POST"
+ operation_name = "change_private_endpoint_compartment"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_private_endpoint_compartment got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "privateEndpointId": 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_private_endpoint_compartment_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_private_endpoint_compartment_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def change_sharded_database_compartment(self, change_sharded_database_compartment_details, sharded_database_id, **kwargs):
+ """
+ Move the sharded database database and its dependent resources to the specified compartment.
+
+
+ :param oci.globally_distributed_database.models.ChangeShardedDatabaseCompartmentDetails change_sharded_database_compartment_details: (required)
+ Request to move the sharded database to a different compartment.
+
+ :param str sharded_database_id: (required)
+ Sharded 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
+
+ :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_sharded_database_compartment API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/changeCompartment"
+ method = "POST"
+ operation_name = "change_sharded_database_compartment"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_sharded_database_compartment got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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_sharded_database_compartment_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_sharded_database_compartment_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def configure_sharded_database_gsms(self, configure_sharded_database_gsms_details, sharded_database_id, **kwargs):
+ """
+ Configure new Global Service Manager(GSM aka shard manager) instances for the sharded database. Specify the names
+ of old GSM instances that need to be replaced via parameter oldGsmNames in the request payload. Also specify
+ whether rotated GSM instances shall be provisioned with latest image of GSM software or the image used by
+ existing GSM instances shall be used.
+
+
+ :param oci.globally_distributed_database.models.ConfigureShardedDatabaseGsmsDetails configure_sharded_database_gsms_details: (required)
+ Details to configure the new GSM instances for the sharded database.
+
+ :param str sharded_database_id: (required)
+ Sharded 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
+
+ :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_sharded_database_gsms API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/configureGsms"
+ method = "POST"
+ operation_name = "configure_sharded_database_gsms"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_sharded_database_gsms got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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_sharded_database_gsms_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_sharded_database_gsms_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def configure_sharding(self, sharded_database_id, **kwargs):
+ """
+ Once all components of sharded database are provisioned, and signed GSM certificates are successfully uploaded, this
+ api shall be invoked to configure sharding on the sharded database. Note that this 'ConfigureSharding' API also needs to be
+ invoked after successfully adding a new shard to the sharded 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 sharded database.
+
+
+ :param str sharded_database_id: (required)
+ Sharded 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
+
+ :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_sharding API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/configureSharding"
+ method = "POST"
+ operation_name = "configure_sharding"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_sharding got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def create_private_endpoint(self, create_private_endpoint_details, **kwargs):
+ """
+ Creates a PrivateEndpoint.
+
+
+ :param oci.globally_distributed_database.models.CreatePrivateEndpointDetails create_private_endpoint_details: (required)
+ Details of PrivateEndpoint 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.PrivateEndpoint`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use create_private_endpoint API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = []
+ resource_path = "/privateEndpoints"
+ method = "POST"
+ operation_name = "create_private_endpoint"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_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_private_endpoint_details,
+ response_type="PrivateEndpoint",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_private_endpoint_details,
+ response_type="PrivateEndpoint",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def create_sharded_database(self, create_sharded_database_details, **kwargs):
+ """
+ Creates a Sharded Database.
+
+
+ :param oci.globally_distributed_database.models.CreateShardedDatabaseDetails create_sharded_database_details: (required)
+ Details of Sharded 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.ShardedDatabase`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use create_sharded_database API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = []
+ resource_path = "/shardedDatabases"
+ method = "POST"
+ operation_name = "create_sharded_database"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_sharded_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_sharded_database_details,
+ response_type="ShardedDatabase",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_sharded_database_details,
+ response_type="ShardedDatabase",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def delete_private_endpoint(self, private_endpoint_id, **kwargs):
+ """
+ Delete the given private endpoint.
+
+
+ :param str private_endpoint_id: (required)
+ Oracle Sharded 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
+
+ :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_private_endpoint API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['privateEndpointId']
+ resource_path = "/privateEndpoints/{privateEndpointId}"
+ method = "DELETE"
+ operation_name = "delete_private_endpoint"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_private_endpoint got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "privateEndpointId": 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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def delete_sharded_database(self, sharded_database_id, **kwargs):
+ """
+ Terminate the given sharded databases.
+
+
+ :param str sharded_database_id: (required)
+ Sharded 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
+
+ :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_sharded_database API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}"
+ method = "DELETE"
+ operation_name = "delete_sharded_database"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_sharded_database got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def download_gsm_certificate_signing_request(self, sharded_database_id, **kwargs):
+ """
+ Generate the common certificate signing request for GSMs. Download the .csr file from
+ API response. Users can use this .csr file to generate the CA signed certificate, and as a next step
+ use 'uploadSignedCertificateAndGenerateWallet' API to upload the CA signed certificate to GSM, and
+ generate wallets for the GSM instances of the sharded database.
+
+
+ :param str sharded_database_id: (required)
+ Sharded 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
+
+ :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_gsm_certificate_signing_request API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/downloadGsmCertificateSigningRequest"
+ method = "POST"
+ operation_name = "download_gsm_certificate_signing_request"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"download_gsm_certificate_signing_request got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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,
+ response_type="stream",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def fetch_connection_string(self, sharded_database_id, **kwargs):
+ """
+ Gets the Sharded Database Connection Strings.
+
+
+ :param str sharded_database_id: (required)
+ Sharded 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.ConnectionString`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use fetch_connection_string API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/getConnectionString"
+ method = "POST"
+ operation_name = "fetch_connection_string"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"fetch_connection_string got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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,
+ response_type="ConnectionString",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="ConnectionString",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def fetch_shardable_cloud_autonomous_vm_clusters(self, fetch_shardable_cloud_autonomous_vm_clusters_details, **kwargs):
+ """
+ List of cloudAutonomousVMClusters for the given tenancy, that can be sharded.
+
+
+ :param oci.globally_distributed_database.models.FetchShardableCloudAutonomousVmClustersDetails fetch_shardable_cloud_autonomous_vm_clusters_details: (required)
+ Request payload to get sharded cloud autonomous vm clusters.
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.ShardableCloudAutonomousVmClusters`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use fetch_shardable_cloud_autonomous_vm_clusters API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = []
+ resource_path = "/shardedDatabases/actions/listShardableCloudAutonomousVmClusters"
+ method = "POST"
+ operation_name = "fetch_shardable_cloud_autonomous_vm_clusters"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"fetch_shardable_cloud_autonomous_vm_clusters 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=fetch_shardable_cloud_autonomous_vm_clusters_details,
+ response_type="ShardableCloudAutonomousVmClusters",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=fetch_shardable_cloud_autonomous_vm_clusters_details,
+ response_type="ShardableCloudAutonomousVmClusters",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def generate_gsm_certificate_signing_request(self, sharded_database_id, **kwargs):
+ """
+ Generate the certificate signing request for GSM instances of the sharded database. Once certificate signing
+ request is generated, then customers can download the certificate signing request using
+ 'downloadGsmCertificateSigningRequest' api call.
+
+
+ :param str sharded_database_id: (required)
+ Sharded 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
+
+ :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 generate_gsm_certificate_signing_request API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/generateGsmCertificateSigningRequest"
+ method = "POST"
+ operation_name = "generate_gsm_certificate_signing_request"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_gsm_certificate_signing_request got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def generate_wallet(self, sharded_database_id, generate_wallet_details, **kwargs):
+ """
+ Generate the wallet associated with sharded database.
+
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param oci.globally_distributed_database.models.GenerateWalletDetails generate_wallet_details: (required)
+ Details for generating sharded 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
+
+ :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_wallet API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/generateWallet"
+ method = "POST"
+ operation_name = "generate_wallet"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_wallet got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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_wallet_details,
+ response_type="stream",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_wallet_details,
+ response_type="stream",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def get_private_endpoint(self, private_endpoint_id, **kwargs):
+ """
+ Get the PrivateEndpoint resource.
+
+
+ :param str private_endpoint_id: (required)
+ Oracle Sharded Database PrivateEndpoint 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.PrivateEndpoint`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use get_private_endpoint API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['privateEndpointId']
+ resource_path = "/privateEndpoints/{privateEndpointId}"
+ method = "GET"
+ operation_name = "get_private_endpoint"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_private_endpoint got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "privateEndpointId": 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)
+ }
+ 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="PrivateEndpoint",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="PrivateEndpoint",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def get_sharded_database(self, sharded_database_id, **kwargs):
+ """
+ Gets the details of the Sharded database identified by given id.
+
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param str metadata: (optional)
+ Comma separated names of argument corresponding to which metadata need to be retrived, namely VM_CLUSTER_INFO, ADDITIONAL_RESOURCE_INFO.
+ An example is metadata=VM_CLUSTER_INFO,ADDITIONAL_RESOURCE_INFO.
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.ShardedDatabase`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use get_sharded_database API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}"
+ method = "GET"
+ operation_name = "get_sharded_database"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "metadata",
+ "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_sharded_database got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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",
+ "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="ShardedDatabase",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="ShardedDatabase",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.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",
+ "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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_private_endpoints(self, compartment_id, **kwargs):
+ """
+ List of PrivateEndpoints.
+
+
+ :param str compartment_id: (required)
+ The ID of the compartment in which to list resources.
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.PrivateEndpointCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_private_endpoints API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['compartmentId']
+ resource_path = "/privateEndpoints"
+ method = "GET"
+ operation_name = "list_private_endpoints"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "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_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,
+ "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="PrivateEndpointCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="PrivateEndpointCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_sharded_databases(self, compartment_id, **kwargs):
+ """
+ List of Sharded databases.
+
+
+ :param str compartment_id: (required)
+ The ID of the compartment in which to list resources.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources their lifecycleState matches the given lifecycleState.
+
+ Allowed values are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", "UNAVAILABLE"
+
+ :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 sharded databases 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.ShardedDatabaseCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_sharded_databases API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['compartmentId']
+ resource_path = "/shardedDatabases"
+ method = "GET"
+ operation_name = "list_sharded_databases"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "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_sharded_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", "UNAVAILABLE"]
+ 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,
+ "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="ShardedDatabaseCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="ShardedDatabaseCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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 timeAccepted is descending.
+
+ Allowed values are: "timeAccepted"
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.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",
+ "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 = ["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 }"
+ )
+
+ 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'),
+ 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'),
+ 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 timeAccepted is descending.
+
+ Allowed values are: "timeAccepted"
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.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",
+ "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 = ["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 }"
+ )
+
+ 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'),
+ 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'),
+ 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"
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.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 = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"]
+ 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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def patch_sharded_database(self, sharded_database_id, patch_sharded_database_details, **kwargs):
+ """
+ Patch operation to add, remove or update shards to the sharded 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 sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param oci.globally_distributed_database.models.PatchShardedDatabaseDetails patch_sharded_database_details: (required)
+ The payload containing instructions to patch the sharded 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_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
+
+ :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_sharded_database API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}"
+ method = "PATCH"
+ operation_name = "patch_sharded_database"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"patch_sharded_database got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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)
+ }
+ 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=patch_sharded_database_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_sharded_database_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def prevalidate_sharded_database(self, compartment_id, prevalidate_sharded_database_details, **kwargs):
+ """
+ Sharded database pre-validation request.
+
+
+ :param str compartment_id: (required)
+ The ID of the compartment in which to list resources.
+
+ :param oci.globally_distributed_database.models.PrevalidateShardedDatabaseDetails prevalidate_sharded_database_details: (required)
+ Request to pre-validate sharded database operation like CREATE, PATCH payload before executing them.
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.PrevalidateShardedDatabaseResult`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use prevalidate_sharded_database API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['compartmentId']
+ resource_path = "/shardedDatabases/actions/prevalidate"
+ method = "POST"
+ operation_name = "prevalidate_sharded_database"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"prevalidate_sharded_database 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-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=prevalidate_sharded_database_details,
+ response_type="PrevalidateShardedDatabaseResult",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=prevalidate_sharded_database_details,
+ response_type="PrevalidateShardedDatabaseResult",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def start_sharded_database(self, sharded_database_id, **kwargs):
+ """
+ Start the shards, catalog and GSMs of Sharded Database.
+
+
+ :param str sharded_database_id: (required)
+ Sharded 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
+
+ :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_sharded_database API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/startDatabase"
+ method = "POST"
+ operation_name = "start_sharded_database"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_sharded_database got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def stop_sharded_database(self, sharded_database_id, **kwargs):
+ """
+ Stop the shards, catalog and GSM instances for the sharded database.
+
+
+ :param str sharded_database_id: (required)
+ Sharded 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
+
+ :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_sharded_database API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/stopDatabase"
+ method = "POST"
+ operation_name = "stop_sharded_database"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_sharded_database got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def update_private_endpoint(self, private_endpoint_id, update_private_endpoint_details, **kwargs):
+ """
+ Updates the configuration of privateendpoint.
+
+
+ :param str private_endpoint_id: (required)
+ Oracle Sharded Database PrivateEndpoint identifier
+
+ :param oci.globally_distributed_database.models.UpdatePrivateEndpointDetails update_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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.PrivateEndpoint`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use update_private_endpoint API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['privateEndpointId']
+ resource_path = "/privateEndpoints/{privateEndpointId}"
+ method = "PUT"
+ operation_name = "update_private_endpoint"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_private_endpoint got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "privateEndpointId": 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_private_endpoint_details,
+ response_type="PrivateEndpoint",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_private_endpoint_details,
+ response_type="PrivateEndpoint",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def update_sharded_database(self, sharded_database_id, update_sharded_database_details, **kwargs):
+ """
+ Updates the configuration of sharded database.
+
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param oci.globally_distributed_database.models.UpdateShardedDatabaseDetails update_sharded_database_details: (required)
+ The configuration of Sharded 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.globally_distributed_database.models.ShardedDatabase`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use update_sharded_database API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}"
+ method = "PUT"
+ operation_name = "update_sharded_database"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_sharded_database got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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_sharded_database_details,
+ response_type="ShardedDatabase",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_sharded_database_details,
+ response_type="ShardedDatabase",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def upload_signed_certificate_and_generate_wallet(self, sharded_database_id, upload_signed_certificate_and_generate_wallet_details, **kwargs):
+ """
+ Upload the CA signed certificate to the GSM instances and generate wallets for GSM instances of the
+ sharded database. Customer shall provide the CA signed certificate key details by adding the certificate
+ in request body.
+
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param oci.globally_distributed_database.models.UploadSignedCertificateAndGenerateWalletDetails upload_signed_certificate_and_generate_wallet_details: (required)
+ Details required to upload the CA signed certificates to GSM instances of sharded database and generate
+ the wallets.
+
+ :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
+
+ :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 upload_signed_certificate_and_generate_wallet API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/uploadSignedCertificateAndGenerateWallet"
+ method = "POST"
+ operation_name = "upload_signed_certificate_and_generate_wallet"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"upload_signed_certificate_and_generate_wallet got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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=upload_signed_certificate_and_generate_wallet_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=upload_signed_certificate_and_generate_wallet_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def validate_network(self, sharded_database_id, **kwargs):
+ """
+ Validate the network connectivity between components of sharded database.
+
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param bool is_surrogate: (optional)
+ Determines the surrogates check. Default is true.
+
+ :param str resource_name: (optional)
+ Specify the name of shard or catalog.
+
+ :param bool is_primary: (optional)
+ Determines if the given resource name is for primary or not.
+
+ :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
+
+ :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_network API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['shardedDatabaseId']
+ resource_path = "/shardedDatabases/{shardedDatabaseId}/actions/validateNetwork"
+ method = "POST"
+ operation_name = "validate_network"
+ api_reference_link = ""
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "is_surrogate",
+ "resource_name",
+ "is_primary",
+ "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_network got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "shardedDatabaseId": sharded_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),
+ "resourceName": kwargs.get("resource_name", missing),
+ "isPrimary": kwargs.get("is_primary", 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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
diff --git a/src/oci/globally_distributed_database/sharded_database_service_client_composite_operations.py b/src/oci/globally_distributed_database/sharded_database_service_client_composite_operations.py
new file mode 100644
index 0000000000..3629861582
--- /dev/null
+++ b/src/oci/globally_distributed_database/sharded_database_service_client_composite_operations.py
@@ -0,0 +1,694 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230301
+
+import oci # noqa: F401
+from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401
+
+
+class ShardedDatabaseServiceClientCompositeOperations(object):
+ """
+ This class provides a wrapper around :py:class:`~oci.globally_distributed_database.ShardedDatabaseServiceClient` 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 ShardedDatabaseServiceClientCompositeOperations object
+
+ :param ShardedDatabaseServiceClient client:
+ The service client which will be wrapped by this object
+ """
+ self.client = client
+
+ def change_private_endpoint_compartment_and_wait_for_state(self, change_private_endpoint_compartment_details, private_endpoint_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.change_private_endpoint_compartment` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param oci.globally_distributed_database.models.ChangePrivateEndpointCompartmentDetails change_private_endpoint_compartment_details: (required)
+ Request to move the private endpoint to a different compartment.
+
+ :param str private_endpoint_id: (required)
+ Oracle Sharded 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.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.change_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_private_endpoint_compartment(change_private_endpoint_compartment_details, 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 change_sharded_database_compartment_and_wait_for_state(self, change_sharded_database_compartment_details, sharded_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.change_sharded_database_compartment` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param oci.globally_distributed_database.models.ChangeShardedDatabaseCompartmentDetails change_sharded_database_compartment_details: (required)
+ Request to move the sharded database to a different compartment.
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.change_sharded_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_sharded_database_compartment(change_sharded_database_compartment_details, sharded_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_sharded_database_gsms_and_wait_for_state(self, configure_sharded_database_gsms_details, sharded_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.configure_sharded_database_gsms` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param oci.globally_distributed_database.models.ConfigureShardedDatabaseGsmsDetails configure_sharded_database_gsms_details: (required)
+ Details to configure the new GSM instances for the sharded database.
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.configure_sharded_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_sharded_database_gsms(configure_sharded_database_gsms_details, sharded_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_sharding_and_wait_for_state(self, sharded_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.configure_sharding` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.configure_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_sharding(sharded_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_private_endpoint_and_wait_for_state(self, create_private_endpoint_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.create_private_endpoint` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param oci.globally_distributed_database.models.CreatePrivateEndpointDetails create_private_endpoint_details: (required)
+ Details of PrivateEndpoint 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.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.create_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_private_endpoint(create_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 create_sharded_database_and_wait_for_state(self, create_sharded_database_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.create_sharded_database` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param oci.globally_distributed_database.models.CreateShardedDatabaseDetails create_sharded_database_details: (required)
+ Details of Sharded 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.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.create_sharded_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_sharded_database(create_sharded_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_private_endpoint_and_wait_for_state(self, private_endpoint_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.delete_private_endpoint` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str private_endpoint_id: (required)
+ Oracle Sharded 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.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.delete_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_private_endpoint(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 delete_sharded_database_and_wait_for_state(self, sharded_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.delete_sharded_database` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.delete_sharded_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_sharded_database(sharded_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 generate_gsm_certificate_signing_request_and_wait_for_state(self, sharded_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.generate_gsm_certificate_signing_request` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.generate_gsm_certificate_signing_request`
+
+ :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_gsm_certificate_signing_request(sharded_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 patch_sharded_database_and_wait_for_state(self, sharded_database_id, patch_sharded_database_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.patch_sharded_database` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param oci.globally_distributed_database.models.PatchShardedDatabaseDetails patch_sharded_database_details: (required)
+ The payload containing instructions to patch the sharded database.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.patch_sharded_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_sharded_database(sharded_database_id, patch_sharded_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 start_sharded_database_and_wait_for_state(self, sharded_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.start_sharded_database` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.start_sharded_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_sharded_database(sharded_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_sharded_database_and_wait_for_state(self, sharded_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.stop_sharded_database` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.stop_sharded_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_sharded_database(sharded_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_private_endpoint_and_wait_for_state(self, private_endpoint_id, update_private_endpoint_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.update_private_endpoint` and waits for the :py:class:`~oci.globally_distributed_database.models.PrivateEndpoint` acted upon
+ to enter the given state(s).
+
+ :param str private_endpoint_id: (required)
+ Oracle Sharded Database PrivateEndpoint identifier
+
+ :param oci.globally_distributed_database.models.UpdatePrivateEndpointDetails update_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.globally_distributed_database.models.PrivateEndpoint.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.update_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_private_endpoint(private_endpoint_id, update_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]
+ private_endpoint_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_private_endpoint(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)
+
+ def update_sharded_database_and_wait_for_state(self, sharded_database_id, update_sharded_database_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.update_sharded_database` and waits for the :py:class:`~oci.globally_distributed_database.models.ShardedDatabase` acted upon
+ to enter the given state(s).
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param oci.globally_distributed_database.models.UpdateShardedDatabaseDetails update_sharded_database_details: (required)
+ The configuration of Sharded 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.globally_distributed_database.models.ShardedDatabase.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.update_sharded_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_sharded_database(sharded_database_id, update_sharded_database_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ sharded_database_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_sharded_database(sharded_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 upload_signed_certificate_and_generate_wallet_and_wait_for_state(self, sharded_database_id, upload_signed_certificate_and_generate_wallet_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.upload_signed_certificate_and_generate_wallet` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param oci.globally_distributed_database.models.UploadSignedCertificateAndGenerateWalletDetails upload_signed_certificate_and_generate_wallet_details: (required)
+ Details required to upload the CA signed certificates to GSM instances of sharded database and generate
+ the wallets.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.upload_signed_certificate_and_generate_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.upload_signed_certificate_and_generate_wallet(sharded_database_id, upload_signed_certificate_and_generate_wallet_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 validate_network_and_wait_for_state(self, sharded_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.validate_network` and waits for the :py:class:`~oci.globally_distributed_database.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str sharded_database_id: (required)
+ Sharded Database identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.globally_distributed_database.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.globally_distributed_database.ShardedDatabaseServiceClient.validate_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_network(sharded_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/key_management/__init__.py b/src/oci/key_management/__init__.py
index f4925abf8b..ec663120d3 100644
--- a/src/oci/key_management/__init__.py
+++ b/src/oci/key_management/__init__.py
@@ -11,10 +11,12 @@
from .ekm_client_composite_operations import EkmClientCompositeOperations
from .kms_crypto_client import KmsCryptoClient
from .kms_crypto_client_composite_operations import KmsCryptoClientCompositeOperations
+from .kms_hsm_cluster_client import KmsHsmClusterClient
+from .kms_hsm_cluster_client_composite_operations import KmsHsmClusterClientCompositeOperations
from .kms_management_client import KmsManagementClient
from .kms_management_client_composite_operations import KmsManagementClientCompositeOperations
from .kms_vault_client import KmsVaultClient
from .kms_vault_client_composite_operations import KmsVaultClientCompositeOperations
from . import models
-__all__ = ["EkmClient", "EkmClientCompositeOperations", "KmsCryptoClient", "KmsCryptoClientCompositeOperations", "KmsManagementClient", "KmsManagementClientCompositeOperations", "KmsVaultClient", "KmsVaultClientCompositeOperations", "models"]
+__all__ = ["EkmClient", "EkmClientCompositeOperations", "KmsCryptoClient", "KmsCryptoClientCompositeOperations", "KmsHsmClusterClient", "KmsHsmClusterClientCompositeOperations", "KmsManagementClient", "KmsManagementClientCompositeOperations", "KmsVaultClient", "KmsVaultClientCompositeOperations", "models"]
diff --git a/src/oci/key_management/kms_hsm_cluster_client.py b/src/oci/key_management/kms_hsm_cluster_client.py
new file mode 100644
index 0000000000..82e48bbd7e
--- /dev/null
+++ b/src/oci/key_management/kms_hsm_cluster_client.py
@@ -0,0 +1,1558 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: release
+
+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 InvalidAlloyConfig
+from oci.alloy import OCI_SDK_ENABLED_SERVICES_SET
+from .models import key_management_type_mapping
+missing = Sentinel("Missing")
+
+
+class KmsHsmClusterClient(object):
+ """
+ Use the Key Management API to manage vaults and keys. For more information, see [Managing Vaults](/Content/KeyManagement/Tasks/managingvaults.htm) and [Managing Keys](/Content/KeyManagement/Tasks/managingkeys.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.
+ """
+ if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("key_management"):
+ raise InvalidAlloyConfig("The Alloy configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local alloy-config 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': '/',
+ 'service_endpoint_template': 'https://kms.{region}.{secondLevelDomain}',
+ 'service_endpoint_template_per_realm': { }, # noqa: E201 E202
+ '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')
+ }
+ 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')
+ self.base_client = BaseClient("kms_hsm_cluster", config, signer, key_management_type_mapping, **base_client_init_kwargs)
+ self.retry_strategy = kwargs.get('retry_strategy')
+ self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback')
+
+ def cancel_hsm_cluster_deletion(self, hsm_cluster_id, **kwargs):
+ """
+ Cancels deletion of specified HSM Cluster, restores it and associated HSM partitions to pre-deletion states.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM 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. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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 (e.g., 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.key_management.models.HsmCluster`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use cancel_hsm_cluster_deletion API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}/actions/cancelDeletion"
+ method = "POST"
+ operation_name = "cancel_hsm_cluster_deletion"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/CancelHsmClusterDeletion"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_hsm_cluster_deletion got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_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),
+ "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="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def change_hsm_cluster_compartment(self, hsm_cluster_id, change_hsm_cluster_compartment_details, **kwargs):
+ """
+ Moves a HSM Cluster resource to a different compartment within the same tenancy.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param oci.key_management.models.ChangeHsmClusterCompartmentDetails change_hsm_cluster_compartment_details: (required)
+ Details of change HSM Cluster 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)
+ Unique identifier for the request. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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 (e.g., 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
+
+ :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_hsm_cluster_compartment API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}/actions/changeCompartment"
+ method = "POST"
+ operation_name = "change_hsm_cluster_compartment"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/ChangeHsmClusterCompartment"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_hsm_cluster_compartment got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_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),
+ "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,
+ body=change_hsm_cluster_compartment_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_hsm_cluster_compartment_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def create_hsm_cluster(self, create_hsm_cluster_details, **kwargs):
+ """
+ Creates a new HSM cluster resource.
+
+
+ :param oci.key_management.models.CreateHsmClusterDetails create_hsm_cluster_details: (required)
+ Details for the new HsmCluster resource
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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 (e.g., 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.key_management.models.HsmCluster`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use create_hsm_cluster API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = []
+ resource_path = "/20180608/hsmClusters"
+ method = "POST"
+ operation_name = "create_hsm_cluster"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/CreateHsmCluster"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_hsm_cluster got unknown kwargs: {extra_kwargs!r}")
+
+ 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:
+ 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_hsm_cluster_details,
+ response_type="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_hsm_cluster_details,
+ response_type="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def download_certificate_signing_request(self, hsm_cluster_id, **kwargs):
+ """
+ Retrieves the certificate signing request for the designated HSM Cluster resource.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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 (e.g., if a resource has been
+ deleted and purged from the system, then a retry of the original
+ creation request may 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 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
+
+ :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 download_certificate_signing_request API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}/actions/downloadCertificateSigningRequest"
+ method = "POST"
+ operation_name = "download_certificate_signing_request"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/DownloadCertificateSigningRequest"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"download_certificate_signing_request got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_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),
+ "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:
+ 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="str",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def get_hsm_cluster(self, hsm_cluster_id, **kwargs):
+ """
+ Retrieves configuration details for the specified HSM Cluster resource.
+
+ As a provisioning operation, this call is subject to a Key Management limit that applies to
+ the total number of requests across all provisioning read operations. Key Management might
+ throttle this call to reject an otherwise valid request when the total rate of provisioning
+ read operations exceeds 10 requests per second for a given tenancy.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.key_management.models.HsmCluster`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use get_hsm_cluster API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}"
+ method = "GET"
+ operation_name = "get_hsm_cluster"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/GetHsmCluster"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_hsm_cluster got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_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="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def get_hsm_partition(self, hsm_cluster_id, hsm_partition_id, **kwargs):
+ """
+ Retrieves HSM partition details for the specified HSM cluster.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param str hsm_partition_id: (required)
+ The OCID of the HSM Partition.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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 (e.g., 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.key_management.models.HsmPartition`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use get_hsm_partition API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId', 'hsmPartitionId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}/hsmPartitions/{hsmPartitionId}"
+ method = "GET"
+ operation_name = "get_hsm_partition"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmPartition/GetHsmPartition"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"get_hsm_partition got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_cluster_id,
+ "hsmPartitionId": hsm_partition_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:
+ 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="HsmPartition",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="HsmPartition",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def get_pre_co_user_credentials(self, hsm_cluster_id, **kwargs):
+ """
+ Retrieves Pre Crypto Officer user credentials for the specified HSM cluster.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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 (e.g., 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.key_management.models.PreCoUserCredentials`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use get_pre_co_user_credentials API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}/preCoUserCredentials"
+ method = "GET"
+ operation_name = "get_pre_co_user_credentials"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/GetPreCoUserCredentials"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"get_pre_co_user_credentials got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_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),
+ "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="PreCoUserCredentials",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="PreCoUserCredentials",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_hsm_clusters(self, compartment_id, **kwargs):
+ """
+ Lists all HSM cluster resources contained within the specified compartment.
+
+ As a provisioning operation, this call is subject to a Key Management limit that applies to
+ the total number of requests across all provisioning read operations. Key Management might
+ throttle this call to reject an otherwise valid request when the total rate of provisioning
+ read operations exceeds 10 requests per second for a given tenancy.
+
+
+ :param str compartment_id: (required)
+ The OCID of the compartment.
+
+ :param int limit: (optional)
+ The maximum number of items to return in a paginated \"List\" call.
+
+ :param str page: (optional)
+ The value of the `opc-next-page` response header
+ from the previous \"List\" call.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :param str sort_by: (optional)
+ The field to sort by. You can specify only one sort order. The default
+ order for `TIMECREATED` is descending. The default order for `DISPLAYNAME`
+ is ascending.
+
+ 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 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.key_management.models.HsmClusterCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_hsm_clusters API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['compartmentId']
+ resource_path = "/20180608/hsmClusters"
+ method = "GET"
+ operation_name = "list_hsm_clusters"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/ListHsmClusters"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "limit",
+ "page",
+ "opc_request_id",
+ "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_hsm_clusters 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 }"
+ )
+
+ 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)
+ }
+ 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="HsmClusterCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="HsmClusterCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_hsm_partitions(self, hsm_cluster_id, **kwargs):
+ """
+ Lists all HSM partitions within the specified HSM Cluster resource.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param int limit: (optional)
+ The maximum number of items to return in a paginated \"List\" call.
+
+ :param str page: (optional)
+ The value of the `opc-next-page` response header
+ from the previous \"List\" call.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :param str sort_by: (optional)
+ The field to sort by. You can specify only one sort order. The default
+ order for `TIMECREATED` is descending. The default order for `DISPLAYNAME`
+ is ascending.
+
+ 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 that returns only resources that match the specified lifecycle state. The state value is case-insensitive.
+
+ Allowed values are: "ACTIVE", "INACTIVE", "ACTIVATING", "ACTIVATION_REQUIRED"
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.key_management.models.HsmPartitionCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_hsm_partitions API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}/hsmPartitions"
+ method = "GET"
+ operation_name = "list_hsm_partitions"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmPartition/ListHsmPartitions"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "limit",
+ "page",
+ "opc_request_id",
+ "sort_by",
+ "sort_order",
+ "lifecycle_state"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ f"list_hsm_partitions got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_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 '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 = ["ACTIVE", "INACTIVE", "ACTIVATING", "ACTIVATION_REQUIRED"]
+ 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 = {
+ "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)
+ }
+ 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="HsmPartitionCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="HsmPartitionCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def schedule_hsm_cluster_deletion(self, hsm_cluster_id, schedule_hsm_cluster_deletion_details, **kwargs):
+ """
+ Schedules HSM cluster for deletion, update its lifecycle state to 'PENDING_DELETION'
+ and deletes it after the retention period.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param oci.key_management.models.ScheduleHsmClusterDeletionDetails schedule_hsm_cluster_deletion_details: (required)
+ Details of ScheduleHsmClusterDeletionDetails
+
+ :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 provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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 (e.g., 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.key_management.models.HsmCluster`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use schedule_hsm_cluster_deletion API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}/actions/scheduleDeletion"
+ method = "POST"
+ operation_name = "schedule_hsm_cluster_deletion"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/ScheduleHsmClusterDeletion"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"schedule_hsm_cluster_deletion got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_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),
+ "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,
+ body=schedule_hsm_cluster_deletion_details,
+ response_type="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=schedule_hsm_cluster_deletion_details,
+ response_type="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def update_hsm_cluster(self, hsm_cluster_id, update_hsm_cluster_details, **kwargs):
+ """
+ Modifies properties of an HSM cluster resource, including `displayName`, `freeformTags` and `definedTags`.
+
+ As a provisioning operation, this call is subject to a Key Management limit that applies to
+ the total number of requests across all provisioning write operations. Key Management might
+ throttle this call to reject an otherwise valid request when the total rate of provisioning
+ write operations exceeds 10 requests per second for a given tenancy.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param oci.key_management.models.UpdateHsmClusterDetails update_hsm_cluster_details: (required)
+ Details of the HsmCluster Resource
+
+ :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 provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.key_management.models.HsmCluster`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use update_hsm_cluster API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}"
+ method = "PUT"
+ operation_name = "update_hsm_cluster"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/UpdateHsmCluster"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_hsm_cluster got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_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_hsm_cluster_details,
+ response_type="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_hsm_cluster_details,
+ response_type="HsmCluster",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def upload_partition_certificates(self, hsm_cluster_id, upload_partition_certificates_details, **kwargs):
+ """
+ Uploads the partition owner certificates to the HSM Cluster resource.
+
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param oci.key_management.models.UploadPartitionCertificatesDetails upload_partition_certificates_details: (required)
+ To upload partition certificates.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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 (e.g., if a resource has been
+ deleted and purged from the system, then a retry of the original
+ creation request may 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 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
+
+ :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 upload_partition_certificates API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['hsmClusterId']
+ resource_path = "/20180608/hsmClusters/{hsmClusterId}/actions/uploadPartitionCertificates"
+ method = "POST"
+ operation_name = "upload_partition_certificates"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/key/release/HsmCluster/UploadPartitionCertificates"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"upload_partition_certificates got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "hsmClusterId": hsm_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),
+ "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:
+ 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=upload_partition_certificates_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=upload_partition_certificates_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
diff --git a/src/oci/key_management/kms_hsm_cluster_client_composite_operations.py b/src/oci/key_management/kms_hsm_cluster_client_composite_operations.py
new file mode 100644
index 0000000000..96e6c3b1e4
--- /dev/null
+++ b/src/oci/key_management/kms_hsm_cluster_client_composite_operations.py
@@ -0,0 +1,200 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: release
+
+import oci # noqa: F401
+from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401
+
+
+class KmsHsmClusterClientCompositeOperations(object):
+ """
+ This class provides a wrapper around :py:class:`~oci.key_management.KmsHsmClusterClient` 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 KmsHsmClusterClientCompositeOperations object
+
+ :param KmsHsmClusterClient client:
+ The service client which will be wrapped by this object
+ """
+ self.client = client
+
+ def cancel_hsm_cluster_deletion_and_wait_for_state(self, hsm_cluster_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.key_management.KmsHsmClusterClient.cancel_hsm_cluster_deletion` and waits for the :py:class:`~oci.key_management.models.HsmCluster` acted upon
+ to enter the given state(s).
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.key_management.models.HsmCluster.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.key_management.KmsHsmClusterClient.cancel_hsm_cluster_deletion`
+
+ :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_hsm_cluster_deletion(hsm_cluster_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ hsm_cluster_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_hsm_cluster(hsm_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_hsm_cluster_and_wait_for_state(self, create_hsm_cluster_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.key_management.KmsHsmClusterClient.create_hsm_cluster` and waits for the :py:class:`~oci.key_management.models.HsmCluster` acted upon
+ to enter the given state(s).
+
+ :param oci.key_management.models.CreateHsmClusterDetails create_hsm_cluster_details: (required)
+ Details for the new HsmCluster resource
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.key_management.models.HsmCluster.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.key_management.KmsHsmClusterClient.create_hsm_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_hsm_cluster(create_hsm_cluster_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ hsm_cluster_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_hsm_cluster(hsm_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 schedule_hsm_cluster_deletion_and_wait_for_state(self, hsm_cluster_id, schedule_hsm_cluster_deletion_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.key_management.KmsHsmClusterClient.schedule_hsm_cluster_deletion` and waits for the :py:class:`~oci.key_management.models.HsmCluster` acted upon
+ to enter the given state(s).
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param oci.key_management.models.ScheduleHsmClusterDeletionDetails schedule_hsm_cluster_deletion_details: (required)
+ Details of ScheduleHsmClusterDeletionDetails
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.key_management.models.HsmCluster.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.key_management.KmsHsmClusterClient.schedule_hsm_cluster_deletion`
+
+ :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.schedule_hsm_cluster_deletion(hsm_cluster_id, schedule_hsm_cluster_deletion_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ hsm_cluster_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_hsm_cluster(hsm_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_hsm_cluster_and_wait_for_state(self, hsm_cluster_id, update_hsm_cluster_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.key_management.KmsHsmClusterClient.update_hsm_cluster` and waits for the :py:class:`~oci.key_management.models.HsmCluster` acted upon
+ to enter the given state(s).
+
+ :param str hsm_cluster_id: (required)
+ The OCID of the HSM Cluster.
+
+ :param oci.key_management.models.UpdateHsmClusterDetails update_hsm_cluster_details: (required)
+ Details of the HsmCluster Resource
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.key_management.models.HsmCluster.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.key_management.KmsHsmClusterClient.update_hsm_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_hsm_cluster(hsm_cluster_id, update_hsm_cluster_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ hsm_cluster_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_hsm_cluster(hsm_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)
diff --git a/src/oci/key_management/models/__init__.py b/src/oci/key_management/models/__init__.py
index 59156f293c..202aeb4097 100644
--- a/src/oci/key_management/models/__init__.py
+++ b/src/oci/key_management/models/__init__.py
@@ -11,9 +11,11 @@
from .backup_location_bucket import BackupLocationBucket
from .backup_location_uri import BackupLocationURI
from .backup_vault_details import BackupVaultDetails
+from .change_hsm_cluster_compartment_details import ChangeHsmClusterCompartmentDetails
from .change_key_compartment_details import ChangeKeyCompartmentDetails
from .change_vault_compartment_details import ChangeVaultCompartmentDetails
from .create_ekms_private_endpoint_details import CreateEkmsPrivateEndpointDetails
+from .create_hsm_cluster_details import CreateHsmClusterDetails
from .create_key_details import CreateKeyDetails
from .create_vault_details import CreateVaultDetails
from .create_vault_replica_details import CreateVaultReplicaDetails
@@ -33,6 +35,12 @@
from .external_key_version_reference import ExternalKeyVersionReference
from .generate_key_details import GenerateKeyDetails
from .generated_key import GeneratedKey
+from .hsm_cluster import HsmCluster
+from .hsm_cluster_collection import HsmClusterCollection
+from .hsm_cluster_summary import HsmClusterSummary
+from .hsm_partition import HsmPartition
+from .hsm_partition_collection import HsmPartitionCollection
+from .hsm_partition_summary import HsmPartitionSummary
from .import_key_details import ImportKeyDetails
from .import_key_version_details import ImportKeyVersionDetails
from .key import Key
@@ -44,18 +52,23 @@
from .key_version_summary import KeyVersionSummary
from .oauth_metadata import OauthMetadata
from .oauth_metadata_summary import OauthMetadataSummary
+from .port_information import PortInformation
+from .pre_co_user_credentials import PreCoUserCredentials
from .replica_details import ReplicaDetails
from .replication_status_details import ReplicationStatusDetails
from .restore_key_from_object_store_details import RestoreKeyFromObjectStoreDetails
from .restore_vault_from_object_store_details import RestoreVaultFromObjectStoreDetails
+from .schedule_hsm_cluster_deletion_details import ScheduleHsmClusterDeletionDetails
from .schedule_key_deletion_details import ScheduleKeyDeletionDetails
from .schedule_key_version_deletion_details import ScheduleKeyVersionDeletionDetails
from .schedule_vault_deletion_details import ScheduleVaultDeletionDetails
from .sign_data_details import SignDataDetails
from .signed_data import SignedData
from .update_ekms_private_endpoint_details import UpdateEkmsPrivateEndpointDetails
+from .update_hsm_cluster_details import UpdateHsmClusterDetails
from .update_key_details import UpdateKeyDetails
from .update_vault_details import UpdateVaultDetails
+from .upload_partition_certificates_details import UploadPartitionCertificatesDetails
from .vault import Vault
from .vault_replica_details import VaultReplicaDetails
from .vault_replica_summary import VaultReplicaSummary
@@ -73,9 +86,11 @@
"BackupLocationBucket": BackupLocationBucket,
"BackupLocationURI": BackupLocationURI,
"BackupVaultDetails": BackupVaultDetails,
+ "ChangeHsmClusterCompartmentDetails": ChangeHsmClusterCompartmentDetails,
"ChangeKeyCompartmentDetails": ChangeKeyCompartmentDetails,
"ChangeVaultCompartmentDetails": ChangeVaultCompartmentDetails,
"CreateEkmsPrivateEndpointDetails": CreateEkmsPrivateEndpointDetails,
+ "CreateHsmClusterDetails": CreateHsmClusterDetails,
"CreateKeyDetails": CreateKeyDetails,
"CreateVaultDetails": CreateVaultDetails,
"CreateVaultReplicaDetails": CreateVaultReplicaDetails,
@@ -95,6 +110,12 @@
"ExternalKeyVersionReference": ExternalKeyVersionReference,
"GenerateKeyDetails": GenerateKeyDetails,
"GeneratedKey": GeneratedKey,
+ "HsmCluster": HsmCluster,
+ "HsmClusterCollection": HsmClusterCollection,
+ "HsmClusterSummary": HsmClusterSummary,
+ "HsmPartition": HsmPartition,
+ "HsmPartitionCollection": HsmPartitionCollection,
+ "HsmPartitionSummary": HsmPartitionSummary,
"ImportKeyDetails": ImportKeyDetails,
"ImportKeyVersionDetails": ImportKeyVersionDetails,
"Key": Key,
@@ -106,18 +127,23 @@
"KeyVersionSummary": KeyVersionSummary,
"OauthMetadata": OauthMetadata,
"OauthMetadataSummary": OauthMetadataSummary,
+ "PortInformation": PortInformation,
+ "PreCoUserCredentials": PreCoUserCredentials,
"ReplicaDetails": ReplicaDetails,
"ReplicationStatusDetails": ReplicationStatusDetails,
"RestoreKeyFromObjectStoreDetails": RestoreKeyFromObjectStoreDetails,
"RestoreVaultFromObjectStoreDetails": RestoreVaultFromObjectStoreDetails,
+ "ScheduleHsmClusterDeletionDetails": ScheduleHsmClusterDeletionDetails,
"ScheduleKeyDeletionDetails": ScheduleKeyDeletionDetails,
"ScheduleKeyVersionDeletionDetails": ScheduleKeyVersionDeletionDetails,
"ScheduleVaultDeletionDetails": ScheduleVaultDeletionDetails,
"SignDataDetails": SignDataDetails,
"SignedData": SignedData,
"UpdateEkmsPrivateEndpointDetails": UpdateEkmsPrivateEndpointDetails,
+ "UpdateHsmClusterDetails": UpdateHsmClusterDetails,
"UpdateKeyDetails": UpdateKeyDetails,
"UpdateVaultDetails": UpdateVaultDetails,
+ "UploadPartitionCertificatesDetails": UploadPartitionCertificatesDetails,
"Vault": Vault,
"VaultReplicaDetails": VaultReplicaDetails,
"VaultReplicaSummary": VaultReplicaSummary,
diff --git a/src/oci/key_management/models/change_hsm_cluster_compartment_details.py b/src/oci/key_management/models/change_hsm_cluster_compartment_details.py
new file mode 100644
index 0000000000..8643272736
--- /dev/null
+++ b/src/oci/key_management/models/change_hsm_cluster_compartment_details.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ChangeHsmClusterCompartmentDetails(object):
+ """
+ The details of the compartment you wish to move the Hsm.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ChangeHsmClusterCompartmentDetails 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 ChangeHsmClusterCompartmentDetails.
+ :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 ChangeHsmClusterCompartmentDetails.
+ The [OCID] of the compartment to move the hsm to.
+
+
+ :return: The compartment_id of this ChangeHsmClusterCompartmentDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ChangeHsmClusterCompartmentDetails.
+ The [OCID] of the compartment to move the hsm to.
+
+
+ :param compartment_id: The compartment_id of this ChangeHsmClusterCompartmentDetails.
+ :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/key_management/models/create_hsm_cluster_details.py b/src/oci/key_management/models/create_hsm_cluster_details.py
new file mode 100644
index 0000000000..d1f0e749e2
--- /dev/null
+++ b/src/oci/key_management/models/create_hsm_cluster_details.py
@@ -0,0 +1,183 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateHsmClusterDetails(object):
+ """
+ The details of the HSM resource that you want to create.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateHsmClusterDetails 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 CreateHsmClusterDetails.
+ :type compartment_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateHsmClusterDetails.
+ :type display_name: str
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreateHsmClusterDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreateHsmClusterDetails.
+ :type freeform_tags: dict(str, str)
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str',
+ 'display_name': 'str',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'freeform_tags': 'dict(str, str)'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId',
+ 'display_name': 'displayName',
+ 'defined_tags': 'definedTags',
+ 'freeform_tags': 'freeformTags'
+ }
+
+ self._compartment_id = None
+ self._display_name = None
+ self._defined_tags = None
+ self._freeform_tags = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreateHsmClusterDetails.
+ The OCID of the compartment where you want to create this HSM resource.
+
+
+ :return: The compartment_id of this CreateHsmClusterDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreateHsmClusterDetails.
+ The OCID of the compartment where you want to create this HSM resource.
+
+
+ :param compartment_id: The compartment_id of this CreateHsmClusterDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateHsmClusterDetails.
+ A user-friendly name for the HSM resource. It does not have to be unique, and it is changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateHsmClusterDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateHsmClusterDetails.
+ A user-friendly name for the HSM resource. It does not have to be unique, and it is changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateHsmClusterDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CreateHsmClusterDetails.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this CreateHsmClusterDetails.
+ :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 CreateHsmClusterDetails.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this CreateHsmClusterDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CreateHsmClusterDetails.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this CreateHsmClusterDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CreateHsmClusterDetails.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this CreateHsmClusterDetails.
+ :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/key_management/models/hsm_cluster.py b/src/oci/key_management/models/hsm_cluster.py
new file mode 100644
index 0000000000..05637750c0
--- /dev/null
+++ b/src/oci/key_management/models/hsm_cluster.py
@@ -0,0 +1,447 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class HsmCluster(object):
+ """
+ Dedicated KMS-HSM Cluster Management
+ """
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "CREATING"
+ LIFECYCLE_STATE_CREATING = "CREATING"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "INITIALIZATION_REQUIRED"
+ LIFECYCLE_STATE_INITIALIZATION_REQUIRED = "INITIALIZATION_REQUIRED"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "INITIALIZING"
+ LIFECYCLE_STATE_INITIALIZING = "INITIALIZING"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "ACTIVATION_REQUIRED"
+ LIFECYCLE_STATE_ACTIVATION_REQUIRED = "ACTIVATION_REQUIRED"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "ACTIVATING"
+ LIFECYCLE_STATE_ACTIVATING = "ACTIVATING"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "DELETING"
+ LIFECYCLE_STATE_DELETING = "DELETING"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "PENDING_DELETION"
+ LIFECYCLE_STATE_PENDING_DELETION = "PENDING_DELETION"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "SCHEDULING_DELETION"
+ LIFECYCLE_STATE_SCHEDULING_DELETION = "SCHEDULING_DELETION"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmCluster.
+ #: This constant has a value of "CANCELLING_DELETION"
+ LIFECYCLE_STATE_CANCELLING_DELETION = "CANCELLING_DELETION"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new HsmCluster 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 HsmCluster.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this HsmCluster.
+ :type compartment_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this HsmCluster.
+ :type display_name: str
+
+ :param time_created:
+ The value to assign to the time_created property of this HsmCluster.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this HsmCluster.
+ :type time_updated: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this HsmCluster.
+ Allowed values for this property are: "CREATING", "INITIALIZATION_REQUIRED", "INITIALIZING", "ACTIVATION_REQUIRED", "ACTIVATING", "ACTIVE", "DELETING", "DELETED", "PENDING_DELETION", "SCHEDULING_DELETION", "CANCELLING_DELETION", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type lifecycle_state: str
+
+ :param dns_name:
+ The value to assign to the dns_name property of this HsmCluster.
+ :type dns_name: str
+
+ :param time_of_deletion:
+ The value to assign to the time_of_deletion property of this HsmCluster.
+ :type time_of_deletion: datetime
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this HsmCluster.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this HsmCluster.
+ :type freeform_tags: dict(str, str)
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'display_name': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'lifecycle_state': 'str',
+ 'dns_name': 'str',
+ 'time_of_deletion': 'datetime',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'freeform_tags': 'dict(str, str)'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'display_name': 'displayName',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'lifecycle_state': 'lifecycleState',
+ 'dns_name': 'dnsName',
+ 'time_of_deletion': 'timeOfDeletion',
+ 'defined_tags': 'definedTags',
+ 'freeform_tags': 'freeformTags'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._display_name = None
+ self._time_created = None
+ self._time_updated = None
+ self._lifecycle_state = None
+ self._dns_name = None
+ self._time_of_deletion = None
+ self._defined_tags = None
+ self._freeform_tags = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this HsmCluster.
+ The OCID of the HSMCluster resource.
+
+
+ :return: The id of this HsmCluster.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this HsmCluster.
+ The OCID of the HSMCluster resource.
+
+
+ :param id: The id of this HsmCluster.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this HsmCluster.
+ The OCID of the compartment that contains this HSMCluster resource.
+
+
+ :return: The compartment_id of this HsmCluster.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this HsmCluster.
+ The OCID of the compartment that contains this HSMCluster resource.
+
+
+ :param compartment_id: The compartment_id of this HsmCluster.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this HsmCluster.
+ A user-friendly name for the HSMCluster resource. It does not have to be unique, and it is changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this HsmCluster.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this HsmCluster.
+ A user-friendly name for the HSMCluster resource. It does not have to be unique, and it is changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this HsmCluster.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this HsmCluster.
+ The date and time this HSM resource was created, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2023-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this HsmCluster.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this HsmCluster.
+ The date and time this HSM resource was created, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2023-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this HsmCluster.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this HsmCluster.
+ The date and time this HSM resource was updated, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2023-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this HsmCluster.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this HsmCluster.
+ The date and time this HSM resource was updated, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2023-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this HsmCluster.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this HsmCluster.
+ The HSMCluster's current state.
+
+ Example: `ACTIVE`
+
+ Allowed values for this property are: "CREATING", "INITIALIZATION_REQUIRED", "INITIALIZING", "ACTIVATION_REQUIRED", "ACTIVATING", "ACTIVE", "DELETING", "DELETED", "PENDING_DELETION", "SCHEDULING_DELETION", "CANCELLING_DELETION", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this HsmCluster.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this HsmCluster.
+ The HSMCluster's current state.
+
+ Example: `ACTIVE`
+
+
+ :param lifecycle_state: The lifecycle_state of this HsmCluster.
+ :type: str
+ """
+ allowed_values = ["CREATING", "INITIALIZATION_REQUIRED", "INITIALIZING", "ACTIVATION_REQUIRED", "ACTIVATING", "ACTIVE", "DELETING", "DELETED", "PENDING_DELETION", "SCHEDULING_DELETION", "CANCELLING_DELETION"]
+ if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values):
+ lifecycle_state = 'UNKNOWN_ENUM_VALUE'
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def dns_name(self):
+ """
+ **[Required]** Gets the dns_name of this HsmCluster.
+ DNS name for the Hsm Cluster.
+
+
+ :return: The dns_name of this HsmCluster.
+ :rtype: str
+ """
+ return self._dns_name
+
+ @dns_name.setter
+ def dns_name(self, dns_name):
+ """
+ Sets the dns_name of this HsmCluster.
+ DNS name for the Hsm Cluster.
+
+
+ :param dns_name: The dns_name of this HsmCluster.
+ :type: str
+ """
+ self._dns_name = dns_name
+
+ @property
+ def time_of_deletion(self):
+ """
+ Gets the time_of_deletion of this HsmCluster.
+ An optional property indicating when to delete the key, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_of_deletion of this HsmCluster.
+ :rtype: datetime
+ """
+ return self._time_of_deletion
+
+ @time_of_deletion.setter
+ def time_of_deletion(self, time_of_deletion):
+ """
+ Sets the time_of_deletion of this HsmCluster.
+ An optional property indicating when to delete the key, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_of_deletion: The time_of_deletion of this HsmCluster.
+ :type: datetime
+ """
+ self._time_of_deletion = time_of_deletion
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this HsmCluster.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this HsmCluster.
+ :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 HsmCluster.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this HsmCluster.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this HsmCluster.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this HsmCluster.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this HsmCluster.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this HsmCluster.
+ :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/key_management/models/hsm_cluster_collection.py b/src/oci/key_management/models/hsm_cluster_collection.py
new file mode 100644
index 0000000000..760d3eec4b
--- /dev/null
+++ b/src/oci/key_management/models/hsm_cluster_collection.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class HsmClusterCollection(object):
+ """
+ HsmClusterCollection object with page of HsmClusterSummary objects.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new HsmClusterCollection 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 HsmClusterCollection.
+ :type items: list[oci.key_management.models.HsmClusterSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[HsmClusterSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this HsmClusterCollection.
+ List of Hsm Clusters.
+
+
+ :return: The items of this HsmClusterCollection.
+ :rtype: list[oci.key_management.models.HsmClusterSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this HsmClusterCollection.
+ List of Hsm Clusters.
+
+
+ :param items: The items of this HsmClusterCollection.
+ :type: list[oci.key_management.models.HsmClusterSummary]
+ """
+ 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/key_management/models/hsm_cluster_summary.py b/src/oci/key_management/models/hsm_cluster_summary.py
new file mode 100644
index 0000000000..fb5e11f5e6
--- /dev/null
+++ b/src/oci/key_management/models/hsm_cluster_summary.py
@@ -0,0 +1,395 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class HsmClusterSummary(object):
+ """
+ The details of the HSM resource.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new HsmClusterSummary 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 HsmClusterSummary.
+ :type id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this HsmClusterSummary.
+ :type display_name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this HsmClusterSummary.
+ :type compartment_id: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this HsmClusterSummary.
+ :type lifecycle_state: str
+
+ :param dns_name:
+ The value to assign to the dns_name property of this HsmClusterSummary.
+ :type dns_name: str
+
+ :param time_created:
+ The value to assign to the time_created property of this HsmClusterSummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this HsmClusterSummary.
+ :type time_updated: datetime
+
+ :param time_of_deletion:
+ The value to assign to the time_of_deletion property of this HsmClusterSummary.
+ :type time_of_deletion: datetime
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this HsmClusterSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this HsmClusterSummary.
+ :type freeform_tags: dict(str, str)
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'display_name': 'str',
+ 'compartment_id': 'str',
+ 'lifecycle_state': 'str',
+ 'dns_name': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'time_of_deletion': 'datetime',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'freeform_tags': 'dict(str, str)'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'display_name': 'displayName',
+ 'compartment_id': 'compartmentId',
+ 'lifecycle_state': 'lifecycleState',
+ 'dns_name': 'dnsName',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'time_of_deletion': 'timeOfDeletion',
+ 'defined_tags': 'definedTags',
+ 'freeform_tags': 'freeformTags'
+ }
+
+ self._id = None
+ self._display_name = None
+ self._compartment_id = None
+ self._lifecycle_state = None
+ self._dns_name = None
+ self._time_created = None
+ self._time_updated = None
+ self._time_of_deletion = None
+ self._defined_tags = None
+ self._freeform_tags = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this HsmClusterSummary.
+ The OCID of a HSMCluster resource.
+
+
+ :return: The id of this HsmClusterSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this HsmClusterSummary.
+ The OCID of a HSMCluster resource.
+
+
+ :param id: The id of this HsmClusterSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this HsmClusterSummary.
+ A user-friendly name for a HSMCluster resource. It does not have to be unique, and it is changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this HsmClusterSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this HsmClusterSummary.
+ A user-friendly name for a HSMCluster resource. It does not have to be unique, and it is changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this HsmClusterSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this HsmClusterSummary.
+ The OCID of the compartment that contains a particular HSMCluster resource.
+
+
+ :return: The compartment_id of this HsmClusterSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this HsmClusterSummary.
+ The OCID of the compartment that contains a particular HSMCluster resource.
+
+
+ :param compartment_id: The compartment_id of this HsmClusterSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this HsmClusterSummary.
+ A HSMCluster resource's current lifecycle state.
+
+ Example: `ACTIVE`
+
+
+ :return: The lifecycle_state of this HsmClusterSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this HsmClusterSummary.
+ A HSMCluster resource's current lifecycle state.
+
+ Example: `ACTIVE`
+
+
+ :param lifecycle_state: The lifecycle_state of this HsmClusterSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def dns_name(self):
+ """
+ **[Required]** Gets the dns_name of this HsmClusterSummary.
+ DNS name for the HSMCluster.
+
+
+ :return: The dns_name of this HsmClusterSummary.
+ :rtype: str
+ """
+ return self._dns_name
+
+ @dns_name.setter
+ def dns_name(self, dns_name):
+ """
+ Sets the dns_name of this HsmClusterSummary.
+ DNS name for the HSMCluster.
+
+
+ :param dns_name: The dns_name of this HsmClusterSummary.
+ :type: str
+ """
+ self._dns_name = dns_name
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this HsmClusterSummary.
+ The date and time a dedicated KMS resource was created, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2023-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this HsmClusterSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this HsmClusterSummary.
+ The date and time a dedicated KMS resource was created, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2023-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this HsmClusterSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this HsmClusterSummary.
+ The date and time a dedicated KMS resource was updated, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2023-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this HsmClusterSummary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this HsmClusterSummary.
+ The date and time a dedicated KMS resource was updated, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2023-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this HsmClusterSummary.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def time_of_deletion(self):
+ """
+ Gets the time_of_deletion of this HsmClusterSummary.
+ An optional property indicating when to delete the resource, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_of_deletion of this HsmClusterSummary.
+ :rtype: datetime
+ """
+ return self._time_of_deletion
+
+ @time_of_deletion.setter
+ def time_of_deletion(self, time_of_deletion):
+ """
+ Sets the time_of_deletion of this HsmClusterSummary.
+ An optional property indicating when to delete the resource, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_of_deletion: The time_of_deletion of this HsmClusterSummary.
+ :type: datetime
+ """
+ self._time_of_deletion = time_of_deletion
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this HsmClusterSummary.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this HsmClusterSummary.
+ :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 HsmClusterSummary.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this HsmClusterSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this HsmClusterSummary.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this HsmClusterSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this HsmClusterSummary.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this HsmClusterSummary.
+ :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/key_management/models/hsm_partition.py b/src/oci/key_management/models/hsm_partition.py
new file mode 100644
index 0000000000..cb957e18f5
--- /dev/null
+++ b/src/oci/key_management/models/hsm_partition.py
@@ -0,0 +1,267 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class HsmPartition(object):
+ """
+ Dedicated KMS-HSM Partition Management
+ """
+
+ #: A constant which can be used with the lifecycle_state property of a HsmPartition.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmPartition.
+ #: This constant has a value of "INACTIVE"
+ LIFECYCLE_STATE_INACTIVE = "INACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmPartition.
+ #: This constant has a value of "ACTIVATING"
+ LIFECYCLE_STATE_ACTIVATING = "ACTIVATING"
+
+ #: A constant which can be used with the lifecycle_state property of a HsmPartition.
+ #: This constant has a value of "ACTIVATION_REQUIRED"
+ LIFECYCLE_STATE_ACTIVATION_REQUIRED = "ACTIVATION_REQUIRED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new HsmPartition 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 HsmPartition.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this HsmPartition.
+ :type compartment_id: str
+
+ :param port_information:
+ The value to assign to the port_information property of this HsmPartition.
+ :type port_information: list[oci.key_management.models.PortInformation]
+
+ :param time_created:
+ The value to assign to the time_created property of this HsmPartition.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this HsmPartition.
+ :type time_updated: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this HsmPartition.
+ Allowed values for this property are: "ACTIVE", "INACTIVE", "ACTIVATING", "ACTIVATION_REQUIRED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'port_information': 'list[PortInformation]',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'port_information': 'portInformation',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._port_information = None
+ self._time_created = None
+ self._time_updated = None
+ self._lifecycle_state = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this HsmPartition.
+ The OCID of the HSM resource.
+
+
+ :return: The id of this HsmPartition.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this HsmPartition.
+ The OCID of the HSM resource.
+
+
+ :param id: The id of this HsmPartition.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this HsmPartition.
+ The OCID of the compartment that contains a particular HSM resource.
+
+
+ :return: The compartment_id of this HsmPartition.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this HsmPartition.
+ The OCID of the compartment that contains a particular HSM resource.
+
+
+ :param compartment_id: The compartment_id of this HsmPartition.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def port_information(self):
+ """
+ **[Required]** Gets the port_information of this HsmPartition.
+ Details of PortNumber and PortType.
+
+
+ :return: The port_information of this HsmPartition.
+ :rtype: list[oci.key_management.models.PortInformation]
+ """
+ return self._port_information
+
+ @port_information.setter
+ def port_information(self, port_information):
+ """
+ Sets the port_information of this HsmPartition.
+ Details of PortNumber and PortType.
+
+
+ :param port_information: The port_information of this HsmPartition.
+ :type: list[oci.key_management.models.PortInformation]
+ """
+ self._port_information = port_information
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this HsmPartition.
+ The date and time a HSMPartition was created, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this HsmPartition.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this HsmPartition.
+ The date and time a HSMPartition was created, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this HsmPartition.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this HsmPartition.
+ The date and time a HSMPartition was updated, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this HsmPartition.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this HsmPartition.
+ The date and time a HSMPartition was updated, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this HsmPartition.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this HsmPartition.
+ The HSMPartition's current lifecycle state.
+
+ Allowed values for this property are: "ACTIVE", "INACTIVE", "ACTIVATING", "ACTIVATION_REQUIRED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this HsmPartition.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this HsmPartition.
+ The HSMPartition's current lifecycle state.
+
+
+ :param lifecycle_state: The lifecycle_state of this HsmPartition.
+ :type: str
+ """
+ allowed_values = ["ACTIVE", "INACTIVE", "ACTIVATING", "ACTIVATION_REQUIRED"]
+ 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/key_management/models/hsm_partition_collection.py b/src/oci/key_management/models/hsm_partition_collection.py
new file mode 100644
index 0000000000..fc0c45ac91
--- /dev/null
+++ b/src/oci/key_management/models/hsm_partition_collection.py
@@ -0,0 +1,72 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class HsmPartitionCollection(object):
+ """
+ HsmPartitionCollection object with page of HsmPartitionSummary objects.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new HsmPartitionCollection 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 HsmPartitionCollection.
+ :type items: list[oci.key_management.models.HsmPartitionSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[HsmPartitionSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this HsmPartitionCollection.
+ List of HsmPartitionSummaries.
+
+
+ :return: The items of this HsmPartitionCollection.
+ :rtype: list[oci.key_management.models.HsmPartitionSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this HsmPartitionCollection.
+ List of HsmPartitionSummaries.
+
+
+ :param items: The items of this HsmPartitionCollection.
+ :type: list[oci.key_management.models.HsmPartitionSummary]
+ """
+ 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/key_management/models/hsm_partition_summary.py b/src/oci/key_management/models/hsm_partition_summary.py
new file mode 100644
index 0000000000..65f7bd1ea7
--- /dev/null
+++ b/src/oci/key_management/models/hsm_partition_summary.py
@@ -0,0 +1,274 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class HsmPartitionSummary(object):
+ """
+ The details of the Hsm.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new HsmPartitionSummary 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 HsmPartitionSummary.
+ :type id: str
+
+ :param hsm_cluster_id:
+ The value to assign to the hsm_cluster_id property of this HsmPartitionSummary.
+ :type hsm_cluster_id: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this HsmPartitionSummary.
+ :type lifecycle_state: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this HsmPartitionSummary.
+ :type compartment_id: str
+
+ :param port_information:
+ The value to assign to the port_information property of this HsmPartitionSummary.
+ :type port_information: list[oci.key_management.models.PortInformation]
+
+ :param time_created:
+ The value to assign to the time_created property of this HsmPartitionSummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this HsmPartitionSummary.
+ :type time_updated: datetime
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'hsm_cluster_id': 'str',
+ 'lifecycle_state': 'str',
+ 'compartment_id': 'str',
+ 'port_information': 'list[PortInformation]',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'hsm_cluster_id': 'hsmClusterId',
+ 'lifecycle_state': 'lifecycleState',
+ 'compartment_id': 'compartmentId',
+ 'port_information': 'portInformation',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated'
+ }
+
+ self._id = None
+ self._hsm_cluster_id = None
+ self._lifecycle_state = None
+ self._compartment_id = None
+ self._port_information = None
+ self._time_created = None
+ self._time_updated = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this HsmPartitionSummary.
+ The OCID of the HSM resource.
+
+
+ :return: The id of this HsmPartitionSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this HsmPartitionSummary.
+ The OCID of the HSM resource.
+
+
+ :param id: The id of this HsmPartitionSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def hsm_cluster_id(self):
+ """
+ **[Required]** Gets the hsm_cluster_id of this HsmPartitionSummary.
+ The OCID of the HSMCluster that contains a particular HSM resource.
+
+
+ :return: The hsm_cluster_id of this HsmPartitionSummary.
+ :rtype: str
+ """
+ return self._hsm_cluster_id
+
+ @hsm_cluster_id.setter
+ def hsm_cluster_id(self, hsm_cluster_id):
+ """
+ Sets the hsm_cluster_id of this HsmPartitionSummary.
+ The OCID of the HSMCluster that contains a particular HSM resource.
+
+
+ :param hsm_cluster_id: The hsm_cluster_id of this HsmPartitionSummary.
+ :type: str
+ """
+ self._hsm_cluster_id = hsm_cluster_id
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this HsmPartitionSummary.
+ The Hsm's current lifecycle state.
+
+
+ :return: The lifecycle_state of this HsmPartitionSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this HsmPartitionSummary.
+ The Hsm's current lifecycle state.
+
+
+ :param lifecycle_state: The lifecycle_state of this HsmPartitionSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this HsmPartitionSummary.
+ The OCID of the compartment that contains a particular HSM resource.
+
+
+ :return: The compartment_id of this HsmPartitionSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this HsmPartitionSummary.
+ The OCID of the compartment that contains a particular HSM resource.
+
+
+ :param compartment_id: The compartment_id of this HsmPartitionSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def port_information(self):
+ """
+ **[Required]** Gets the port_information of this HsmPartitionSummary.
+ Port summary.
+
+
+ :return: The port_information of this HsmPartitionSummary.
+ :rtype: list[oci.key_management.models.PortInformation]
+ """
+ return self._port_information
+
+ @port_information.setter
+ def port_information(self, port_information):
+ """
+ Sets the port_information of this HsmPartitionSummary.
+ Port summary.
+
+
+ :param port_information: The port_information of this HsmPartitionSummary.
+ :type: list[oci.key_management.models.PortInformation]
+ """
+ self._port_information = port_information
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this HsmPartitionSummary.
+ The date and time an HSM was created, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this HsmPartitionSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this HsmPartitionSummary.
+ The date and time an HSM was created, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this HsmPartitionSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this HsmPartitionSummary.
+ The date and time an HSM was updated, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this HsmPartitionSummary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this HsmPartitionSummary.
+ The date and time an HSM was updated, expressed in `RFC 3339`__ timestamp format.
+
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this HsmPartitionSummary.
+ :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/key_management/models/port_information.py b/src/oci/key_management/models/port_information.py
new file mode 100644
index 0000000000..209ecf81b9
--- /dev/null
+++ b/src/oci/key_management/models/port_information.py
@@ -0,0 +1,119 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PortInformation(object):
+ """
+ The details of the port.
+ """
+
+ #: A constant which can be used with the port_type property of a PortInformation.
+ #: This constant has a value of "CLIENTUTILITY"
+ PORT_TYPE_CLIENTUTILITY = "CLIENTUTILITY"
+
+ #: A constant which can be used with the port_type property of a PortInformation.
+ #: This constant has a value of "MANAGEMENTUTILITY"
+ PORT_TYPE_MANAGEMENTUTILITY = "MANAGEMENTUTILITY"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PortInformation object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param port_number:
+ The value to assign to the port_number property of this PortInformation.
+ :type port_number: int
+
+ :param port_type:
+ The value to assign to the port_type property of this PortInformation.
+ Allowed values for this property are: "CLIENTUTILITY", "MANAGEMENTUTILITY", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type port_type: str
+
+ """
+ self.swagger_types = {
+ 'port_number': 'int',
+ 'port_type': 'str'
+ }
+
+ self.attribute_map = {
+ 'port_number': 'portNumber',
+ 'port_type': 'portType'
+ }
+
+ self._port_number = None
+ self._port_type = None
+
+ @property
+ def port_number(self):
+ """
+ **[Required]** Gets the port_number of this PortInformation.
+ The port number of the cavium server.
+
+
+ :return: The port_number of this PortInformation.
+ :rtype: int
+ """
+ return self._port_number
+
+ @port_number.setter
+ def port_number(self, port_number):
+ """
+ Sets the port_number of this PortInformation.
+ The port number of the cavium server.
+
+
+ :param port_number: The port_number of this PortInformation.
+ :type: int
+ """
+ self._port_number = port_number
+
+ @property
+ def port_type(self):
+ """
+ **[Required]** Gets the port_type of this PortInformation.
+ Port type associated for the port number.
+
+ Allowed values for this property are: "CLIENTUTILITY", "MANAGEMENTUTILITY", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The port_type of this PortInformation.
+ :rtype: str
+ """
+ return self._port_type
+
+ @port_type.setter
+ def port_type(self, port_type):
+ """
+ Sets the port_type of this PortInformation.
+ Port type associated for the port number.
+
+
+ :param port_type: The port_type of this PortInformation.
+ :type: str
+ """
+ allowed_values = ["CLIENTUTILITY", "MANAGEMENTUTILITY"]
+ if not value_allowed_none_or_none_sentinel(port_type, allowed_values):
+ port_type = 'UNKNOWN_ENUM_VALUE'
+ self._port_type = port_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/key_management/models/pre_co_user_credentials.py b/src/oci/key_management/models/pre_co_user_credentials.py
new file mode 100644
index 0000000000..7580b09804
--- /dev/null
+++ b/src/oci/key_management/models/pre_co_user_credentials.py
@@ -0,0 +1,103 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PreCoUserCredentials(object):
+ """
+ Pre Crypto officer user credentials.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PreCoUserCredentials object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param username:
+ The value to assign to the username property of this PreCoUserCredentials.
+ :type username: str
+
+ :param password:
+ The value to assign to the password property of this PreCoUserCredentials.
+ :type password: str
+
+ """
+ self.swagger_types = {
+ 'username': 'str',
+ 'password': 'str'
+ }
+
+ self.attribute_map = {
+ 'username': 'username',
+ 'password': 'password'
+ }
+
+ self._username = None
+ self._password = None
+
+ @property
+ def username(self):
+ """
+ **[Required]** Gets the username of this PreCoUserCredentials.
+ The pre crypto officer username..
+
+
+ :return: The username of this PreCoUserCredentials.
+ :rtype: str
+ """
+ return self._username
+
+ @username.setter
+ def username(self, username):
+ """
+ Sets the username of this PreCoUserCredentials.
+ The pre crypto officer username..
+
+
+ :param username: The username of this PreCoUserCredentials.
+ :type: str
+ """
+ self._username = username
+
+ @property
+ def password(self):
+ """
+ **[Required]** Gets the password of this PreCoUserCredentials.
+ The base 64 encoded pre crypto officer password.
+
+
+ :return: The password of this PreCoUserCredentials.
+ :rtype: str
+ """
+ return self._password
+
+ @password.setter
+ def password(self, password):
+ """
+ Sets the password of this PreCoUserCredentials.
+ The base 64 encoded pre crypto officer password.
+
+
+ :param password: The password of this PreCoUserCredentials.
+ :type: str
+ """
+ self._password = password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/key_management/models/schedule_hsm_cluster_deletion_details.py b/src/oci/key_management/models/schedule_hsm_cluster_deletion_details.py
new file mode 100644
index 0000000000..674fa62452
--- /dev/null
+++ b/src/oci/key_management/models/schedule_hsm_cluster_deletion_details.py
@@ -0,0 +1,84 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ScheduleHsmClusterDeletionDetails(object):
+ """
+ Details for scheduling HSM resource deletion.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ScheduleHsmClusterDeletionDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param time_of_deletion:
+ The value to assign to the time_of_deletion property of this ScheduleHsmClusterDeletionDetails.
+ :type time_of_deletion: datetime
+
+ """
+ self.swagger_types = {
+ 'time_of_deletion': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'time_of_deletion': 'timeOfDeletion'
+ }
+
+ self._time_of_deletion = None
+
+ @property
+ def time_of_deletion(self):
+ """
+ Gets the time_of_deletion of this ScheduleHsmClusterDeletionDetails.
+ An optional property indicating when to delete the HsmCluster resource, expressed in
+ `RFC 3339`__ timestamp format. The specified
+ time must be between 7 and 30 days from the time when the request is received.
+ If this property is missing, it will be set to 30 days from the time of the request
+ by default.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_of_deletion of this ScheduleHsmClusterDeletionDetails.
+ :rtype: datetime
+ """
+ return self._time_of_deletion
+
+ @time_of_deletion.setter
+ def time_of_deletion(self, time_of_deletion):
+ """
+ Sets the time_of_deletion of this ScheduleHsmClusterDeletionDetails.
+ An optional property indicating when to delete the HsmCluster resource, expressed in
+ `RFC 3339`__ timestamp format. The specified
+ time must be between 7 and 30 days from the time when the request is received.
+ If this property is missing, it will be set to 30 days from the time of the request
+ by default.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_of_deletion: The time_of_deletion of this ScheduleHsmClusterDeletionDetails.
+ :type: datetime
+ """
+ self._time_of_deletion = time_of_deletion
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/key_management/models/sign_data_details.py b/src/oci/key_management/models/sign_data_details.py
index 1c9ae2c941..7b443b1a05 100644
--- a/src/oci/key_management/models/sign_data_details.py
+++ b/src/oci/key_management/models/sign_data_details.py
@@ -94,13 +94,18 @@ def __init__(self, **kwargs):
Allowed values for this property are: "SHA_224_RSA_PKCS_PSS", "SHA_256_RSA_PKCS_PSS", "SHA_384_RSA_PKCS_PSS", "SHA_512_RSA_PKCS_PSS", "SHA_224_RSA_PKCS1_V1_5", "SHA_256_RSA_PKCS1_V1_5", "SHA_384_RSA_PKCS1_V1_5", "SHA_512_RSA_PKCS1_V1_5", "ECDSA_SHA_256", "ECDSA_SHA_384", "ECDSA_SHA_512"
:type signing_algorithm: str
+ :param logging_context:
+ The value to assign to the logging_context property of this SignDataDetails.
+ :type logging_context: dict(str, str)
+
"""
self.swagger_types = {
'message': 'str',
'key_id': 'str',
'key_version_id': 'str',
'message_type': 'str',
- 'signing_algorithm': 'str'
+ 'signing_algorithm': 'str',
+ 'logging_context': 'dict(str, str)'
}
self.attribute_map = {
@@ -108,7 +113,8 @@ def __init__(self, **kwargs):
'key_id': 'keyId',
'key_version_id': 'keyVersionId',
'message_type': 'messageType',
- 'signing_algorithm': 'signingAlgorithm'
+ 'signing_algorithm': 'signingAlgorithm',
+ 'logging_context': 'loggingContext'
}
self._message = None
@@ -116,6 +122,7 @@ def __init__(self, **kwargs):
self._key_version_id = None
self._message_type = None
self._signing_algorithm = None
+ self._logging_context = None
@property
def message(self):
@@ -263,6 +270,32 @@ def signing_algorithm(self, signing_algorithm):
)
self._signing_algorithm = signing_algorithm
+ @property
+ def logging_context(self):
+ """
+ Gets the logging_context of this SignDataDetails.
+ Information that can be used to provide context for audit logging. It is a map that contains any additional
+ data that you provide to include with audit logs, if audit logging is enabled.
+
+
+ :return: The logging_context of this SignDataDetails.
+ :rtype: dict(str, str)
+ """
+ return self._logging_context
+
+ @logging_context.setter
+ def logging_context(self, logging_context):
+ """
+ Sets the logging_context of this SignDataDetails.
+ Information that can be used to provide context for audit logging. It is a map that contains any additional
+ data that you provide to include with audit logs, if audit logging is enabled.
+
+
+ :param logging_context: The logging_context of this SignDataDetails.
+ :type: dict(str, str)
+ """
+ self._logging_context = logging_context
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/key_management/models/update_hsm_cluster_details.py b/src/oci/key_management/models/update_hsm_cluster_details.py
new file mode 100644
index 0000000000..cfcc761d90
--- /dev/null
+++ b/src/oci/key_management/models/update_hsm_cluster_details.py
@@ -0,0 +1,152 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateHsmClusterDetails(object):
+ """
+ The details of the HsmCluster resource that you wish to update.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateHsmClusterDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this UpdateHsmClusterDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateHsmClusterDetails.
+ :type display_name: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this UpdateHsmClusterDetails.
+ :type freeform_tags: dict(str, str)
+
+ """
+ self.swagger_types = {
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'display_name': 'str',
+ 'freeform_tags': 'dict(str, str)'
+ }
+
+ self.attribute_map = {
+ 'defined_tags': 'definedTags',
+ 'display_name': 'displayName',
+ 'freeform_tags': 'freeformTags'
+ }
+
+ self._defined_tags = None
+ self._display_name = None
+ self._freeform_tags = None
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this UpdateHsmClusterDetails.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this UpdateHsmClusterDetails.
+ :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 UpdateHsmClusterDetails.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this UpdateHsmClusterDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateHsmClusterDetails.
+ A user-friendly name for the HSM resource. It does not have to be unique, and it is changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateHsmClusterDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateHsmClusterDetails.
+ A user-friendly name for the HSM resource. It does not have to be unique, and it is changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateHsmClusterDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this UpdateHsmClusterDetails.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this UpdateHsmClusterDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this UpdateHsmClusterDetails.
+ 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this UpdateHsmClusterDetails.
+ :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/key_management/models/upload_partition_certificates_details.py b/src/oci/key_management/models/upload_partition_certificates_details.py
new file mode 100644
index 0000000000..209e35344e
--- /dev/null
+++ b/src/oci/key_management/models/upload_partition_certificates_details.py
@@ -0,0 +1,103 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# 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.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UploadPartitionCertificatesDetails(object):
+ """
+ The details of the partition certificates.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UploadPartitionCertificatesDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param partition_certificate:
+ The value to assign to the partition_certificate property of this UploadPartitionCertificatesDetails.
+ :type partition_certificate: str
+
+ :param partition_owner_certificate:
+ The value to assign to the partition_owner_certificate property of this UploadPartitionCertificatesDetails.
+ :type partition_owner_certificate: str
+
+ """
+ self.swagger_types = {
+ 'partition_certificate': 'str',
+ 'partition_owner_certificate': 'str'
+ }
+
+ self.attribute_map = {
+ 'partition_certificate': 'partitionCertificate',
+ 'partition_owner_certificate': 'partitionOwnerCertificate'
+ }
+
+ self._partition_certificate = None
+ self._partition_owner_certificate = None
+
+ @property
+ def partition_certificate(self):
+ """
+ **[Required]** Gets the partition_certificate of this UploadPartitionCertificatesDetails.
+ Base64 encoded (StandardCharsets.UTF_8) Partition Certificate.
+
+
+ :return: The partition_certificate of this UploadPartitionCertificatesDetails.
+ :rtype: str
+ """
+ return self._partition_certificate
+
+ @partition_certificate.setter
+ def partition_certificate(self, partition_certificate):
+ """
+ Sets the partition_certificate of this UploadPartitionCertificatesDetails.
+ Base64 encoded (StandardCharsets.UTF_8) Partition Certificate.
+
+
+ :param partition_certificate: The partition_certificate of this UploadPartitionCertificatesDetails.
+ :type: str
+ """
+ self._partition_certificate = partition_certificate
+
+ @property
+ def partition_owner_certificate(self):
+ """
+ **[Required]** Gets the partition_owner_certificate of this UploadPartitionCertificatesDetails.
+ Base64 encoded (StandardCharsets.UTF_8) Partition Owner Certificate.
+
+
+ :return: The partition_owner_certificate of this UploadPartitionCertificatesDetails.
+ :rtype: str
+ """
+ return self._partition_owner_certificate
+
+ @partition_owner_certificate.setter
+ def partition_owner_certificate(self, partition_owner_certificate):
+ """
+ Sets the partition_owner_certificate of this UploadPartitionCertificatesDetails.
+ Base64 encoded (StandardCharsets.UTF_8) Partition Owner Certificate.
+
+
+ :param partition_owner_certificate: The partition_owner_certificate of this UploadPartitionCertificatesDetails.
+ :type: str
+ """
+ self._partition_owner_certificate = partition_owner_certificate
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/management_agent/management_agent_client.py b/src/oci/management_agent/management_agent_client.py
index 63bd60fa13..259e5b0a0e 100644
--- a/src/oci/management_agent/management_agent_client.py
+++ b/src/oci/management_agent/management_agent_client.py
@@ -117,6 +117,124 @@ def __init__(self, config, **kwargs):
self.retry_strategy = kwargs.get('retry_strategy')
self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback')
+ def create_data_source(self, management_agent_id, create_data_source_details, **kwargs):
+ """
+ Datasource creation request to given Management Agent.
+
+
+ :param str management_agent_id: (required)
+ Unique Management Agent identifier
+
+ :param oci.management_agent.models.CreateDataSourceDetails create_data_source_details: (required)
+ Details of DataSource to be created for the given Management Agent.
+
+ :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 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
+
+ :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 create_data_source API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['managementAgentId']
+ resource_path = "/managementAgents/{managementAgentId}/dataSources"
+ method = "POST"
+ operation_name = "create_data_source"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/management-agent/20200202/ManagementAgent/CreateDataSource"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"create_data_source got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "managementAgentId": management_agent_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=create_data_source_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_data_source_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
def create_management_agent_install_key(self, create_management_agent_install_key_details, **kwargs):
"""
User creates a new install key as part of this API.
@@ -213,6 +331,113 @@ def create_management_agent_install_key(self, create_management_agent_install_ke
api_reference_link=api_reference_link,
required_arguments=required_arguments)
+ def delete_data_source(self, management_agent_id, data_source_key, **kwargs):
+ """
+ Datasource delete request to given Management Agent.
+
+
+ :param str management_agent_id: (required)
+ Unique Management Agent identifier
+
+ :param str data_source_key: (required)
+ Data source type and name 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 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
+
+ :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_source API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['managementAgentId', 'dataSourceKey']
+ resource_path = "/managementAgents/{managementAgentId}/dataSources/{dataSourceKey}"
+ method = "DELETE"
+ operation_name = "delete_data_source"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/management-agent/20200202/ManagementAgent/DeleteDataSource"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_data_source got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "managementAgentId": management_agent_id,
+ "dataSourceKey": data_source_key
+ }
+
+ 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,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
def delete_management_agent(self, management_agent_id, **kwargs):
"""
Deletes a Management Agent resource by identifier
@@ -689,9 +914,119 @@ def get_auto_upgradable_config(self, compartment_id, **kwargs):
self.base_client.call_api,
resource_path=resource_path,
method=method,
- query_params=query_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="AutoUpgradableConfig",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="AutoUpgradableConfig",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def get_data_source(self, management_agent_id, data_source_key, **kwargs):
+ """
+ Get Datasource details for given Id and given Management Agent.
+
+
+ :param str management_agent_id: (required)
+ Unique Management Agent identifier
+
+ :param str data_source_key: (required)
+ Data source type and name 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 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.management_agent.models.DataSource`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use get_data_source API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['managementAgentId', 'dataSourceKey']
+ resource_path = "/managementAgents/{managementAgentId}/dataSources/{dataSourceKey}"
+ method = "GET"
+ operation_name = "get_data_source"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/management-agent/20200202/ManagementAgent/GetDataSource"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"get_data_source got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "managementAgentId": management_agent_id,
+ "dataSourceKey": data_source_key
+ }
+
+ 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)
+ }
+ 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="AutoUpgradableConfig",
+ response_type="DataSource",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -700,9 +1035,9 @@ def get_auto_upgradable_config(self, compartment_id, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="AutoUpgradableConfig",
+ response_type="DataSource",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1261,6 +1596,151 @@ def list_availability_histories(self, management_agent_id, **kwargs):
api_reference_link=api_reference_link,
required_arguments=required_arguments)
+ def list_data_sources(self, management_agent_id, **kwargs):
+ """
+ A list of Management Agent Data Sources for the given Management Agent Id.
+
+
+ :param str management_agent_id: (required)
+ Unique Management Agent identifier
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :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. If no value is specified dataSourceName is default.
+
+ Allowed values are: "dataSourceName", "dataSourceType"
+
+ :param list[str] name: (optional)
+ Unique name of the dataSource.
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.management_agent.models.DataSourceSummary`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_data_sources API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['managementAgentId']
+ resource_path = "/managementAgents/{managementAgentId}/dataSources"
+ method = "GET"
+ operation_name = "list_data_sources"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/management-agent/20200202/ManagementAgent/ListDataSources"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "opc_request_id",
+ "page",
+ "limit",
+ "sort_order",
+ "sort_by",
+ "name"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ f"list_data_sources got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "managementAgentId": management_agent_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 }"
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["dataSourceName", "dataSourceType"]
+ 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 = {
+ "page": kwargs.get("page", missing),
+ "limit": kwargs.get("limit", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "name": self.base_client.generate_collection_format_param(kwargs.get("name", 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="list[DataSourceSummary]",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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[DataSourceSummary]",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
def list_management_agent_images(self, compartment_id, **kwargs):
"""
Get supported agent image information
@@ -1827,6 +2307,14 @@ def list_management_agents(self, compartment_id, **kwargs):
:param str access_level: (optional)
When the value is \"ACCESSIBLE\", insufficient permissions for a compartment will filter out resources in that compartment without rejecting the request.
+ :param str data_source_type: (optional)
+ The type of the dataSource.
+
+ Allowed values are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+
+ :param list[str] data_source_name: (optional)
+ Unique name of the dataSource.
+
: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.
@@ -1872,7 +2360,9 @@ def list_management_agents(self, compartment_id, **kwargs):
"sort_by",
"opc_request_id",
"compartment_id_in_subtree",
- "access_level"
+ "access_level",
+ "data_source_type",
+ "data_source_name"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
@@ -1922,6 +2412,13 @@ def list_management_agents(self, compartment_id, **kwargs):
f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }"
)
+ if 'data_source_type' in kwargs:
+ data_source_type_allowed_values = ["KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"]
+ if kwargs['data_source_type'] not in data_source_type_allowed_values:
+ raise ValueError(
+ f"Invalid value for `data_source_type`, must be one of { data_source_type_allowed_values }"
+ )
+
query_params = {
"compartmentId": compartment_id,
"pluginName": self.base_client.generate_collection_format_param(kwargs.get("plugin_name", missing), 'multi'),
@@ -1939,7 +2436,9 @@ def list_management_agents(self, compartment_id, **kwargs):
"sortOrder": kwargs.get("sort_order", missing),
"sortBy": kwargs.get("sort_by", missing),
"compartmentIdInSubtree": kwargs.get("compartment_id_in_subtree", missing),
- "accessLevel": kwargs.get("access_level", missing)
+ "accessLevel": kwargs.get("access_level", missing),
+ "dataSourceType": kwargs.get("data_source_type", missing),
+ "dataSourceName": self.base_client.generate_collection_format_param(kwargs.get("data_source_name", missing), 'multi')
}
query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
@@ -2287,10 +2786,10 @@ def list_work_requests(self, compartment_id, **kwargs):
Allowed values are: "CREATED", "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED"
- :param str type: (optional)
+ :param list[str] type: (optional)
The OperationType of the workRequest
- Allowed values are: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE"
+ Allowed values are: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", "CREATE_DATA_SOURCE", "UPDATE_DATA_SOURCE", "DELETE_DATA_SOURCE"
:param datetime time_created_greater_than_or_equal_to: (optional)
Filter for items with timeCreated greater or equal to provided value.
@@ -2359,11 +2858,12 @@ def list_work_requests(self, compartment_id, **kwargs):
)
if 'type' in kwargs:
- type_allowed_values = ["DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE"]
- if kwargs['type'] not in type_allowed_values:
- raise ValueError(
- f"Invalid value for `type`, must be one of { type_allowed_values }"
- )
+ type_allowed_values = ["DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", "CREATE_DATA_SOURCE", "UPDATE_DATA_SOURCE", "DELETE_DATA_SOURCE"]
+ for type_item in kwargs['type']:
+ if type_item not in type_allowed_values:
+ raise ValueError(
+ f"Invalid value for `type`, must be one of { type_allowed_values }"
+ )
if 'sort_order' in kwargs:
sort_order_allowed_values = ["ASC", "DESC"]
@@ -2385,7 +2885,7 @@ def list_work_requests(self, compartment_id, **kwargs):
"page": kwargs.get("page", missing),
"limit": kwargs.get("limit", missing),
"status": kwargs.get("status", missing),
- "type": kwargs.get("type", missing),
+ "type": self.base_client.generate_collection_format_param(kwargs.get("type", missing), 'multi'),
"timeCreatedGreaterThanOrEqualTo": kwargs.get("time_created_greater_than_or_equal_to", missing),
"sortOrder": kwargs.get("sort_order", missing),
"sortBy": kwargs.get("sort_by", missing)
@@ -2776,6 +3276,128 @@ def summarize_management_agent_plugin_counts(self, compartment_id, group_by, **k
api_reference_link=api_reference_link,
required_arguments=required_arguments)
+ def update_data_source(self, management_agent_id, data_source_key, update_data_source_details, **kwargs):
+ """
+ Datasource update request to given Management Agent.
+
+
+ :param str management_agent_id: (required)
+ Unique Management Agent identifier
+
+ :param str data_source_key: (required)
+ Data source type and name identifier.
+
+ :param oci.management_agent.models.UpdateDataSourceDetails update_data_source_details: (required)
+ Details of DataSource to be update for the given Management Agent.
+
+ :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 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
+
+ :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_data_source API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['managementAgentId', 'dataSourceKey']
+ resource_path = "/managementAgents/{managementAgentId}/dataSources/{dataSourceKey}"
+ method = "PUT"
+ operation_name = "update_data_source"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/management-agent/20200202/ManagementAgent/UpdateDataSource"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_data_source got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "managementAgentId": management_agent_id,
+ "dataSourceKey": data_source_key
+ }
+
+ 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=update_data_source_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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_data_source_details,
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
def update_management_agent(self, management_agent_id, update_management_agent_details, **kwargs):
"""
API to update the console managed properties of the Management Agent.
diff --git a/src/oci/management_agent/management_agent_client_composite_operations.py b/src/oci/management_agent/management_agent_client_composite_operations.py
index 2bf93d3040..f4e4a19254 100644
--- a/src/oci/management_agent/management_agent_client_composite_operations.py
+++ b/src/oci/management_agent/management_agent_client_composite_operations.py
@@ -25,6 +25,48 @@ def __init__(self, client, **kwargs):
"""
self.client = client
+ def create_data_source_and_wait_for_state(self, management_agent_id, create_data_source_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.management_agent.ManagementAgentClient.create_data_source` and waits for the :py:class:`~oci.management_agent.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str management_agent_id: (required)
+ Unique Management Agent identifier
+
+ :param oci.management_agent.models.CreateDataSourceDetails create_data_source_details: (required)
+ Details of DataSource to be created for the given Management Agent.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.management_agent.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.management_agent.ManagementAgentClient.create_data_source`
+
+ :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_data_source(management_agent_id, create_data_source_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_management_agent_install_key_and_wait_for_state(self, create_management_agent_install_key_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
Calls :py:func:`~oci.management_agent.ManagementAgentClient.create_management_agent_install_key` and waits for the :py:class:`~oci.management_agent.models.ManagementAgentInstallKey` acted upon
@@ -67,6 +109,56 @@ def create_management_agent_install_key_and_wait_for_state(self, create_manageme
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+ def delete_data_source_and_wait_for_state(self, management_agent_id, data_source_key, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.management_agent.ManagementAgentClient.delete_data_source` and waits for the :py:class:`~oci.management_agent.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str management_agent_id: (required)
+ Unique Management Agent identifier
+
+ :param str data_source_key: (required)
+ Data source type and name identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.management_agent.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.management_agent.ManagementAgentClient.delete_data_source`
+
+ :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_data_source(management_agent_id, data_source_key, **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_management_agent_and_wait_for_state(self, management_agent_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
Calls :py:func:`~oci.management_agent.ManagementAgentClient.delete_management_agent` and waits for the :py:class:`~oci.management_agent.models.ManagementAgent` acted upon
@@ -224,6 +316,51 @@ def deploy_plugins_and_wait_for_state(self, deploy_plugins_details, wait_for_sta
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+ def update_data_source_and_wait_for_state(self, management_agent_id, data_source_key, update_data_source_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.management_agent.ManagementAgentClient.update_data_source` and waits for the :py:class:`~oci.management_agent.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str management_agent_id: (required)
+ Unique Management Agent identifier
+
+ :param str data_source_key: (required)
+ Data source type and name identifier.
+
+ :param oci.management_agent.models.UpdateDataSourceDetails update_data_source_details: (required)
+ Details of DataSource to be update for the given Management Agent.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.management_agent.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.management_agent.ManagementAgentClient.update_data_source`
+
+ :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_data_source(management_agent_id, data_source_key, update_data_source_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_management_agent_and_wait_for_state(self, management_agent_id, update_management_agent_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
Calls :py:func:`~oci.management_agent.ManagementAgentClient.update_management_agent` and waits for the :py:class:`~oci.management_agent.models.ManagementAgent` acted upon
diff --git a/src/oci/management_agent/models/__init__.py b/src/oci/management_agent/models/__init__.py
index eb1bade7a0..6f09aef236 100644
--- a/src/oci/management_agent/models/__init__.py
+++ b/src/oci/management_agent/models/__init__.py
@@ -8,8 +8,16 @@
from .auto_upgradable_config import AutoUpgradableConfig
from .availability_history_summary import AvailabilityHistorySummary
+from .create_data_source_details import CreateDataSourceDetails
from .create_management_agent_install_key_details import CreateManagementAgentInstallKeyDetails
+from .create_prometheus_emitter_data_source_details import CreatePrometheusEmitterDataSourceDetails
+from .data_source import DataSource
+from .data_source_summary import DataSourceSummary
+from .data_source_summary_item import DataSourceSummaryItem
from .deploy_plugins_details import DeployPluginsDetails
+from .kubernetes_cluster_data_source import KubernetesClusterDataSource
+from .kubernetes_cluster_data_source_summary import KubernetesClusterDataSourceSummary
+from .kubernetes_cluster_data_source_summary_item import KubernetesClusterDataSourceSummaryItem
from .management_agent import ManagementAgent
from .management_agent_aggregation import ManagementAgentAggregation
from .management_agent_aggregation_collection import ManagementAgentAggregationCollection
@@ -27,10 +35,16 @@
from .management_agent_plugin_summary import ManagementAgentPluginSummary
from .management_agent_property import ManagementAgentProperty
from .management_agent_summary import ManagementAgentSummary
+from .metric_dimension import MetricDimension
from .object_details import ObjectDetails
+from .prometheus_emitter_data_source import PrometheusEmitterDataSource
+from .prometheus_emitter_data_source_summary import PrometheusEmitterDataSourceSummary
+from .prometheus_emitter_data_source_summary_item import PrometheusEmitterDataSourceSummaryItem
from .set_auto_upgradable_config_details import SetAutoUpgradableConfigDetails
+from .update_data_source_details import UpdateDataSourceDetails
from .update_management_agent_details import UpdateManagementAgentDetails
from .update_management_agent_install_key_details import UpdateManagementAgentInstallKeyDetails
+from .update_prometheus_emitter_data_source_details import UpdatePrometheusEmitterDataSourceDetails
from .work_request import WorkRequest
from .work_request_error import WorkRequestError
from .work_request_log_entry import WorkRequestLogEntry
@@ -42,8 +56,16 @@
management_agent_type_mapping = {
"AutoUpgradableConfig": AutoUpgradableConfig,
"AvailabilityHistorySummary": AvailabilityHistorySummary,
+ "CreateDataSourceDetails": CreateDataSourceDetails,
"CreateManagementAgentInstallKeyDetails": CreateManagementAgentInstallKeyDetails,
+ "CreatePrometheusEmitterDataSourceDetails": CreatePrometheusEmitterDataSourceDetails,
+ "DataSource": DataSource,
+ "DataSourceSummary": DataSourceSummary,
+ "DataSourceSummaryItem": DataSourceSummaryItem,
"DeployPluginsDetails": DeployPluginsDetails,
+ "KubernetesClusterDataSource": KubernetesClusterDataSource,
+ "KubernetesClusterDataSourceSummary": KubernetesClusterDataSourceSummary,
+ "KubernetesClusterDataSourceSummaryItem": KubernetesClusterDataSourceSummaryItem,
"ManagementAgent": ManagementAgent,
"ManagementAgentAggregation": ManagementAgentAggregation,
"ManagementAgentAggregationCollection": ManagementAgentAggregationCollection,
@@ -61,10 +83,16 @@
"ManagementAgentPluginSummary": ManagementAgentPluginSummary,
"ManagementAgentProperty": ManagementAgentProperty,
"ManagementAgentSummary": ManagementAgentSummary,
+ "MetricDimension": MetricDimension,
"ObjectDetails": ObjectDetails,
+ "PrometheusEmitterDataSource": PrometheusEmitterDataSource,
+ "PrometheusEmitterDataSourceSummary": PrometheusEmitterDataSourceSummary,
+ "PrometheusEmitterDataSourceSummaryItem": PrometheusEmitterDataSourceSummaryItem,
"SetAutoUpgradableConfigDetails": SetAutoUpgradableConfigDetails,
+ "UpdateDataSourceDetails": UpdateDataSourceDetails,
"UpdateManagementAgentDetails": UpdateManagementAgentDetails,
"UpdateManagementAgentInstallKeyDetails": UpdateManagementAgentInstallKeyDetails,
+ "UpdatePrometheusEmitterDataSourceDetails": UpdatePrometheusEmitterDataSourceDetails,
"WorkRequest": WorkRequest,
"WorkRequestError": WorkRequestError,
"WorkRequestLogEntry": WorkRequestLogEntry,
diff --git a/src/oci/management_agent/models/create_data_source_details.py b/src/oci/management_agent/models/create_data_source_details.py
new file mode 100644
index 0000000000..00397432d9
--- /dev/null
+++ b/src/oci/management_agent/models/create_data_source_details.py
@@ -0,0 +1,167 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateDataSourceDetails(object):
+ """
+ A new data source.
+ """
+
+ #: A constant which can be used with the type property of a CreateDataSourceDetails.
+ #: This constant has a value of "KUBERNETES_CLUSTER"
+ TYPE_KUBERNETES_CLUSTER = "KUBERNETES_CLUSTER"
+
+ #: A constant which can be used with the type property of a CreateDataSourceDetails.
+ #: This constant has a value of "PROMETHEUS_EMITTER"
+ TYPE_PROMETHEUS_EMITTER = "PROMETHEUS_EMITTER"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateDataSourceDetails 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.management_agent.models.CreatePrometheusEmitterDataSourceDetails`
+
+ 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 CreateDataSourceDetails.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this CreateDataSourceDetails.
+ :type name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this CreateDataSourceDetails.
+ :type compartment_id: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'name': 'str',
+ 'compartment_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'name': 'name',
+ 'compartment_id': 'compartmentId'
+ }
+
+ self._type = None
+ self._name = None
+ self._compartment_id = 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['type']
+
+ if type == 'PROMETHEUS_EMITTER':
+ return 'CreatePrometheusEmitterDataSourceDetails'
+ else:
+ return 'CreateDataSourceDetails'
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this CreateDataSourceDetails.
+ The type of the DataSource.
+
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+
+
+ :return: The type of this CreateDataSourceDetails.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this CreateDataSourceDetails.
+ The type of the DataSource.
+
+
+ :param type: The type of this CreateDataSourceDetails.
+ :type: str
+ """
+ allowed_values = ["KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"]
+ 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}"
+ )
+ self._type = type
+
+ @property
+ def name(self):
+ """
+ **[Required]** Gets the name of this CreateDataSourceDetails.
+ Unique name of the DataSource.
+
+
+ :return: The name of this CreateDataSourceDetails.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this CreateDataSourceDetails.
+ Unique name of the DataSource.
+
+
+ :param name: The name of this CreateDataSourceDetails.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreateDataSourceDetails.
+ Compartment owning this DataSource.
+
+
+ :return: The compartment_id of this CreateDataSourceDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreateDataSourceDetails.
+ Compartment owning this DataSource.
+
+
+ :param compartment_id: The compartment_id of this CreateDataSourceDetails.
+ :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/management_agent/models/create_prometheus_emitter_data_source_details.py b/src/oci/management_agent/models/create_prometheus_emitter_data_source_details.py
new file mode 100644
index 0000000000..4b161058c3
--- /dev/null
+++ b/src/oci/management_agent/models/create_prometheus_emitter_data_source_details.py
@@ -0,0 +1,375 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+from .create_data_source_details import CreateDataSourceDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreatePrometheusEmitterDataSourceDetails(CreateDataSourceDetails):
+ """
+ A Prometheus emitter data source.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreatePrometheusEmitterDataSourceDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.management_agent.models.CreatePrometheusEmitterDataSourceDetails.type` attribute
+ of this class is ``PROMETHEUS_EMITTER`` 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 CreatePrometheusEmitterDataSourceDetails.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this CreatePrometheusEmitterDataSourceDetails.
+ :type name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this CreatePrometheusEmitterDataSourceDetails.
+ :type compartment_id: str
+
+ :param url:
+ The value to assign to the url property of this CreatePrometheusEmitterDataSourceDetails.
+ :type url: str
+
+ :param namespace:
+ The value to assign to the namespace property of this CreatePrometheusEmitterDataSourceDetails.
+ :type namespace: str
+
+ :param allow_metrics:
+ The value to assign to the allow_metrics property of this CreatePrometheusEmitterDataSourceDetails.
+ :type allow_metrics: str
+
+ :param proxy_url:
+ The value to assign to the proxy_url property of this CreatePrometheusEmitterDataSourceDetails.
+ :type proxy_url: str
+
+ :param connection_timeout:
+ The value to assign to the connection_timeout property of this CreatePrometheusEmitterDataSourceDetails.
+ :type connection_timeout: int
+
+ :param read_timeout:
+ The value to assign to the read_timeout property of this CreatePrometheusEmitterDataSourceDetails.
+ :type read_timeout: int
+
+ :param read_data_limit_in_kilobytes:
+ The value to assign to the read_data_limit_in_kilobytes property of this CreatePrometheusEmitterDataSourceDetails.
+ :type read_data_limit_in_kilobytes: int
+
+ :param schedule_mins:
+ The value to assign to the schedule_mins property of this CreatePrometheusEmitterDataSourceDetails.
+ :type schedule_mins: int
+
+ :param resource_group:
+ The value to assign to the resource_group property of this CreatePrometheusEmitterDataSourceDetails.
+ :type resource_group: str
+
+ :param metric_dimensions:
+ The value to assign to the metric_dimensions property of this CreatePrometheusEmitterDataSourceDetails.
+ :type metric_dimensions: list[oci.management_agent.models.MetricDimension]
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'name': 'str',
+ 'compartment_id': 'str',
+ 'url': 'str',
+ 'namespace': 'str',
+ 'allow_metrics': 'str',
+ 'proxy_url': 'str',
+ 'connection_timeout': 'int',
+ 'read_timeout': 'int',
+ 'read_data_limit_in_kilobytes': 'int',
+ 'schedule_mins': 'int',
+ 'resource_group': 'str',
+ 'metric_dimensions': 'list[MetricDimension]'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'name': 'name',
+ 'compartment_id': 'compartmentId',
+ 'url': 'url',
+ 'namespace': 'namespace',
+ 'allow_metrics': 'allowMetrics',
+ 'proxy_url': 'proxyUrl',
+ 'connection_timeout': 'connectionTimeout',
+ 'read_timeout': 'readTimeout',
+ 'read_data_limit_in_kilobytes': 'readDataLimitInKilobytes',
+ 'schedule_mins': 'scheduleMins',
+ 'resource_group': 'resourceGroup',
+ 'metric_dimensions': 'metricDimensions'
+ }
+
+ self._type = None
+ self._name = None
+ self._compartment_id = None
+ self._url = None
+ self._namespace = None
+ self._allow_metrics = None
+ self._proxy_url = None
+ self._connection_timeout = None
+ self._read_timeout = None
+ self._read_data_limit_in_kilobytes = None
+ self._schedule_mins = None
+ self._resource_group = None
+ self._metric_dimensions = None
+ self._type = 'PROMETHEUS_EMITTER'
+
+ @property
+ def url(self):
+ """
+ **[Required]** Gets the url of this CreatePrometheusEmitterDataSourceDetails.
+ The url through which the Prometheus Exporter publishes its metrics. (http only)
+
+
+ :return: The url of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: str
+ """
+ return self._url
+
+ @url.setter
+ def url(self, url):
+ """
+ Sets the url of this CreatePrometheusEmitterDataSourceDetails.
+ The url through which the Prometheus Exporter publishes its metrics. (http only)
+
+
+ :param url: The url of this CreatePrometheusEmitterDataSourceDetails.
+ :type: str
+ """
+ self._url = url
+
+ @property
+ def namespace(self):
+ """
+ **[Required]** Gets the namespace of this CreatePrometheusEmitterDataSourceDetails.
+ The OCI monitoring namespace to which scraped metrics should be uploaded.
+
+
+ :return: The namespace of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: str
+ """
+ return self._namespace
+
+ @namespace.setter
+ def namespace(self, namespace):
+ """
+ Sets the namespace of this CreatePrometheusEmitterDataSourceDetails.
+ The OCI monitoring namespace to which scraped metrics should be uploaded.
+
+
+ :param namespace: The namespace of this CreatePrometheusEmitterDataSourceDetails.
+ :type: str
+ """
+ self._namespace = namespace
+
+ @property
+ def allow_metrics(self):
+ """
+ Gets the allow_metrics of this CreatePrometheusEmitterDataSourceDetails.
+ Comma separated metric name list. The complete set of desired scraped metrics. Use this property to limit the set of metrics uploaded if required.
+
+
+ :return: The allow_metrics of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: str
+ """
+ return self._allow_metrics
+
+ @allow_metrics.setter
+ def allow_metrics(self, allow_metrics):
+ """
+ Sets the allow_metrics of this CreatePrometheusEmitterDataSourceDetails.
+ Comma separated metric name list. The complete set of desired scraped metrics. Use this property to limit the set of metrics uploaded if required.
+
+
+ :param allow_metrics: The allow_metrics of this CreatePrometheusEmitterDataSourceDetails.
+ :type: str
+ """
+ self._allow_metrics = allow_metrics
+
+ @property
+ def proxy_url(self):
+ """
+ Gets the proxy_url of this CreatePrometheusEmitterDataSourceDetails.
+ The url of the network proxy that provides access to the Prometheus Exporter's endpoint (url required property).
+
+
+ :return: The proxy_url of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: str
+ """
+ return self._proxy_url
+
+ @proxy_url.setter
+ def proxy_url(self, proxy_url):
+ """
+ Sets the proxy_url of this CreatePrometheusEmitterDataSourceDetails.
+ The url of the network proxy that provides access to the Prometheus Exporter's endpoint (url required property).
+
+
+ :param proxy_url: The proxy_url of this CreatePrometheusEmitterDataSourceDetails.
+ :type: str
+ """
+ self._proxy_url = proxy_url
+
+ @property
+ def connection_timeout(self):
+ """
+ Gets the connection_timeout of this CreatePrometheusEmitterDataSourceDetails.
+ Number in milliseconds. The timeout for connecting to the Prometheus Exporter's endpoint.
+
+
+ :return: The connection_timeout of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: int
+ """
+ return self._connection_timeout
+
+ @connection_timeout.setter
+ def connection_timeout(self, connection_timeout):
+ """
+ Sets the connection_timeout of this CreatePrometheusEmitterDataSourceDetails.
+ Number in milliseconds. The timeout for connecting to the Prometheus Exporter's endpoint.
+
+
+ :param connection_timeout: The connection_timeout of this CreatePrometheusEmitterDataSourceDetails.
+ :type: int
+ """
+ self._connection_timeout = connection_timeout
+
+ @property
+ def read_timeout(self):
+ """
+ Gets the read_timeout of this CreatePrometheusEmitterDataSourceDetails.
+ Number in milliseconds. The timeout for reading the response from the Prometheus Exporter's endpoint.
+
+
+ :return: The read_timeout of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: int
+ """
+ return self._read_timeout
+
+ @read_timeout.setter
+ def read_timeout(self, read_timeout):
+ """
+ Sets the read_timeout of this CreatePrometheusEmitterDataSourceDetails.
+ Number in milliseconds. The timeout for reading the response from the Prometheus Exporter's endpoint.
+
+
+ :param read_timeout: The read_timeout of this CreatePrometheusEmitterDataSourceDetails.
+ :type: int
+ """
+ self._read_timeout = read_timeout
+
+ @property
+ def read_data_limit_in_kilobytes(self):
+ """
+ Gets the read_data_limit_in_kilobytes of this CreatePrometheusEmitterDataSourceDetails.
+ Number in kilobytes. The limit on the data being sent, not to exceed the agent's fixed limit of 400 (KB).
+
+
+ :return: The read_data_limit_in_kilobytes of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: int
+ """
+ return self._read_data_limit_in_kilobytes
+
+ @read_data_limit_in_kilobytes.setter
+ def read_data_limit_in_kilobytes(self, read_data_limit_in_kilobytes):
+ """
+ Sets the read_data_limit_in_kilobytes of this CreatePrometheusEmitterDataSourceDetails.
+ Number in kilobytes. The limit on the data being sent, not to exceed the agent's fixed limit of 400 (KB).
+
+
+ :param read_data_limit_in_kilobytes: The read_data_limit_in_kilobytes of this CreatePrometheusEmitterDataSourceDetails.
+ :type: int
+ """
+ self._read_data_limit_in_kilobytes = read_data_limit_in_kilobytes
+
+ @property
+ def schedule_mins(self):
+ """
+ Gets the schedule_mins of this CreatePrometheusEmitterDataSourceDetails.
+ Number in minutes. The scraping occurs at the specified interval.
+
+
+ :return: The schedule_mins of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: int
+ """
+ return self._schedule_mins
+
+ @schedule_mins.setter
+ def schedule_mins(self, schedule_mins):
+ """
+ Sets the schedule_mins of this CreatePrometheusEmitterDataSourceDetails.
+ Number in minutes. The scraping occurs at the specified interval.
+
+
+ :param schedule_mins: The schedule_mins of this CreatePrometheusEmitterDataSourceDetails.
+ :type: int
+ """
+ self._schedule_mins = schedule_mins
+
+ @property
+ def resource_group(self):
+ """
+ Gets the resource_group of this CreatePrometheusEmitterDataSourceDetails.
+ OCI monitoring resource group to assign the metric to.
+
+
+ :return: The resource_group of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: str
+ """
+ return self._resource_group
+
+ @resource_group.setter
+ def resource_group(self, resource_group):
+ """
+ Sets the resource_group of this CreatePrometheusEmitterDataSourceDetails.
+ OCI monitoring resource group to assign the metric to.
+
+
+ :param resource_group: The resource_group of this CreatePrometheusEmitterDataSourceDetails.
+ :type: str
+ """
+ self._resource_group = resource_group
+
+ @property
+ def metric_dimensions(self):
+ """
+ Gets the metric_dimensions of this CreatePrometheusEmitterDataSourceDetails.
+ The names of other user-supplied properties expressed as fixed values to be used as dimensions for every uploaded datapoint.
+
+
+ :return: The metric_dimensions of this CreatePrometheusEmitterDataSourceDetails.
+ :rtype: list[oci.management_agent.models.MetricDimension]
+ """
+ return self._metric_dimensions
+
+ @metric_dimensions.setter
+ def metric_dimensions(self, metric_dimensions):
+ """
+ Sets the metric_dimensions of this CreatePrometheusEmitterDataSourceDetails.
+ The names of other user-supplied properties expressed as fixed values to be used as dimensions for every uploaded datapoint.
+
+
+ :param metric_dimensions: The metric_dimensions of this CreatePrometheusEmitterDataSourceDetails.
+ :type: list[oci.management_agent.models.MetricDimension]
+ """
+ self._metric_dimensions = metric_dimensions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/management_agent/models/data_source.py b/src/oci/management_agent/models/data_source.py
new file mode 100644
index 0000000000..a02f70b3eb
--- /dev/null
+++ b/src/oci/management_agent/models/data_source.py
@@ -0,0 +1,335 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataSource(object):
+ """
+ A representation of a source configuration setup in the Management Agent.
+ """
+
+ #: A constant which can be used with the type property of a DataSource.
+ #: This constant has a value of "KUBERNETES_CLUSTER"
+ TYPE_KUBERNETES_CLUSTER = "KUBERNETES_CLUSTER"
+
+ #: A constant which can be used with the type property of a DataSource.
+ #: This constant has a value of "PROMETHEUS_EMITTER"
+ TYPE_PROMETHEUS_EMITTER = "PROMETHEUS_EMITTER"
+
+ #: A constant which can be used with the state property of a DataSource.
+ #: This constant has a value of "CREATING"
+ STATE_CREATING = "CREATING"
+
+ #: A constant which can be used with the state property of a DataSource.
+ #: This constant has a value of "UPDATING"
+ STATE_UPDATING = "UPDATING"
+
+ #: A constant which can be used with the state property of a DataSource.
+ #: This constant has a value of "ACTIVE"
+ STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the state property of a DataSource.
+ #: This constant has a value of "INACTIVE"
+ STATE_INACTIVE = "INACTIVE"
+
+ #: A constant which can be used with the state property of a DataSource.
+ #: This constant has a value of "TERMINATED"
+ STATE_TERMINATED = "TERMINATED"
+
+ #: A constant which can be used with the state property of a DataSource.
+ #: This constant has a value of "DELETING"
+ STATE_DELETING = "DELETING"
+
+ #: A constant which can be used with the state property of a DataSource.
+ #: This constant has a value of "DELETED"
+ STATE_DELETED = "DELETED"
+
+ #: A constant which can be used with the state property of a DataSource.
+ #: This constant has a value of "FAILED"
+ STATE_FAILED = "FAILED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataSource 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.management_agent.models.KubernetesClusterDataSource`
+ * :class:`~oci.management_agent.models.PrometheusEmitterDataSource`
+
+ 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 DataSource.
+ :type key: str
+
+ :param type:
+ The value to assign to the type property of this DataSource.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this DataSource.
+ :type name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this DataSource.
+ :type compartment_id: str
+
+ :param state:
+ The value to assign to the state property of this DataSource.
+ Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "INACTIVE", "TERMINATED", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this DataSource.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this DataSource.
+ :type time_updated: datetime
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'type': 'str',
+ 'name': 'str',
+ 'compartment_id': 'str',
+ 'state': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'type': 'type',
+ 'name': 'name',
+ 'compartment_id': 'compartmentId',
+ 'state': 'state',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated'
+ }
+
+ self._key = None
+ self._type = None
+ self._name = None
+ self._compartment_id = None
+ self._state = None
+ self._time_created = None
+ self._time_updated = 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['type']
+
+ if type == 'KUBERNETES_CLUSTER':
+ return 'KubernetesClusterDataSource'
+
+ if type == 'PROMETHEUS_EMITTER':
+ return 'PrometheusEmitterDataSource'
+ else:
+ return 'DataSource'
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this DataSource.
+ Identifier for DataSource. This represents the type and name for the data source associated with the Management Agent.
+
+
+ :return: The key of this DataSource.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this DataSource.
+ Identifier for DataSource. This represents the type and name for the data source associated with the Management Agent.
+
+
+ :param key: The key of this DataSource.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this DataSource.
+ The type of the DataSource.
+
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The type of this DataSource.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this DataSource.
+ The type of the DataSource.
+
+
+ :param type: The type of this DataSource.
+ :type: str
+ """
+ allowed_values = ["KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ type = 'UNKNOWN_ENUM_VALUE'
+ self._type = type
+
+ @property
+ def name(self):
+ """
+ **[Required]** Gets the name of this DataSource.
+ Unique name of the DataSource.
+
+
+ :return: The name of this DataSource.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this DataSource.
+ Unique name of the DataSource.
+
+
+ :param name: The name of this DataSource.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this DataSource.
+ Compartment owning this DataSource.
+
+
+ :return: The compartment_id of this DataSource.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this DataSource.
+ Compartment owning this DataSource.
+
+
+ :param compartment_id: The compartment_id of this DataSource.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def state(self):
+ """
+ **[Required]** Gets the state of this DataSource.
+ State of the DataSource.
+
+ Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "INACTIVE", "TERMINATED", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The state of this DataSource.
+ :rtype: str
+ """
+ return self._state
+
+ @state.setter
+ def state(self, state):
+ """
+ Sets the state of this DataSource.
+ State of the DataSource.
+
+
+ :param state: The state of this DataSource.
+ :type: str
+ """
+ allowed_values = ["CREATING", "UPDATING", "ACTIVE", "INACTIVE", "TERMINATED", "DELETING", "DELETED", "FAILED"]
+ if not value_allowed_none_or_none_sentinel(state, allowed_values):
+ state = 'UNKNOWN_ENUM_VALUE'
+ self._state = state
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this DataSource.
+ The time the DataSource was created. An RFC3339 formatted datetime string
+
+
+ :return: The time_created of this DataSource.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this DataSource.
+ The time the DataSource was created. An RFC3339 formatted datetime string
+
+
+ :param time_created: The time_created of this DataSource.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this DataSource.
+ The time the DataSource data was last received. An RFC3339 formatted datetime string
+
+
+ :return: The time_updated of this DataSource.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this DataSource.
+ The time the DataSource data was last received. An RFC3339 formatted datetime string
+
+
+ :param time_updated: The time_updated of this DataSource.
+ :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/management_agent/models/data_source_summary.py b/src/oci/management_agent/models/data_source_summary.py
new file mode 100644
index 0000000000..81218f0f63
--- /dev/null
+++ b/src/oci/management_agent/models/data_source_summary.py
@@ -0,0 +1,171 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataSourceSummary(object):
+ """
+ The information about the dataSources that agent is associated to.
+ """
+
+ #: A constant which can be used with the type property of a DataSourceSummary.
+ #: This constant has a value of "KUBERNETES_CLUSTER"
+ TYPE_KUBERNETES_CLUSTER = "KUBERNETES_CLUSTER"
+
+ #: A constant which can be used with the type property of a DataSourceSummary.
+ #: This constant has a value of "PROMETHEUS_EMITTER"
+ TYPE_PROMETHEUS_EMITTER = "PROMETHEUS_EMITTER"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataSourceSummary 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.management_agent.models.PrometheusEmitterDataSourceSummary`
+ * :class:`~oci.management_agent.models.KubernetesClusterDataSourceSummary`
+
+ 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 DataSourceSummary.
+ :type key: str
+
+ :param type:
+ The value to assign to the type property of this DataSourceSummary.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this DataSourceSummary.
+ :type name: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'type': 'str',
+ 'name': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'type': 'type',
+ 'name': 'name'
+ }
+
+ self._key = None
+ self._type = None
+ self._name = 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['type']
+
+ if type == 'PROMETHEUS_EMITTER':
+ return 'PrometheusEmitterDataSourceSummary'
+
+ if type == 'KUBERNETES_CLUSTER':
+ return 'KubernetesClusterDataSourceSummary'
+ else:
+ return 'DataSourceSummary'
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this DataSourceSummary.
+ Data source type and name identifier.
+
+
+ :return: The key of this DataSourceSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this DataSourceSummary.
+ Data source type and name identifier.
+
+
+ :param key: The key of this DataSourceSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this DataSourceSummary.
+ The type of the dataSource.
+
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The type of this DataSourceSummary.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this DataSourceSummary.
+ The type of the dataSource.
+
+
+ :param type: The type of this DataSourceSummary.
+ :type: str
+ """
+ allowed_values = ["KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ type = 'UNKNOWN_ENUM_VALUE'
+ self._type = type
+
+ @property
+ def name(self):
+ """
+ **[Required]** Gets the name of this DataSourceSummary.
+ Unique name of the dataSource.
+
+
+ :return: The name of this DataSourceSummary.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this DataSourceSummary.
+ Unique name of the dataSource.
+
+
+ :param name: The name of this DataSourceSummary.
+ :type: str
+ """
+ self._name = 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/management_agent/models/data_source_summary_item.py b/src/oci/management_agent/models/data_source_summary_item.py
new file mode 100644
index 0000000000..6bf09896f6
--- /dev/null
+++ b/src/oci/management_agent/models/data_source_summary_item.py
@@ -0,0 +1,171 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataSourceSummaryItem(object):
+ """
+ The information about the dataSources that agent is associated to.
+ """
+
+ #: A constant which can be used with the type property of a DataSourceSummaryItem.
+ #: This constant has a value of "KUBERNETES_CLUSTER"
+ TYPE_KUBERNETES_CLUSTER = "KUBERNETES_CLUSTER"
+
+ #: A constant which can be used with the type property of a DataSourceSummaryItem.
+ #: This constant has a value of "PROMETHEUS_EMITTER"
+ TYPE_PROMETHEUS_EMITTER = "PROMETHEUS_EMITTER"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataSourceSummaryItem 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.management_agent.models.PrometheusEmitterDataSourceSummaryItem`
+ * :class:`~oci.management_agent.models.KubernetesClusterDataSourceSummaryItem`
+
+ 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 DataSourceSummaryItem.
+ :type key: str
+
+ :param type:
+ The value to assign to the type property of this DataSourceSummaryItem.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this DataSourceSummaryItem.
+ :type name: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'type': 'str',
+ 'name': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'type': 'type',
+ 'name': 'name'
+ }
+
+ self._key = None
+ self._type = None
+ self._name = 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['type']
+
+ if type == 'PROMETHEUS_EMITTER':
+ return 'PrometheusEmitterDataSourceSummaryItem'
+
+ if type == 'KUBERNETES_CLUSTER':
+ return 'KubernetesClusterDataSourceSummaryItem'
+ else:
+ return 'DataSourceSummaryItem'
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this DataSourceSummaryItem.
+ Data source type and name identifier.
+
+
+ :return: The key of this DataSourceSummaryItem.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this DataSourceSummaryItem.
+ Data source type and name identifier.
+
+
+ :param key: The key of this DataSourceSummaryItem.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this DataSourceSummaryItem.
+ The type of the dataSource.
+
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The type of this DataSourceSummaryItem.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this DataSourceSummaryItem.
+ The type of the dataSource.
+
+
+ :param type: The type of this DataSourceSummaryItem.
+ :type: str
+ """
+ allowed_values = ["KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ type = 'UNKNOWN_ENUM_VALUE'
+ self._type = type
+
+ @property
+ def name(self):
+ """
+ **[Required]** Gets the name of this DataSourceSummaryItem.
+ Unique name of the dataSource.
+
+
+ :return: The name of this DataSourceSummaryItem.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this DataSourceSummaryItem.
+ Unique name of the dataSource.
+
+
+ :param name: The name of this DataSourceSummaryItem.
+ :type: str
+ """
+ self._name = 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/management_agent/models/kubernetes_cluster_data_source.py b/src/oci/management_agent/models/kubernetes_cluster_data_source.py
new file mode 100644
index 0000000000..8999acf48d
--- /dev/null
+++ b/src/oci/management_agent/models/kubernetes_cluster_data_source.py
@@ -0,0 +1,156 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+from .data_source import DataSource
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class KubernetesClusterDataSource(DataSource):
+ """
+ A Kubernetes cluster data source.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new KubernetesClusterDataSource object with values from keyword arguments. The default value of the :py:attr:`~oci.management_agent.models.KubernetesClusterDataSource.type` attribute
+ of this class is ``KUBERNETES_CLUSTER`` and it should not be changed.
+ 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 KubernetesClusterDataSource.
+ :type key: str
+
+ :param type:
+ The value to assign to the type property of this KubernetesClusterDataSource.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this KubernetesClusterDataSource.
+ :type name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this KubernetesClusterDataSource.
+ :type compartment_id: str
+
+ :param state:
+ The value to assign to the state property of this KubernetesClusterDataSource.
+ Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "INACTIVE", "TERMINATED", "DELETING", "DELETED", "FAILED"
+ :type state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this KubernetesClusterDataSource.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this KubernetesClusterDataSource.
+ :type time_updated: datetime
+
+ :param namespace:
+ The value to assign to the namespace property of this KubernetesClusterDataSource.
+ :type namespace: str
+
+ :param is_daemon_set:
+ The value to assign to the is_daemon_set property of this KubernetesClusterDataSource.
+ :type is_daemon_set: bool
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'type': 'str',
+ 'name': 'str',
+ 'compartment_id': 'str',
+ 'state': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'namespace': 'str',
+ 'is_daemon_set': 'bool'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'type': 'type',
+ 'name': 'name',
+ 'compartment_id': 'compartmentId',
+ 'state': 'state',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'namespace': 'namespace',
+ 'is_daemon_set': 'isDaemonSet'
+ }
+
+ self._key = None
+ self._type = None
+ self._name = None
+ self._compartment_id = None
+ self._state = None
+ self._time_created = None
+ self._time_updated = None
+ self._namespace = None
+ self._is_daemon_set = None
+ self._type = 'KUBERNETES_CLUSTER'
+
+ @property
+ def namespace(self):
+ """
+ **[Required]** Gets the namespace of this KubernetesClusterDataSource.
+ The Kubernetes namespace
+
+
+ :return: The namespace of this KubernetesClusterDataSource.
+ :rtype: str
+ """
+ return self._namespace
+
+ @namespace.setter
+ def namespace(self, namespace):
+ """
+ Sets the namespace of this KubernetesClusterDataSource.
+ The Kubernetes namespace
+
+
+ :param namespace: The namespace of this KubernetesClusterDataSource.
+ :type: str
+ """
+ self._namespace = namespace
+
+ @property
+ def is_daemon_set(self):
+ """
+ Gets the is_daemon_set of this KubernetesClusterDataSource.
+ If the Kubernetes cluster type is Daemon set then this will be set to true.
+
+
+ :return: The is_daemon_set of this KubernetesClusterDataSource.
+ :rtype: bool
+ """
+ return self._is_daemon_set
+
+ @is_daemon_set.setter
+ def is_daemon_set(self, is_daemon_set):
+ """
+ Sets the is_daemon_set of this KubernetesClusterDataSource.
+ If the Kubernetes cluster type is Daemon set then this will be set to true.
+
+
+ :param is_daemon_set: The is_daemon_set of this KubernetesClusterDataSource.
+ :type: bool
+ """
+ self._is_daemon_set = is_daemon_set
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/management_agent/models/kubernetes_cluster_data_source_summary.py b/src/oci/management_agent/models/kubernetes_cluster_data_source_summary.py
new file mode 100644
index 0000000000..e72267a76b
--- /dev/null
+++ b/src/oci/management_agent/models/kubernetes_cluster_data_source_summary.py
@@ -0,0 +1,96 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+from .data_source_summary import DataSourceSummary
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class KubernetesClusterDataSourceSummary(DataSourceSummary):
+ """
+ A Kubernetes collection data source summary.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new KubernetesClusterDataSourceSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.management_agent.models.KubernetesClusterDataSourceSummary.type` attribute
+ of this class is ``KUBERNETES_CLUSTER`` and it should not be changed.
+ 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 KubernetesClusterDataSourceSummary.
+ :type key: str
+
+ :param type:
+ The value to assign to the type property of this KubernetesClusterDataSourceSummary.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this KubernetesClusterDataSourceSummary.
+ :type name: str
+
+ :param is_daemon_set:
+ The value to assign to the is_daemon_set property of this KubernetesClusterDataSourceSummary.
+ :type is_daemon_set: bool
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'type': 'str',
+ 'name': 'str',
+ 'is_daemon_set': 'bool'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'type': 'type',
+ 'name': 'name',
+ 'is_daemon_set': 'isDaemonSet'
+ }
+
+ self._key = None
+ self._type = None
+ self._name = None
+ self._is_daemon_set = None
+ self._type = 'KUBERNETES_CLUSTER'
+
+ @property
+ def is_daemon_set(self):
+ """
+ Gets the is_daemon_set of this KubernetesClusterDataSourceSummary.
+ true if the Kubernetes cluster type is Daemon set
+
+
+ :return: The is_daemon_set of this KubernetesClusterDataSourceSummary.
+ :rtype: bool
+ """
+ return self._is_daemon_set
+
+ @is_daemon_set.setter
+ def is_daemon_set(self, is_daemon_set):
+ """
+ Sets the is_daemon_set of this KubernetesClusterDataSourceSummary.
+ true if the Kubernetes cluster type is Daemon set
+
+
+ :param is_daemon_set: The is_daemon_set of this KubernetesClusterDataSourceSummary.
+ :type: bool
+ """
+ self._is_daemon_set = is_daemon_set
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/management_agent/models/kubernetes_cluster_data_source_summary_item.py b/src/oci/management_agent/models/kubernetes_cluster_data_source_summary_item.py
new file mode 100644
index 0000000000..bc414aa9bf
--- /dev/null
+++ b/src/oci/management_agent/models/kubernetes_cluster_data_source_summary_item.py
@@ -0,0 +1,96 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+from .data_source_summary_item import DataSourceSummaryItem
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class KubernetesClusterDataSourceSummaryItem(DataSourceSummaryItem):
+ """
+ A Kubernetes collection data source summary.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new KubernetesClusterDataSourceSummaryItem object with values from keyword arguments. The default value of the :py:attr:`~oci.management_agent.models.KubernetesClusterDataSourceSummaryItem.type` attribute
+ of this class is ``KUBERNETES_CLUSTER`` and it should not be changed.
+ 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 KubernetesClusterDataSourceSummaryItem.
+ :type key: str
+
+ :param type:
+ The value to assign to the type property of this KubernetesClusterDataSourceSummaryItem.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this KubernetesClusterDataSourceSummaryItem.
+ :type name: str
+
+ :param is_daemon_set:
+ The value to assign to the is_daemon_set property of this KubernetesClusterDataSourceSummaryItem.
+ :type is_daemon_set: bool
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'type': 'str',
+ 'name': 'str',
+ 'is_daemon_set': 'bool'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'type': 'type',
+ 'name': 'name',
+ 'is_daemon_set': 'isDaemonSet'
+ }
+
+ self._key = None
+ self._type = None
+ self._name = None
+ self._is_daemon_set = None
+ self._type = 'KUBERNETES_CLUSTER'
+
+ @property
+ def is_daemon_set(self):
+ """
+ Gets the is_daemon_set of this KubernetesClusterDataSourceSummaryItem.
+ true if the Kubernetes cluster type is Daemon set
+
+
+ :return: The is_daemon_set of this KubernetesClusterDataSourceSummaryItem.
+ :rtype: bool
+ """
+ return self._is_daemon_set
+
+ @is_daemon_set.setter
+ def is_daemon_set(self, is_daemon_set):
+ """
+ Sets the is_daemon_set of this KubernetesClusterDataSourceSummaryItem.
+ true if the Kubernetes cluster type is Daemon set
+
+
+ :param is_daemon_set: The is_daemon_set of this KubernetesClusterDataSourceSummaryItem.
+ :type: bool
+ """
+ self._is_daemon_set = is_daemon_set
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/management_agent/models/management_agent.py b/src/oci/management_agent/models/management_agent.py
index 4dd02cc371..c896bdf80f 100644
--- a/src/oci/management_agent/models/management_agent.py
+++ b/src/oci/management_agent/models/management_agent.py
@@ -188,6 +188,10 @@ def __init__(self, **kwargs):
The value to assign to the management_agent_properties property of this ManagementAgent.
:type management_agent_properties: list[oci.management_agent.models.ManagementAgentProperty]
+ :param data_source_list:
+ The value to assign to the data_source_list property of this ManagementAgent.
+ :type data_source_list: list[oci.management_agent.models.DataSource]
+
:param freeform_tags:
The value to assign to the freeform_tags property of this ManagementAgent.
:type freeform_tags: dict(str, str)
@@ -221,6 +225,7 @@ def __init__(self, **kwargs):
'is_customer_deployed': 'bool',
'install_type': 'str',
'management_agent_properties': 'list[ManagementAgentProperty]',
+ 'data_source_list': 'list[DataSource]',
'freeform_tags': 'dict(str, str)',
'defined_tags': 'dict(str, dict(str, object))'
}
@@ -249,6 +254,7 @@ def __init__(self, **kwargs):
'is_customer_deployed': 'isCustomerDeployed',
'install_type': 'installType',
'management_agent_properties': 'managementAgentProperties',
+ 'data_source_list': 'dataSourceList',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags'
}
@@ -276,6 +282,7 @@ def __init__(self, **kwargs):
self._is_customer_deployed = None
self._install_type = None
self._management_agent_properties = None
+ self._data_source_list = None
self._freeform_tags = None
self._defined_tags = None
@@ -863,6 +870,30 @@ def management_agent_properties(self, management_agent_properties):
"""
self._management_agent_properties = management_agent_properties
+ @property
+ def data_source_list(self):
+ """
+ Gets the data_source_list of this ManagementAgent.
+ list of dataSources associated with the agent
+
+
+ :return: The data_source_list of this ManagementAgent.
+ :rtype: list[oci.management_agent.models.DataSource]
+ """
+ return self._data_source_list
+
+ @data_source_list.setter
+ def data_source_list(self, data_source_list):
+ """
+ Sets the data_source_list of this ManagementAgent.
+ list of dataSources associated with the agent
+
+
+ :param data_source_list: The data_source_list of this ManagementAgent.
+ :type: list[oci.management_agent.models.DataSource]
+ """
+ self._data_source_list = data_source_list
+
@property
def freeform_tags(self):
"""
diff --git a/src/oci/management_agent/models/management_agent_image.py b/src/oci/management_agent/models/management_agent_image.py
index f5bf0d0d48..dacf3acfde 100644
--- a/src/oci/management_agent/models/management_agent_image.py
+++ b/src/oci/management_agent/models/management_agent_image.py
@@ -55,6 +55,10 @@ class ManagementAgentImage(object):
#: This constant has a value of "M1"
PACKAGE_ARCHITECTURE_TYPE_M1 = "M1"
+ #: A constant which can be used with the package_architecture_type property of a ManagementAgentImage.
+ #: This constant has a value of "AARCH64"
+ PACKAGE_ARCHITECTURE_TYPE_AARCH64 = "AARCH64"
+
#: A constant which can be used with the lifecycle_state property of a ManagementAgentImage.
#: This constant has a value of "CREATING"
LIFECYCLE_STATE_CREATING = "CREATING"
@@ -112,7 +116,7 @@ def __init__(self, **kwargs):
:param package_architecture_type:
The value to assign to the package_architecture_type property of this ManagementAgentImage.
- Allowed values for this property are: "X86_64", "SPARC", "X86", "M1"
+ Allowed values for this property are: "X86_64", "SPARC", "X86", "M1", "AARCH64"
:type package_architecture_type: str
:param version:
@@ -297,7 +301,7 @@ def package_architecture_type(self):
Gets the package_architecture_type of this ManagementAgentImage.
The installation package target architecture type
- Allowed values for this property are: "X86_64", "SPARC", "X86", "M1"
+ Allowed values for this property are: "X86_64", "SPARC", "X86", "M1", "AARCH64"
:return: The package_architecture_type of this ManagementAgentImage.
@@ -315,7 +319,7 @@ def package_architecture_type(self, package_architecture_type):
:param package_architecture_type: The package_architecture_type of this ManagementAgentImage.
:type: str
"""
- allowed_values = ["X86_64", "SPARC", "X86", "M1"]
+ allowed_values = ["X86_64", "SPARC", "X86", "M1", "AARCH64"]
if not value_allowed_none_or_none_sentinel(package_architecture_type, allowed_values):
raise ValueError(
f"Invalid value for `package_architecture_type`, must be None or one of {allowed_values}"
diff --git a/src/oci/management_agent/models/management_agent_image_summary.py b/src/oci/management_agent/models/management_agent_image_summary.py
index af56f1d41b..8e5061b65d 100644
--- a/src/oci/management_agent/models/management_agent_image_summary.py
+++ b/src/oci/management_agent/models/management_agent_image_summary.py
@@ -55,6 +55,10 @@ class ManagementAgentImageSummary(object):
#: This constant has a value of "M1"
PACKAGE_ARCHITECTURE_TYPE_M1 = "M1"
+ #: A constant which can be used with the package_architecture_type property of a ManagementAgentImageSummary.
+ #: This constant has a value of "AARCH64"
+ PACKAGE_ARCHITECTURE_TYPE_AARCH64 = "AARCH64"
+
#: A constant which can be used with the lifecycle_state property of a ManagementAgentImageSummary.
#: This constant has a value of "CREATING"
LIFECYCLE_STATE_CREATING = "CREATING"
@@ -114,7 +118,7 @@ def __init__(self, **kwargs):
:param package_architecture_type:
The value to assign to the package_architecture_type property of this ManagementAgentImageSummary.
- Allowed values for this property are: "X86_64", "SPARC", "X86", "M1", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "X86_64", "SPARC", "X86", "M1", "AARCH64", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
:type package_architecture_type: str
@@ -299,7 +303,7 @@ def package_architecture_type(self):
Gets the package_architecture_type of this ManagementAgentImageSummary.
The installation package target architecture type
- Allowed values for this property are: "X86_64", "SPARC", "X86", "M1", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "X86_64", "SPARC", "X86", "M1", "AARCH64", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
@@ -318,7 +322,7 @@ def package_architecture_type(self, package_architecture_type):
:param package_architecture_type: The package_architecture_type of this ManagementAgentImageSummary.
:type: str
"""
- allowed_values = ["X86_64", "SPARC", "X86", "M1"]
+ allowed_values = ["X86_64", "SPARC", "X86", "M1", "AARCH64"]
if not value_allowed_none_or_none_sentinel(package_architecture_type, allowed_values):
package_architecture_type = 'UNKNOWN_ENUM_VALUE'
self._package_architecture_type = package_architecture_type
diff --git a/src/oci/management_agent/models/management_agent_summary.py b/src/oci/management_agent/models/management_agent_summary.py
index e430cca200..a5d9e8e34e 100644
--- a/src/oci/management_agent/models/management_agent_summary.py
+++ b/src/oci/management_agent/models/management_agent_summary.py
@@ -180,6 +180,10 @@ def __init__(self, **kwargs):
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
:type install_type: str
+ :param data_source_summary_list:
+ The value to assign to the data_source_summary_list property of this ManagementAgentSummary.
+ :type data_source_summary_list: list[oci.management_agent.models.DataSourceSummaryItem]
+
:param freeform_tags:
The value to assign to the freeform_tags property of this ManagementAgentSummary.
:type freeform_tags: dict(str, str)
@@ -211,6 +215,7 @@ def __init__(self, **kwargs):
'lifecycle_details': 'str',
'is_customer_deployed': 'bool',
'install_type': 'str',
+ 'data_source_summary_list': 'list[DataSourceSummaryItem]',
'freeform_tags': 'dict(str, str)',
'defined_tags': 'dict(str, dict(str, object))'
}
@@ -237,6 +242,7 @@ def __init__(self, **kwargs):
'lifecycle_details': 'lifecycleDetails',
'is_customer_deployed': 'isCustomerDeployed',
'install_type': 'installType',
+ 'data_source_summary_list': 'dataSourceSummaryList',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags'
}
@@ -262,6 +268,7 @@ def __init__(self, **kwargs):
self._lifecycle_details = None
self._is_customer_deployed = None
self._install_type = None
+ self._data_source_summary_list = None
self._freeform_tags = None
self._defined_tags = None
@@ -801,6 +808,30 @@ def install_type(self, install_type):
install_type = 'UNKNOWN_ENUM_VALUE'
self._install_type = install_type
+ @property
+ def data_source_summary_list(self):
+ """
+ Gets the data_source_summary_list of this ManagementAgentSummary.
+ list of dataSources summaries associated with the agent
+
+
+ :return: The data_source_summary_list of this ManagementAgentSummary.
+ :rtype: list[oci.management_agent.models.DataSourceSummaryItem]
+ """
+ return self._data_source_summary_list
+
+ @data_source_summary_list.setter
+ def data_source_summary_list(self, data_source_summary_list):
+ """
+ Sets the data_source_summary_list of this ManagementAgentSummary.
+ list of dataSources summaries associated with the agent
+
+
+ :param data_source_summary_list: The data_source_summary_list of this ManagementAgentSummary.
+ :type: list[oci.management_agent.models.DataSourceSummaryItem]
+ """
+ self._data_source_summary_list = data_source_summary_list
+
@property
def freeform_tags(self):
"""
diff --git a/src/oci/management_agent/models/metric_dimension.py b/src/oci/management_agent/models/metric_dimension.py
new file mode 100644
index 0000000000..c044a16549
--- /dev/null
+++ b/src/oci/management_agent/models/metric_dimension.py
@@ -0,0 +1,103 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class MetricDimension(object):
+ """
+ Metric Dimension item in name/value pair
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new MetricDimension 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 MetricDimension.
+ :type name: str
+
+ :param value:
+ The value to assign to the value property of this MetricDimension.
+ :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 MetricDimension.
+ Name of the metric dimension
+
+
+ :return: The name of this MetricDimension.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this MetricDimension.
+ Name of the metric dimension
+
+
+ :param name: The name of this MetricDimension.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def value(self):
+ """
+ **[Required]** Gets the value of this MetricDimension.
+ Value of the metric dimension
+
+
+ :return: The value of this MetricDimension.
+ :rtype: str
+ """
+ return self._value
+
+ @value.setter
+ def value(self, value):
+ """
+ Sets the value of this MetricDimension.
+ Value of the metric dimension
+
+
+ :param value: The value of this MetricDimension.
+ :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/management_agent/models/prometheus_emitter_data_source.py b/src/oci/management_agent/models/prometheus_emitter_data_source.py
new file mode 100644
index 0000000000..48097ebf2b
--- /dev/null
+++ b/src/oci/management_agent/models/prometheus_emitter_data_source.py
@@ -0,0 +1,404 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+from .data_source import DataSource
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrometheusEmitterDataSource(DataSource):
+ """
+ A Prometheus data source.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrometheusEmitterDataSource object with values from keyword arguments. The default value of the :py:attr:`~oci.management_agent.models.PrometheusEmitterDataSource.type` attribute
+ of this class is ``PROMETHEUS_EMITTER`` and it should not be changed.
+ 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 PrometheusEmitterDataSource.
+ :type key: str
+
+ :param type:
+ The value to assign to the type property of this PrometheusEmitterDataSource.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this PrometheusEmitterDataSource.
+ :type name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this PrometheusEmitterDataSource.
+ :type compartment_id: str
+
+ :param state:
+ The value to assign to the state property of this PrometheusEmitterDataSource.
+ Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "INACTIVE", "TERMINATED", "DELETING", "DELETED", "FAILED"
+ :type state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this PrometheusEmitterDataSource.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this PrometheusEmitterDataSource.
+ :type time_updated: datetime
+
+ :param url:
+ The value to assign to the url property of this PrometheusEmitterDataSource.
+ :type url: str
+
+ :param namespace:
+ The value to assign to the namespace property of this PrometheusEmitterDataSource.
+ :type namespace: str
+
+ :param allow_metrics:
+ The value to assign to the allow_metrics property of this PrometheusEmitterDataSource.
+ :type allow_metrics: str
+
+ :param proxy_url:
+ The value to assign to the proxy_url property of this PrometheusEmitterDataSource.
+ :type proxy_url: str
+
+ :param connection_timeout:
+ The value to assign to the connection_timeout property of this PrometheusEmitterDataSource.
+ :type connection_timeout: int
+
+ :param read_timeout:
+ The value to assign to the read_timeout property of this PrometheusEmitterDataSource.
+ :type read_timeout: int
+
+ :param read_data_limit:
+ The value to assign to the read_data_limit property of this PrometheusEmitterDataSource.
+ :type read_data_limit: int
+
+ :param schedule_mins:
+ The value to assign to the schedule_mins property of this PrometheusEmitterDataSource.
+ :type schedule_mins: int
+
+ :param resource_group:
+ The value to assign to the resource_group property of this PrometheusEmitterDataSource.
+ :type resource_group: str
+
+ :param metric_dimensions:
+ The value to assign to the metric_dimensions property of this PrometheusEmitterDataSource.
+ :type metric_dimensions: list[oci.management_agent.models.MetricDimension]
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'type': 'str',
+ 'name': 'str',
+ 'compartment_id': 'str',
+ 'state': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'url': 'str',
+ 'namespace': 'str',
+ 'allow_metrics': 'str',
+ 'proxy_url': 'str',
+ 'connection_timeout': 'int',
+ 'read_timeout': 'int',
+ 'read_data_limit': 'int',
+ 'schedule_mins': 'int',
+ 'resource_group': 'str',
+ 'metric_dimensions': 'list[MetricDimension]'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'type': 'type',
+ 'name': 'name',
+ 'compartment_id': 'compartmentId',
+ 'state': 'state',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'url': 'url',
+ 'namespace': 'namespace',
+ 'allow_metrics': 'allowMetrics',
+ 'proxy_url': 'proxyUrl',
+ 'connection_timeout': 'connectionTimeout',
+ 'read_timeout': 'readTimeout',
+ 'read_data_limit': 'readDataLimit',
+ 'schedule_mins': 'scheduleMins',
+ 'resource_group': 'resourceGroup',
+ 'metric_dimensions': 'metricDimensions'
+ }
+
+ self._key = None
+ self._type = None
+ self._name = None
+ self._compartment_id = None
+ self._state = None
+ self._time_created = None
+ self._time_updated = None
+ self._url = None
+ self._namespace = None
+ self._allow_metrics = None
+ self._proxy_url = None
+ self._connection_timeout = None
+ self._read_timeout = None
+ self._read_data_limit = None
+ self._schedule_mins = None
+ self._resource_group = None
+ self._metric_dimensions = None
+ self._type = 'PROMETHEUS_EMITTER'
+
+ @property
+ def url(self):
+ """
+ **[Required]** Gets the url of this PrometheusEmitterDataSource.
+ The url through which the Prometheus Exporter publishes its metrics. (http only)
+
+
+ :return: The url of this PrometheusEmitterDataSource.
+ :rtype: str
+ """
+ return self._url
+
+ @url.setter
+ def url(self, url):
+ """
+ Sets the url of this PrometheusEmitterDataSource.
+ The url through which the Prometheus Exporter publishes its metrics. (http only)
+
+
+ :param url: The url of this PrometheusEmitterDataSource.
+ :type: str
+ """
+ self._url = url
+
+ @property
+ def namespace(self):
+ """
+ **[Required]** Gets the namespace of this PrometheusEmitterDataSource.
+ The OCI monitoring namespace to which scraped metrics should be uploaded.
+
+
+ :return: The namespace of this PrometheusEmitterDataSource.
+ :rtype: str
+ """
+ return self._namespace
+
+ @namespace.setter
+ def namespace(self, namespace):
+ """
+ Sets the namespace of this PrometheusEmitterDataSource.
+ The OCI monitoring namespace to which scraped metrics should be uploaded.
+
+
+ :param namespace: The namespace of this PrometheusEmitterDataSource.
+ :type: str
+ """
+ self._namespace = namespace
+
+ @property
+ def allow_metrics(self):
+ """
+ Gets the allow_metrics of this PrometheusEmitterDataSource.
+ Comma separated metric name list. The complete set of desired scraped metrics. Use this property to limit the set of metrics uploaded if required.
+
+
+ :return: The allow_metrics of this PrometheusEmitterDataSource.
+ :rtype: str
+ """
+ return self._allow_metrics
+
+ @allow_metrics.setter
+ def allow_metrics(self, allow_metrics):
+ """
+ Sets the allow_metrics of this PrometheusEmitterDataSource.
+ Comma separated metric name list. The complete set of desired scraped metrics. Use this property to limit the set of metrics uploaded if required.
+
+
+ :param allow_metrics: The allow_metrics of this PrometheusEmitterDataSource.
+ :type: str
+ """
+ self._allow_metrics = allow_metrics
+
+ @property
+ def proxy_url(self):
+ """
+ Gets the proxy_url of this PrometheusEmitterDataSource.
+ The url of the network proxy that provides access to the Prometheus Exporter's endpoint (url required property).
+
+
+ :return: The proxy_url of this PrometheusEmitterDataSource.
+ :rtype: str
+ """
+ return self._proxy_url
+
+ @proxy_url.setter
+ def proxy_url(self, proxy_url):
+ """
+ Sets the proxy_url of this PrometheusEmitterDataSource.
+ The url of the network proxy that provides access to the Prometheus Exporter's endpoint (url required property).
+
+
+ :param proxy_url: The proxy_url of this PrometheusEmitterDataSource.
+ :type: str
+ """
+ self._proxy_url = proxy_url
+
+ @property
+ def connection_timeout(self):
+ """
+ Gets the connection_timeout of this PrometheusEmitterDataSource.
+ Number in milliseconds. The timeout for connecting to the Prometheus Exporter's endpoint.
+
+
+ :return: The connection_timeout of this PrometheusEmitterDataSource.
+ :rtype: int
+ """
+ return self._connection_timeout
+
+ @connection_timeout.setter
+ def connection_timeout(self, connection_timeout):
+ """
+ Sets the connection_timeout of this PrometheusEmitterDataSource.
+ Number in milliseconds. The timeout for connecting to the Prometheus Exporter's endpoint.
+
+
+ :param connection_timeout: The connection_timeout of this PrometheusEmitterDataSource.
+ :type: int
+ """
+ self._connection_timeout = connection_timeout
+
+ @property
+ def read_timeout(self):
+ """
+ Gets the read_timeout of this PrometheusEmitterDataSource.
+ Number in milliseconds. The timeout for reading the response from the Prometheus Exporter's endpoint.
+
+
+ :return: The read_timeout of this PrometheusEmitterDataSource.
+ :rtype: int
+ """
+ return self._read_timeout
+
+ @read_timeout.setter
+ def read_timeout(self, read_timeout):
+ """
+ Sets the read_timeout of this PrometheusEmitterDataSource.
+ Number in milliseconds. The timeout for reading the response from the Prometheus Exporter's endpoint.
+
+
+ :param read_timeout: The read_timeout of this PrometheusEmitterDataSource.
+ :type: int
+ """
+ self._read_timeout = read_timeout
+
+ @property
+ def read_data_limit(self):
+ """
+ Gets the read_data_limit of this PrometheusEmitterDataSource.
+ Number in kilobytes. The limit on the data being sent, not to exceed the agent's fixed limit of 400 (KB).
+
+
+ :return: The read_data_limit of this PrometheusEmitterDataSource.
+ :rtype: int
+ """
+ return self._read_data_limit
+
+ @read_data_limit.setter
+ def read_data_limit(self, read_data_limit):
+ """
+ Sets the read_data_limit of this PrometheusEmitterDataSource.
+ Number in kilobytes. The limit on the data being sent, not to exceed the agent's fixed limit of 400 (KB).
+
+
+ :param read_data_limit: The read_data_limit of this PrometheusEmitterDataSource.
+ :type: int
+ """
+ self._read_data_limit = read_data_limit
+
+ @property
+ def schedule_mins(self):
+ """
+ Gets the schedule_mins of this PrometheusEmitterDataSource.
+ Number in minutes. The scraping occurs at the specified interval.
+
+
+ :return: The schedule_mins of this PrometheusEmitterDataSource.
+ :rtype: int
+ """
+ return self._schedule_mins
+
+ @schedule_mins.setter
+ def schedule_mins(self, schedule_mins):
+ """
+ Sets the schedule_mins of this PrometheusEmitterDataSource.
+ Number in minutes. The scraping occurs at the specified interval.
+
+
+ :param schedule_mins: The schedule_mins of this PrometheusEmitterDataSource.
+ :type: int
+ """
+ self._schedule_mins = schedule_mins
+
+ @property
+ def resource_group(self):
+ """
+ Gets the resource_group of this PrometheusEmitterDataSource.
+ OCI monitoring resource group to assign the metric to.
+
+
+ :return: The resource_group of this PrometheusEmitterDataSource.
+ :rtype: str
+ """
+ return self._resource_group
+
+ @resource_group.setter
+ def resource_group(self, resource_group):
+ """
+ Sets the resource_group of this PrometheusEmitterDataSource.
+ OCI monitoring resource group to assign the metric to.
+
+
+ :param resource_group: The resource_group of this PrometheusEmitterDataSource.
+ :type: str
+ """
+ self._resource_group = resource_group
+
+ @property
+ def metric_dimensions(self):
+ """
+ Gets the metric_dimensions of this PrometheusEmitterDataSource.
+ The names of other user-supplied properties expressed as fixed values to be used as dimensions for every uploaded datapoint.
+
+
+ :return: The metric_dimensions of this PrometheusEmitterDataSource.
+ :rtype: list[oci.management_agent.models.MetricDimension]
+ """
+ return self._metric_dimensions
+
+ @metric_dimensions.setter
+ def metric_dimensions(self, metric_dimensions):
+ """
+ Sets the metric_dimensions of this PrometheusEmitterDataSource.
+ The names of other user-supplied properties expressed as fixed values to be used as dimensions for every uploaded datapoint.
+
+
+ :param metric_dimensions: The metric_dimensions of this PrometheusEmitterDataSource.
+ :type: list[oci.management_agent.models.MetricDimension]
+ """
+ self._metric_dimensions = metric_dimensions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/management_agent/models/prometheus_emitter_data_source_summary.py b/src/oci/management_agent/models/prometheus_emitter_data_source_summary.py
new file mode 100644
index 0000000000..ce675b432f
--- /dev/null
+++ b/src/oci/management_agent/models/prometheus_emitter_data_source_summary.py
@@ -0,0 +1,65 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+from .data_source_summary import DataSourceSummary
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrometheusEmitterDataSourceSummary(DataSourceSummary):
+ """
+ A Prometheus emitter data source summary.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrometheusEmitterDataSourceSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.management_agent.models.PrometheusEmitterDataSourceSummary.type` attribute
+ of this class is ``PROMETHEUS_EMITTER`` and it should not be changed.
+ 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 PrometheusEmitterDataSourceSummary.
+ :type key: str
+
+ :param type:
+ The value to assign to the type property of this PrometheusEmitterDataSourceSummary.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this PrometheusEmitterDataSourceSummary.
+ :type name: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'type': 'str',
+ 'name': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'type': 'type',
+ 'name': 'name'
+ }
+
+ self._key = None
+ self._type = None
+ self._name = None
+ self._type = 'PROMETHEUS_EMITTER'
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/management_agent/models/prometheus_emitter_data_source_summary_item.py b/src/oci/management_agent/models/prometheus_emitter_data_source_summary_item.py
new file mode 100644
index 0000000000..09fdf437ae
--- /dev/null
+++ b/src/oci/management_agent/models/prometheus_emitter_data_source_summary_item.py
@@ -0,0 +1,65 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+from .data_source_summary_item import DataSourceSummaryItem
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PrometheusEmitterDataSourceSummaryItem(DataSourceSummaryItem):
+ """
+ A Prometheus emitter data source summary.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PrometheusEmitterDataSourceSummaryItem object with values from keyword arguments. The default value of the :py:attr:`~oci.management_agent.models.PrometheusEmitterDataSourceSummaryItem.type` attribute
+ of this class is ``PROMETHEUS_EMITTER`` and it should not be changed.
+ 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 PrometheusEmitterDataSourceSummaryItem.
+ :type key: str
+
+ :param type:
+ The value to assign to the type property of this PrometheusEmitterDataSourceSummaryItem.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ :param name:
+ The value to assign to the name property of this PrometheusEmitterDataSourceSummaryItem.
+ :type name: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'type': 'str',
+ 'name': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'type': 'type',
+ 'name': 'name'
+ }
+
+ self._key = None
+ self._type = None
+ self._name = None
+ self._type = 'PROMETHEUS_EMITTER'
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/management_agent/models/update_data_source_details.py b/src/oci/management_agent/models/update_data_source_details.py
new file mode 100644
index 0000000000..9111b9d8f5
--- /dev/null
+++ b/src/oci/management_agent/models/update_data_source_details.py
@@ -0,0 +1,105 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateDataSourceDetails(object):
+ """
+ A request to change the data source.
+ """
+
+ #: A constant which can be used with the type property of a UpdateDataSourceDetails.
+ #: This constant has a value of "KUBERNETES_CLUSTER"
+ TYPE_KUBERNETES_CLUSTER = "KUBERNETES_CLUSTER"
+
+ #: A constant which can be used with the type property of a UpdateDataSourceDetails.
+ #: This constant has a value of "PROMETHEUS_EMITTER"
+ TYPE_PROMETHEUS_EMITTER = "PROMETHEUS_EMITTER"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateDataSourceDetails 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.management_agent.models.UpdatePrometheusEmitterDataSourceDetails`
+
+ 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 UpdateDataSourceDetails.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type'
+ }
+
+ self._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['type']
+
+ if type == 'PROMETHEUS_EMITTER':
+ return 'UpdatePrometheusEmitterDataSourceDetails'
+ else:
+ return 'UpdateDataSourceDetails'
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this UpdateDataSourceDetails.
+ The type of the DataSource.
+
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+
+
+ :return: The type of this UpdateDataSourceDetails.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this UpdateDataSourceDetails.
+ The type of the DataSource.
+
+
+ :param type: The type of this UpdateDataSourceDetails.
+ :type: str
+ """
+ allowed_values = ["KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"]
+ 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}"
+ )
+ self._type = 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/management_agent/models/update_prometheus_emitter_data_source_details.py b/src/oci/management_agent/models/update_prometheus_emitter_data_source_details.py
new file mode 100644
index 0000000000..cc1eaa9318
--- /dev/null
+++ b/src/oci/management_agent/models/update_prometheus_emitter_data_source_details.py
@@ -0,0 +1,330 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200202
+
+from .update_data_source_details import UpdateDataSourceDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdatePrometheusEmitterDataSourceDetails(UpdateDataSourceDetails):
+ """
+ A Prometheus data source.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdatePrometheusEmitterDataSourceDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.management_agent.models.UpdatePrometheusEmitterDataSourceDetails.type` attribute
+ of this class is ``PROMETHEUS_EMITTER`` 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 UpdatePrometheusEmitterDataSourceDetails.
+ Allowed values for this property are: "KUBERNETES_CLUSTER", "PROMETHEUS_EMITTER"
+ :type type: str
+
+ :param url:
+ The value to assign to the url property of this UpdatePrometheusEmitterDataSourceDetails.
+ :type url: str
+
+ :param allow_metrics:
+ The value to assign to the allow_metrics property of this UpdatePrometheusEmitterDataSourceDetails.
+ :type allow_metrics: str
+
+ :param proxy_url:
+ The value to assign to the proxy_url property of this UpdatePrometheusEmitterDataSourceDetails.
+ :type proxy_url: str
+
+ :param connection_timeout:
+ The value to assign to the connection_timeout property of this UpdatePrometheusEmitterDataSourceDetails.
+ :type connection_timeout: int
+
+ :param read_timeout:
+ The value to assign to the read_timeout property of this UpdatePrometheusEmitterDataSourceDetails.
+ :type read_timeout: int
+
+ :param read_data_limit_in_kilobytes:
+ The value to assign to the read_data_limit_in_kilobytes property of this UpdatePrometheusEmitterDataSourceDetails.
+ :type read_data_limit_in_kilobytes: int
+
+ :param schedule_mins:
+ The value to assign to the schedule_mins property of this UpdatePrometheusEmitterDataSourceDetails.
+ :type schedule_mins: int
+
+ :param resource_group:
+ The value to assign to the resource_group property of this UpdatePrometheusEmitterDataSourceDetails.
+ :type resource_group: str
+
+ :param metric_dimensions:
+ The value to assign to the metric_dimensions property of this UpdatePrometheusEmitterDataSourceDetails.
+ :type metric_dimensions: list[oci.management_agent.models.MetricDimension]
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'url': 'str',
+ 'allow_metrics': 'str',
+ 'proxy_url': 'str',
+ 'connection_timeout': 'int',
+ 'read_timeout': 'int',
+ 'read_data_limit_in_kilobytes': 'int',
+ 'schedule_mins': 'int',
+ 'resource_group': 'str',
+ 'metric_dimensions': 'list[MetricDimension]'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'url': 'url',
+ 'allow_metrics': 'allowMetrics',
+ 'proxy_url': 'proxyUrl',
+ 'connection_timeout': 'connectionTimeout',
+ 'read_timeout': 'readTimeout',
+ 'read_data_limit_in_kilobytes': 'readDataLimitInKilobytes',
+ 'schedule_mins': 'scheduleMins',
+ 'resource_group': 'resourceGroup',
+ 'metric_dimensions': 'metricDimensions'
+ }
+
+ self._type = None
+ self._url = None
+ self._allow_metrics = None
+ self._proxy_url = None
+ self._connection_timeout = None
+ self._read_timeout = None
+ self._read_data_limit_in_kilobytes = None
+ self._schedule_mins = None
+ self._resource_group = None
+ self._metric_dimensions = None
+ self._type = 'PROMETHEUS_EMITTER'
+
+ @property
+ def url(self):
+ """
+ **[Required]** Gets the url of this UpdatePrometheusEmitterDataSourceDetails.
+ The url through which the Prometheus Exporter publishes its metrics. (http only)
+
+
+ :return: The url of this UpdatePrometheusEmitterDataSourceDetails.
+ :rtype: str
+ """
+ return self._url
+
+ @url.setter
+ def url(self, url):
+ """
+ Sets the url of this UpdatePrometheusEmitterDataSourceDetails.
+ The url through which the Prometheus Exporter publishes its metrics. (http only)
+
+
+ :param url: The url of this UpdatePrometheusEmitterDataSourceDetails.
+ :type: str
+ """
+ self._url = url
+
+ @property
+ def allow_metrics(self):
+ """
+ Gets the allow_metrics of this UpdatePrometheusEmitterDataSourceDetails.
+ Comma separated metric name list. The complete set of desired scraped metrics. Use this property to limit the set of metrics uploaded if required.
+
+
+ :return: The allow_metrics of this UpdatePrometheusEmitterDataSourceDetails.
+ :rtype: str
+ """
+ return self._allow_metrics
+
+ @allow_metrics.setter
+ def allow_metrics(self, allow_metrics):
+ """
+ Sets the allow_metrics of this UpdatePrometheusEmitterDataSourceDetails.
+ Comma separated metric name list. The complete set of desired scraped metrics. Use this property to limit the set of metrics uploaded if required.
+
+
+ :param allow_metrics: The allow_metrics of this UpdatePrometheusEmitterDataSourceDetails.
+ :type: str
+ """
+ self._allow_metrics = allow_metrics
+
+ @property
+ def proxy_url(self):
+ """
+ Gets the proxy_url of this UpdatePrometheusEmitterDataSourceDetails.
+ The url of the network proxy that provides access to the Prometheus Exporter's endpoint (url required property).
+
+
+ :return: The proxy_url of this UpdatePrometheusEmitterDataSourceDetails.
+ :rtype: str
+ """
+ return self._proxy_url
+
+ @proxy_url.setter
+ def proxy_url(self, proxy_url):
+ """
+ Sets the proxy_url of this UpdatePrometheusEmitterDataSourceDetails.
+ The url of the network proxy that provides access to the Prometheus Exporter's endpoint (url required property).
+
+
+ :param proxy_url: The proxy_url of this UpdatePrometheusEmitterDataSourceDetails.
+ :type: str
+ """
+ self._proxy_url = proxy_url
+
+ @property
+ def connection_timeout(self):
+ """
+ Gets the connection_timeout of this UpdatePrometheusEmitterDataSourceDetails.
+ Number in milliseconds. The timeout for connecting to the Prometheus Exporter's endpoint.
+
+
+ :return: The connection_timeout of this UpdatePrometheusEmitterDataSourceDetails.
+ :rtype: int
+ """
+ return self._connection_timeout
+
+ @connection_timeout.setter
+ def connection_timeout(self, connection_timeout):
+ """
+ Sets the connection_timeout of this UpdatePrometheusEmitterDataSourceDetails.
+ Number in milliseconds. The timeout for connecting to the Prometheus Exporter's endpoint.
+
+
+ :param connection_timeout: The connection_timeout of this UpdatePrometheusEmitterDataSourceDetails.
+ :type: int
+ """
+ self._connection_timeout = connection_timeout
+
+ @property
+ def read_timeout(self):
+ """
+ Gets the read_timeout of this UpdatePrometheusEmitterDataSourceDetails.
+ Number in milliseconds. The timeout for reading the response from the Prometheus Exporter's endpoint.
+
+
+ :return: The read_timeout of this UpdatePrometheusEmitterDataSourceDetails.
+ :rtype: int
+ """
+ return self._read_timeout
+
+ @read_timeout.setter
+ def read_timeout(self, read_timeout):
+ """
+ Sets the read_timeout of this UpdatePrometheusEmitterDataSourceDetails.
+ Number in milliseconds. The timeout for reading the response from the Prometheus Exporter's endpoint.
+
+
+ :param read_timeout: The read_timeout of this UpdatePrometheusEmitterDataSourceDetails.
+ :type: int
+ """
+ self._read_timeout = read_timeout
+
+ @property
+ def read_data_limit_in_kilobytes(self):
+ """
+ Gets the read_data_limit_in_kilobytes of this UpdatePrometheusEmitterDataSourceDetails.
+ Number in kilobytes. The limit on the data being sent, not to exceed the agent's fixed limit of 400 (KB).
+
+
+ :return: The read_data_limit_in_kilobytes of this UpdatePrometheusEmitterDataSourceDetails.
+ :rtype: int
+ """
+ return self._read_data_limit_in_kilobytes
+
+ @read_data_limit_in_kilobytes.setter
+ def read_data_limit_in_kilobytes(self, read_data_limit_in_kilobytes):
+ """
+ Sets the read_data_limit_in_kilobytes of this UpdatePrometheusEmitterDataSourceDetails.
+ Number in kilobytes. The limit on the data being sent, not to exceed the agent's fixed limit of 400 (KB).
+
+
+ :param read_data_limit_in_kilobytes: The read_data_limit_in_kilobytes of this UpdatePrometheusEmitterDataSourceDetails.
+ :type: int
+ """
+ self._read_data_limit_in_kilobytes = read_data_limit_in_kilobytes
+
+ @property
+ def schedule_mins(self):
+ """
+ Gets the schedule_mins of this UpdatePrometheusEmitterDataSourceDetails.
+ Number in minutes. The scraping occurs at the specified interval.
+
+
+ :return: The schedule_mins of this UpdatePrometheusEmitterDataSourceDetails.
+ :rtype: int
+ """
+ return self._schedule_mins
+
+ @schedule_mins.setter
+ def schedule_mins(self, schedule_mins):
+ """
+ Sets the schedule_mins of this UpdatePrometheusEmitterDataSourceDetails.
+ Number in minutes. The scraping occurs at the specified interval.
+
+
+ :param schedule_mins: The schedule_mins of this UpdatePrometheusEmitterDataSourceDetails.
+ :type: int
+ """
+ self._schedule_mins = schedule_mins
+
+ @property
+ def resource_group(self):
+ """
+ Gets the resource_group of this UpdatePrometheusEmitterDataSourceDetails.
+ OCI monitoring resource group to assign the metric to.
+
+
+ :return: The resource_group of this UpdatePrometheusEmitterDataSourceDetails.
+ :rtype: str
+ """
+ return self._resource_group
+
+ @resource_group.setter
+ def resource_group(self, resource_group):
+ """
+ Sets the resource_group of this UpdatePrometheusEmitterDataSourceDetails.
+ OCI monitoring resource group to assign the metric to.
+
+
+ :param resource_group: The resource_group of this UpdatePrometheusEmitterDataSourceDetails.
+ :type: str
+ """
+ self._resource_group = resource_group
+
+ @property
+ def metric_dimensions(self):
+ """
+ Gets the metric_dimensions of this UpdatePrometheusEmitterDataSourceDetails.
+ The names of other user-supplied properties expressed as fixed values to be used as dimensions for every uploaded datapoint.
+
+
+ :return: The metric_dimensions of this UpdatePrometheusEmitterDataSourceDetails.
+ :rtype: list[oci.management_agent.models.MetricDimension]
+ """
+ return self._metric_dimensions
+
+ @metric_dimensions.setter
+ def metric_dimensions(self, metric_dimensions):
+ """
+ Sets the metric_dimensions of this UpdatePrometheusEmitterDataSourceDetails.
+ The names of other user-supplied properties expressed as fixed values to be used as dimensions for every uploaded datapoint.
+
+
+ :param metric_dimensions: The metric_dimensions of this UpdatePrometheusEmitterDataSourceDetails.
+ :type: list[oci.management_agent.models.MetricDimension]
+ """
+ self._metric_dimensions = metric_dimensions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/management_agent/models/work_request.py b/src/oci/management_agent/models/work_request.py
index b0d8ae18b5..e2a4a67201 100644
--- a/src/oci/management_agent/models/work_request.py
+++ b/src/oci/management_agent/models/work_request.py
@@ -31,6 +31,18 @@ class WorkRequest(object):
#: This constant has a value of "AGENTIMAGE_UPGRADE"
OPERATION_TYPE_AGENTIMAGE_UPGRADE = "AGENTIMAGE_UPGRADE"
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "CREATE_DATA_SOURCE"
+ OPERATION_TYPE_CREATE_DATA_SOURCE = "CREATE_DATA_SOURCE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "UPDATE_DATA_SOURCE"
+ OPERATION_TYPE_UPDATE_DATA_SOURCE = "UPDATE_DATA_SOURCE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "DELETE_DATA_SOURCE"
+ OPERATION_TYPE_DELETE_DATA_SOURCE = "DELETE_DATA_SOURCE"
+
#: A constant which can be used with the status property of a WorkRequest.
#: This constant has a value of "CREATED"
STATUS_CREATED = "CREATED"
@@ -66,7 +78,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: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", "CREATE_DATA_SOURCE", "UPDATE_DATA_SOURCE", "DELETE_DATA_SOURCE", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
:type operation_type: str
@@ -145,7 +157,7 @@ def operation_type(self):
**[Required]** Gets the operation_type of this WorkRequest.
Type of the work request
- Allowed values for this property are: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", "CREATE_DATA_SOURCE", "UPDATE_DATA_SOURCE", "DELETE_DATA_SOURCE", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
@@ -164,7 +176,7 @@ def operation_type(self, operation_type):
:param operation_type: The operation_type of this WorkRequest.
:type: str
"""
- allowed_values = ["DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE"]
+ allowed_values = ["DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", "CREATE_DATA_SOURCE", "UPDATE_DATA_SOURCE", "DELETE_DATA_SOURCE"]
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/management_agent/models/work_request_summary.py b/src/oci/management_agent/models/work_request_summary.py
index 79f42a9220..385dfcd929 100644
--- a/src/oci/management_agent/models/work_request_summary.py
+++ b/src/oci/management_agent/models/work_request_summary.py
@@ -31,6 +31,18 @@ class WorkRequestSummary(object):
#: This constant has a value of "AGENTIMAGE_UPGRADE"
OPERATION_TYPE_AGENTIMAGE_UPGRADE = "AGENTIMAGE_UPGRADE"
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "CREATE_DATA_SOURCE"
+ OPERATION_TYPE_CREATE_DATA_SOURCE = "CREATE_DATA_SOURCE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "UPDATE_DATA_SOURCE"
+ OPERATION_TYPE_UPDATE_DATA_SOURCE = "UPDATE_DATA_SOURCE"
+
+ #: A constant which can be used with the operation_type property of a WorkRequestSummary.
+ #: This constant has a value of "DELETE_DATA_SOURCE"
+ OPERATION_TYPE_DELETE_DATA_SOURCE = "DELETE_DATA_SOURCE"
+
#: A constant which can be used with the status property of a WorkRequestSummary.
#: This constant has a value of "CREATED"
STATUS_CREATED = "CREATED"
@@ -66,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: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", "CREATE_DATA_SOURCE", "UPDATE_DATA_SOURCE", "DELETE_DATA_SOURCE", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
:type operation_type: str
@@ -145,7 +157,7 @@ def operation_type(self):
**[Required]** Gets the operation_type of this WorkRequestSummary.
Type of the work request
- Allowed values for this property are: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", "CREATE_DATA_SOURCE", "UPDATE_DATA_SOURCE", "DELETE_DATA_SOURCE", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
@@ -164,7 +176,7 @@ def operation_type(self, operation_type):
:param operation_type: The operation_type of this WorkRequestSummary.
:type: str
"""
- allowed_values = ["DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE"]
+ allowed_values = ["DEPLOY_PLUGIN", "UPGRADE_PLUGIN", "CREATE_UPGRADE_PLUGINS", "AGENTIMAGE_UPGRADE", "CREATE_DATA_SOURCE", "UPDATE_DATA_SOURCE", "DELETE_DATA_SOURCE"]
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/media_services/media_services_client.py b/src/oci/media_services/media_services_client.py
index 686dafb71b..dfe6a99773 100644
--- a/src/oci/media_services/media_services_client.py
+++ b/src/oci/media_services/media_services_client.py
@@ -118,17 +118,17 @@ def __init__(self, config, **kwargs):
self.retry_strategy = kwargs.get('retry_strategy')
self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback')
- def change_media_asset_compartment(self, media_asset_id, change_media_asset_compartment_details, **kwargs):
+ def add_media_asset_lock(self, add_lock_details, media_asset_id, **kwargs):
"""
- Moves a MediaAsset resource from one compartment identifier to another.
+ Add a lock to an MediaAsset.
+ :param oci.media_services.models.AddLockDetails add_lock_details: (required)
+ The details to be updated for the AddLock.
+
:param str media_asset_id: (required)
Unique MediaAsset identifier
- :param oci.media_services.models.ChangeMediaAssetCompartmentDetails change_media_asset_compartment_details: (required)
- The information 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 the risk of executing that same action again. Retry tokens expire after 24
@@ -136,6 +136,9 @@ def change_media_asset_compartment(self, media_asset_id, change_media_asset_comp
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
@@ -143,9 +146,6 @@ def change_media_asset_compartment(self, media_asset_id, change_media_asset_comp
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.
@@ -158,31 +158,31 @@ def change_media_asset_compartment(self, media_asset_id, change_media_asset_comp
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
- :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.media_services.models.MediaAsset`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use change_media_asset_compartment API.
+ Click `here `__ to see an example of how to use add_media_asset_lock API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
required_arguments = ['mediaAssetId']
- resource_path = "/mediaAssets/{mediaAssetId}/actions/changeCompartment"
+ resource_path = "/mediaAssets/{mediaAssetId}/actions/addLock"
method = "POST"
- operation_name = "change_media_asset_compartment"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/ChangeMediaAssetCompartment"
+ operation_name = "add_media_asset_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/AddMediaAssetLock"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
"opc_retry_token",
- "if_match",
- "opc_request_id"
+ "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_media_asset_compartment got unknown kwargs: {extra_kwargs!r}")
+ f"add_media_asset_lock got unknown kwargs: {extra_kwargs!r}")
path_params = {
"mediaAssetId": media_asset_id
@@ -198,8 +198,8 @@ def change_media_asset_compartment(self, media_asset_id, change_media_asset_comp
"accept": "application/json",
"content-type": "application/json",
"opc-retry-token": kwargs.get("opc_retry_token", missing),
- "if-match": kwargs.get("if_match", missing),
- "opc-request-id": kwargs.get("opc_request_id", 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}
@@ -221,7 +221,8 @@ def change_media_asset_compartment(self, media_asset_id, change_media_asset_comp
method=method,
path_params=path_params,
header_params=header_params,
- body=change_media_asset_compartment_details,
+ body=add_lock_details,
+ response_type="MediaAsset",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -232,29 +233,23 @@ def change_media_asset_compartment(self, media_asset_id, change_media_asset_comp
method=method,
path_params=path_params,
header_params=header_params,
- body=change_media_asset_compartment_details,
+ body=add_lock_details,
+ response_type="MediaAsset",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def change_media_workflow_compartment(self, media_workflow_id, change_media_workflow_compartment_details, **kwargs):
+ def add_media_workflow_configuration_lock(self, add_resource_lock_details, media_workflow_configuration_id, **kwargs):
"""
- Moves a MediaWorkflow resource from one compartment identifier to another.
-
+ Add a lock to a MediaWorkflowConfiguration.
- :param str media_workflow_id: (required)
- Unique MediaWorkflow identifier.
- :param oci.media_services.models.ChangeMediaWorkflowCompartmentDetails change_media_workflow_compartment_details: (required)
- The change compartment payload.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
- :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 the 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 media_workflow_configuration_id: (required)
+ Unique MediaWorkflowConfiguration identifier.
:param str if_match: (optional)
For optimistic concurrency control. In the PUT or DELETE call
@@ -266,6 +261,13 @@ def change_media_workflow_compartment(self, media_workflow_id, change_media_work
: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 the 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.
@@ -278,34 +280,34 @@ def change_media_workflow_compartment(self, media_workflow_id, change_media_work
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
- :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.media_services.models.MediaWorkflowConfiguration`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use change_media_workflow_compartment API.
+ Click `here `__ to see an example of how to use add_media_workflow_configuration_lock API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowId']
- resource_path = "/mediaWorkflows/{mediaWorkflowId}/actions/changeCompartment"
+ required_arguments = ['mediaWorkflowConfigurationId']
+ resource_path = "/mediaWorkflowConfigurations/{mediaWorkflowConfigurationId}/actions/addLock"
method = "POST"
- operation_name = "change_media_workflow_compartment"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/ChangeMediaWorkflowCompartment"
+ operation_name = "add_media_workflow_configuration_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/AddMediaWorkflowConfigurationLock"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_retry_token",
"if_match",
- "opc_request_id"
+ "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_media_workflow_compartment got unknown kwargs: {extra_kwargs!r}")
+ f"add_media_workflow_configuration_lock got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaWorkflowId": media_workflow_id
+ "mediaWorkflowConfigurationId": media_workflow_configuration_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -317,9 +319,9 @@ def change_media_workflow_compartment(self, media_workflow_id, change_media_work
header_params = {
"accept": "application/json",
"content-type": "application/json",
- "opc-retry-token": kwargs.get("opc_retry_token", missing),
"if-match": kwargs.get("if_match", missing),
- "opc-request-id": kwargs.get("opc_request_id", 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}
@@ -341,7 +343,8 @@ def change_media_workflow_compartment(self, media_workflow_id, change_media_work
method=method,
path_params=path_params,
header_params=header_params,
- body=change_media_workflow_compartment_details,
+ body=add_resource_lock_details,
+ response_type="MediaWorkflowConfiguration",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -352,22 +355,23 @@ def change_media_workflow_compartment(self, media_workflow_id, change_media_work
method=method,
path_params=path_params,
header_params=header_params,
- body=change_media_workflow_compartment_details,
+ body=add_resource_lock_details,
+ response_type="MediaWorkflowConfiguration",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def change_media_workflow_configuration_compartment(self, media_workflow_configuration_id, change_media_workflow_configuration_compartment_details, **kwargs):
+ def add_media_workflow_job_lock(self, add_lock_details, media_workflow_job_id, **kwargs):
"""
- Moves a MediaWorkflowConfiguration resource from one compartment identifier to another. When provided, If-Match is checked against ETag values of the resource.
+ Add a lock to a MediaWorkflowJob.
- :param str media_workflow_configuration_id: (required)
- Unique MediaWorkflowConfiguration identifier.
+ :param oci.media_services.models.AddLockDetails add_lock_details: (required)
+ The details to be updated for the AddLock.
- :param oci.media_services.models.ChangeMediaWorkflowConfigurationCompartmentDetails change_media_workflow_configuration_compartment_details: (required)
- The information to be updated.
+ :param str media_workflow_job_id: (required)
+ Unique MediaWorkflowJob 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
@@ -376,6 +380,9 @@ def change_media_workflow_configuration_compartment(self, media_workflow_configu
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
@@ -383,9 +390,6 @@ def change_media_workflow_configuration_compartment(self, media_workflow_configu
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.
@@ -398,34 +402,34 @@ def change_media_workflow_configuration_compartment(self, media_workflow_configu
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
- :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.media_services.models.MediaWorkflowJob`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use change_media_workflow_configuration_compartment API.
+ Click `here `__ to see an example of how to use add_media_workflow_job_lock API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowConfigurationId']
- resource_path = "/mediaWorkflowConfigurations/{mediaWorkflowConfigurationId}/actions/changeCompartment"
+ required_arguments = ['mediaWorkflowJobId']
+ resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}/actions/addLock"
method = "POST"
- operation_name = "change_media_workflow_configuration_compartment"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/ChangeMediaWorkflowConfigurationCompartment"
+ operation_name = "add_media_workflow_job_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/AddMediaWorkflowJobLock"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
"opc_retry_token",
- "if_match",
- "opc_request_id"
+ "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_media_workflow_configuration_compartment got unknown kwargs: {extra_kwargs!r}")
+ f"add_media_workflow_job_lock got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaWorkflowConfigurationId": media_workflow_configuration_id
+ "mediaWorkflowJobId": media_workflow_job_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -438,8 +442,8 @@ def change_media_workflow_configuration_compartment(self, media_workflow_configu
"accept": "application/json",
"content-type": "application/json",
"opc-retry-token": kwargs.get("opc_retry_token", missing),
- "if-match": kwargs.get("if_match", missing),
- "opc-request-id": kwargs.get("opc_request_id", 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}
@@ -461,7 +465,8 @@ def change_media_workflow_configuration_compartment(self, media_workflow_configu
method=method,
path_params=path_params,
header_params=header_params,
- body=change_media_workflow_configuration_compartment_details,
+ body=add_lock_details,
+ response_type="MediaWorkflowJob",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -472,22 +477,23 @@ def change_media_workflow_configuration_compartment(self, media_workflow_configu
method=method,
path_params=path_params,
header_params=header_params,
- body=change_media_workflow_configuration_compartment_details,
+ body=add_lock_details,
+ response_type="MediaWorkflowJob",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def change_media_workflow_job_compartment(self, media_workflow_job_id, change_media_workflow_job_compartment_details, **kwargs):
+ def add_media_workflow_lock(self, add_resource_lock_details, media_workflow_id, **kwargs):
"""
- Moves a MediaWorkflowJob resource from one compartment identifier to another.
+ Add a lock to a MediaWorkflow.
- :param str media_workflow_job_id: (required)
- Unique MediaWorkflowJob identifier.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
- :param oci.media_services.models.ChangeMediaWorkflowJobCompartmentDetails change_media_workflow_job_compartment_details: (required)
- The change compartment payload.
+ :param str media_workflow_id: (required)
+ Unique MediaWorkflow 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
@@ -496,6 +502,9 @@ def change_media_workflow_job_compartment(self, media_workflow_job_id, change_me
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
@@ -503,9 +512,6 @@ def change_media_workflow_job_compartment(self, media_workflow_job_id, change_me
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.
@@ -518,34 +524,34 @@ def change_media_workflow_job_compartment(self, media_workflow_job_id, change_me
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
- :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.media_services.models.MediaWorkflow`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use change_media_workflow_job_compartment API.
+ Click `here `__ to see an example of how to use add_media_workflow_lock API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowJobId']
- resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}/actions/changeCompartment"
+ required_arguments = ['mediaWorkflowId']
+ resource_path = "/mediaWorkflows/{mediaWorkflowId}/actions/addLock"
method = "POST"
- operation_name = "change_media_workflow_job_compartment"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/ChangeMediaWorkflowJobCompartment"
+ operation_name = "add_media_workflow_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/AddMediaWorkflowLock"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
"opc_retry_token",
- "if_match",
- "opc_request_id"
+ "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_media_workflow_job_compartment got unknown kwargs: {extra_kwargs!r}")
+ f"add_media_workflow_lock got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaWorkflowJobId": media_workflow_job_id
+ "mediaWorkflowId": media_workflow_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -558,8 +564,8 @@ def change_media_workflow_job_compartment(self, media_workflow_job_id, change_me
"accept": "application/json",
"content-type": "application/json",
"opc-retry-token": kwargs.get("opc_retry_token", missing),
- "if-match": kwargs.get("if_match", missing),
- "opc-request-id": kwargs.get("opc_request_id", 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}
@@ -581,7 +587,8 @@ def change_media_workflow_job_compartment(self, media_workflow_job_id, change_me
method=method,
path_params=path_params,
header_params=header_params,
- body=change_media_workflow_job_compartment_details,
+ body=add_resource_lock_details,
+ response_type="MediaWorkflow",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -592,29 +599,23 @@ def change_media_workflow_job_compartment(self, media_workflow_job_id, change_me
method=method,
path_params=path_params,
header_params=header_params,
- body=change_media_workflow_job_compartment_details,
+ body=add_resource_lock_details,
+ response_type="MediaWorkflow",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def change_stream_distribution_channel_compartment(self, stream_distribution_channel_id, change_stream_distribution_channel_compartment_details, **kwargs):
+ def add_stream_cdn_config_lock(self, add_resource_lock_details, stream_cdn_config_id, **kwargs):
"""
- Moves a Stream Distribution Channel resource from one compartment identifier to another.
+ Add a lock to a StreamCdnConfig.
- :param str stream_distribution_channel_id: (required)
- Unique Stream Distribution Channel path identifier.
-
- :param oci.media_services.models.ChangeStreamDistributionChannelCompartmentDetails change_stream_distribution_channel_compartment_details: (required)
- The change compartment payload.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
- :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 the 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 stream_cdn_config_id: (required)
+ Unique StreamCdnConfig identifier.
:param str if_match: (optional)
For optimistic concurrency control. In the PUT or DELETE call
@@ -626,6 +627,13 @@ def change_stream_distribution_channel_compartment(self, stream_distribution_cha
: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 the 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.
@@ -638,34 +646,34 @@ def change_stream_distribution_channel_compartment(self, stream_distribution_cha
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
- :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.media_services.models.StreamCdnConfig`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use change_stream_distribution_channel_compartment API.
+ Click `here `__ to see an example of how to use add_stream_cdn_config_lock API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['streamDistributionChannelId']
- resource_path = "/streamDistributionChannels/{streamDistributionChannelId}/actions/changeCompartment"
+ required_arguments = ['streamCdnConfigId']
+ resource_path = "/streamCdnConfigs/{streamCdnConfigId}/actions/addLock"
method = "POST"
- operation_name = "change_stream_distribution_channel_compartment"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/ChangeStreamDistributionChannelCompartment"
+ operation_name = "add_stream_cdn_config_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/AddStreamCdnConfigLock"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_retry_token",
"if_match",
- "opc_request_id"
+ "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_stream_distribution_channel_compartment got unknown kwargs: {extra_kwargs!r}")
+ f"add_stream_cdn_config_lock got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "streamDistributionChannelId": stream_distribution_channel_id
+ "streamCdnConfigId": stream_cdn_config_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -677,9 +685,9 @@ def change_stream_distribution_channel_compartment(self, stream_distribution_cha
header_params = {
"accept": "application/json",
"content-type": "application/json",
- "opc-retry-token": kwargs.get("opc_retry_token", missing),
"if-match": kwargs.get("if_match", missing),
- "opc-request-id": kwargs.get("opc_request_id", 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}
@@ -701,7 +709,8 @@ def change_stream_distribution_channel_compartment(self, stream_distribution_cha
method=method,
path_params=path_params,
header_params=header_params,
- body=change_stream_distribution_channel_compartment_details,
+ body=add_resource_lock_details,
+ response_type="StreamCdnConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -712,19 +721,33 @@ def change_stream_distribution_channel_compartment(self, stream_distribution_cha
method=method,
path_params=path_params,
header_params=header_params,
- body=change_stream_distribution_channel_compartment_details,
+ body=add_resource_lock_details,
+ response_type="StreamCdnConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def create_media_asset(self, create_media_asset_details, **kwargs):
+ def add_stream_distribution_channel_lock(self, add_resource_lock_details, stream_distribution_channel_id, **kwargs):
"""
- Creates a new MediaAsset.
+ Add a lock to a StreamDistributionChannel.
- :param oci.media_services.models.CreateMediaAssetDetails create_media_asset_details: (required)
- Details for the new MediaAsset.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
+
+ :param str stream_distribution_channel_id: (required)
+ Unique Stream Distribution Channel path 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
@@ -733,9 +756,6 @@ def create_media_asset(self, create_media_asset_details, **kwargs):
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.
@@ -748,36 +768,48 @@ def create_media_asset(self, create_media_asset_details, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAsset`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamDistributionChannel`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use create_media_asset API.
+ Click `here `__ to see an example of how to use add_stream_distribution_channel_lock API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/mediaAssets"
+ required_arguments = ['streamDistributionChannelId']
+ resource_path = "/streamDistributionChannels/{streamDistributionChannelId}/actions/addLock"
method = "POST"
- operation_name = "create_media_asset"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/CreateMediaAsset"
+ operation_name = "add_stream_distribution_channel_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/AddStreamDistributionChannelLock"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_retry_token",
- "opc_request_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"create_media_asset got unknown kwargs: {extra_kwargs!r}")
+ f"add_stream_distribution_channel_lock got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "streamDistributionChannelId": stream_distribution_channel_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),
+ "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}
@@ -797,9 +829,10 @@ def create_media_asset(self, create_media_asset_details, **kwargs):
self.base_client.call_api,
resource_path=resource_path,
method=method,
+ path_params=path_params,
header_params=header_params,
- body=create_media_asset_details,
- response_type="MediaAsset",
+ body=add_resource_lock_details,
+ response_type="StreamDistributionChannel",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -808,21 +841,35 @@ def create_media_asset(self, create_media_asset_details, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
+ path_params=path_params,
header_params=header_params,
- body=create_media_asset_details,
- response_type="MediaAsset",
+ body=add_resource_lock_details,
+ response_type="StreamDistributionChannel",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def create_media_workflow(self, create_media_workflow_details, **kwargs):
+ def add_stream_packaging_config_lock(self, add_resource_lock_details, stream_packaging_config_id, **kwargs):
"""
- Creates a new MediaWorkflow.
+ Add a lock to a StreamPackagingConfig.
- :param oci.media_services.models.CreateMediaWorkflowDetails create_media_workflow_details: (required)
- Details for the new MediaWorkflow.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
+
+ :param str stream_packaging_config_id: (required)
+ Unique Stream Packaging Configuration path 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
@@ -831,9 +878,6 @@ def create_media_workflow(self, create_media_workflow_details, **kwargs):
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.
@@ -846,36 +890,48 @@ def create_media_workflow(self, create_media_workflow_details, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflow`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamPackagingConfig`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use create_media_workflow API.
+ Click `here `__ to see an example of how to use add_stream_packaging_config_lock API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/mediaWorkflows"
+ required_arguments = ['streamPackagingConfigId']
+ resource_path = "/streamPackagingConfigs/{streamPackagingConfigId}/actions/addLock"
method = "POST"
- operation_name = "create_media_workflow"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/CreateMediaWorkflow"
+ operation_name = "add_stream_packaging_config_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/AddStreamPackagingConfigLock"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_retry_token",
- "opc_request_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"create_media_workflow got unknown kwargs: {extra_kwargs!r}")
+ f"add_stream_packaging_config_lock got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "streamPackagingConfigId": stream_packaging_config_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),
+ "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}
@@ -895,9 +951,10 @@ def create_media_workflow(self, create_media_workflow_details, **kwargs):
self.base_client.call_api,
resource_path=resource_path,
method=method,
+ path_params=path_params,
header_params=header_params,
- body=create_media_workflow_details,
- response_type="MediaWorkflow",
+ body=add_resource_lock_details,
+ response_type="StreamPackagingConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -906,21 +963,28 @@ def create_media_workflow(self, create_media_workflow_details, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
+ path_params=path_params,
header_params=header_params,
- body=create_media_workflow_details,
- response_type="MediaWorkflow",
+ body=add_resource_lock_details,
+ response_type="StreamPackagingConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def create_media_workflow_configuration(self, create_media_workflow_configuration_details, **kwargs):
+ def change_media_asset_compartment(self, media_asset_id, change_media_asset_compartment_details, **kwargs):
"""
- Creates a new MediaWorkflowConfiguration.
+ Moves a MediaAsset resource from one compartment identifier to another.
- :param oci.media_services.models.CreateMediaWorkflowConfigurationDetails create_media_workflow_configuration_details: (required)
- Details for the new MediaWorkflowConfiguration.
+ :param str media_asset_id: (required)
+ Unique MediaAsset identifier
+
+ :param oci.media_services.models.ChangeMediaAssetCompartmentDetails change_media_asset_compartment_details: (required)
+ The information to be updated.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
:param str opc_retry_token: (optional)
A token that uniquely identifies a request so it can be retried in case of a timeout or
@@ -929,6 +993,13 @@ def create_media_workflow_configuration(self, create_media_workflow_configuratio
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 str opc_request_id: (optional)
The client request ID for tracing.
@@ -944,35 +1015,53 @@ def create_media_workflow_configuration(self, create_media_workflow_configuratio
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowConfiguration`
+ :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 create_media_workflow_configuration API.
+ Click `here `__ to see an example of how to use change_media_asset_compartment API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/mediaWorkflowConfigurations"
+ required_arguments = ['mediaAssetId']
+ resource_path = "/mediaAssets/{mediaAssetId}/actions/changeCompartment"
method = "POST"
- operation_name = "create_media_workflow_configuration"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/CreateMediaWorkflowConfiguration"
+ operation_name = "change_media_asset_compartment"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/ChangeMediaAssetCompartment"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"opc_retry_token",
+ "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"create_media_workflow_configuration got unknown kwargs: {extra_kwargs!r}")
+ f"change_media_asset_compartment got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "mediaAssetId": media_asset_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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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),
+ "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}
@@ -993,9 +1082,10 @@ def create_media_workflow_configuration(self, create_media_workflow_configuratio
self.base_client.call_api,
resource_path=resource_path,
method=method,
+ path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- body=create_media_workflow_configuration_details,
- response_type="MediaWorkflowConfiguration",
+ body=change_media_asset_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1004,24 +1094,28 @@ def create_media_workflow_configuration(self, create_media_workflow_configuratio
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=create_media_workflow_configuration_details,
- response_type="MediaWorkflowConfiguration",
+ body=change_media_asset_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def create_media_workflow_job(self, create_media_workflow_job_details, **kwargs):
+ def change_media_workflow_compartment(self, media_workflow_id, change_media_workflow_compartment_details, **kwargs):
"""
- Run the MediaWorkflow according to the given mediaWorkflow definition and configuration.
+ Moves a MediaWorkflow resource from one compartment identifier to another.
- :param oci.media_services.models.CreateMediaWorkflowJobDetails create_media_workflow_job_details: (required)
- The information to run the mediaWorkflow.
+ :param str media_workflow_id: (required)
+ Unique MediaWorkflow identifier.
- :param str opc_request_id: (optional)
- The client request ID for tracing.
+ :param oci.media_services.models.ChangeMediaWorkflowCompartmentDetails change_media_workflow_compartment_details: (required)
+ The change compartment payload.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
:param str opc_retry_token: (optional)
A token that uniquely identifies a request so it can be retried in case of a timeout or
@@ -1030,6 +1124,16 @@ def create_media_workflow_job(self, create_media_workflow_job_details, **kwargs)
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 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.
@@ -1042,36 +1146,54 @@ def create_media_workflow_job(self, create_media_workflow_job_details, **kwargs)
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowJob`
+ :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 create_media_workflow_job API.
+ Click `here `__ to see an example of how to use change_media_workflow_compartment API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/mediaWorkflowJobs"
+ required_arguments = ['mediaWorkflowId']
+ resource_path = "/mediaWorkflows/{mediaWorkflowId}/actions/changeCompartment"
method = "POST"
- operation_name = "create_media_workflow_job"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/CreateMediaWorkflowJob"
+ operation_name = "change_media_workflow_compartment"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/ChangeMediaWorkflowCompartment"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id",
- "opc_retry_token"
+ "is_lock_override",
+ "opc_retry_token",
+ "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"create_media_workflow_job got unknown kwargs: {extra_kwargs!r}")
+ f"change_media_workflow_compartment got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "mediaWorkflowId": media_workflow_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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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),
- "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
+ "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}
@@ -1091,9 +1213,10 @@ def create_media_workflow_job(self, create_media_workflow_job_details, **kwargs)
self.base_client.call_api,
resource_path=resource_path,
method=method,
+ path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- body=create_media_workflow_job_details,
- response_type="MediaWorkflowJob",
+ body=change_media_workflow_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1102,21 +1225,28 @@ def create_media_workflow_job(self, create_media_workflow_job_details, **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,
- body=create_media_workflow_job_details,
- response_type="MediaWorkflowJob",
+ body=change_media_workflow_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def create_stream_cdn_config(self, create_stream_cdn_config_details, **kwargs):
+ def change_media_workflow_configuration_compartment(self, media_workflow_configuration_id, change_media_workflow_configuration_compartment_details, **kwargs):
"""
- Creates a new CDN Configuration.
+ Moves a MediaWorkflowConfiguration resource from one compartment identifier to another. When provided, If-Match is checked against ETag values of the resource.
- :param oci.media_services.models.CreateStreamCdnConfigDetails create_stream_cdn_config_details: (required)
- Details for the new StreamCdnConfig.
+ :param str media_workflow_configuration_id: (required)
+ Unique MediaWorkflowConfiguration identifier.
+
+ :param oci.media_services.models.ChangeMediaWorkflowConfigurationCompartmentDetails change_media_workflow_configuration_compartment_details: (required)
+ The information to be updated.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
:param str opc_retry_token: (optional)
A token that uniquely identifies a request so it can be retried in case of a timeout or
@@ -1125,6 +1255,13 @@ def create_stream_cdn_config(self, create_stream_cdn_config_details, **kwargs):
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 str opc_request_id: (optional)
The client request ID for tracing.
@@ -1140,35 +1277,53 @@ def create_stream_cdn_config(self, create_stream_cdn_config_details, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamCdnConfig`
+ :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 create_stream_cdn_config API.
+ Click `here `__ to see an example of how to use change_media_workflow_configuration_compartment API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/streamCdnConfigs"
+ required_arguments = ['mediaWorkflowConfigurationId']
+ resource_path = "/mediaWorkflowConfigurations/{mediaWorkflowConfigurationId}/actions/changeCompartment"
method = "POST"
- operation_name = "create_stream_cdn_config"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/CreateStreamCdnConfig"
+ operation_name = "change_media_workflow_configuration_compartment"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/ChangeMediaWorkflowConfigurationCompartment"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"opc_retry_token",
+ "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"create_stream_cdn_config got unknown kwargs: {extra_kwargs!r}")
+ f"change_media_workflow_configuration_compartment got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "mediaWorkflowConfigurationId": media_workflow_configuration_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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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),
+ "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}
@@ -1189,9 +1344,10 @@ def create_stream_cdn_config(self, create_stream_cdn_config_details, **kwargs):
self.base_client.call_api,
resource_path=resource_path,
method=method,
+ path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- body=create_stream_cdn_config_details,
- response_type="StreamCdnConfig",
+ body=change_media_workflow_configuration_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1200,21 +1356,28 @@ def create_stream_cdn_config(self, create_stream_cdn_config_details, **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,
- body=create_stream_cdn_config_details,
- response_type="StreamCdnConfig",
+ body=change_media_workflow_configuration_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def create_stream_distribution_channel(self, create_stream_distribution_channel_details, **kwargs):
+ def change_media_workflow_job_compartment(self, media_workflow_job_id, change_media_workflow_job_compartment_details, **kwargs):
"""
- Creates a new Stream Distribution Channel.
+ Moves a MediaWorkflowJob resource from one compartment identifier to another.
- :param oci.media_services.models.CreateStreamDistributionChannelDetails create_stream_distribution_channel_details: (required)
- Details for the new Stream Distribution Channel.
+ :param str media_workflow_job_id: (required)
+ Unique MediaWorkflowJob identifier.
+
+ :param oci.media_services.models.ChangeMediaWorkflowJobCompartmentDetails change_media_workflow_job_compartment_details: (required)
+ The change compartment payload.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
:param str opc_retry_token: (optional)
A token that uniquely identifies a request so it can be retried in case of a timeout or
@@ -1223,8 +1386,15 @@ def create_stream_distribution_channel(self, create_stream_distribution_channel_
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 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.
@@ -1238,35 +1408,53 @@ def create_stream_distribution_channel(self, create_stream_distribution_channel_
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamDistributionChannel`
+ :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 create_stream_distribution_channel API.
+ Click `here `__ to see an example of how to use change_media_workflow_job_compartment API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/streamDistributionChannels"
+ required_arguments = ['mediaWorkflowJobId']
+ resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}/actions/changeCompartment"
method = "POST"
- operation_name = "create_stream_distribution_channel"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/CreateStreamDistributionChannel"
+ operation_name = "change_media_workflow_job_compartment"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/ChangeMediaWorkflowJobCompartment"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"opc_retry_token",
+ "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"create_stream_distribution_channel got unknown kwargs: {extra_kwargs!r}")
+ f"change_media_workflow_job_compartment got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "mediaWorkflowJobId": media_workflow_job_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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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),
+ "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}
@@ -1287,9 +1475,10 @@ def create_stream_distribution_channel(self, create_stream_distribution_channel_
self.base_client.call_api,
resource_path=resource_path,
method=method,
+ path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- body=create_stream_distribution_channel_details,
- response_type="StreamDistributionChannel",
+ body=change_media_workflow_job_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1298,21 +1487,28 @@ def create_stream_distribution_channel(self, create_stream_distribution_channel_
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=create_stream_distribution_channel_details,
- response_type="StreamDistributionChannel",
+ body=change_media_workflow_job_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def create_stream_packaging_config(self, create_stream_packaging_config_details, **kwargs):
+ def change_stream_distribution_channel_compartment(self, stream_distribution_channel_id, change_stream_distribution_channel_compartment_details, **kwargs):
"""
- Creates a new Packaging Configuration.
+ Moves a Stream Distribution Channel resource from one compartment identifier to another.
- :param oci.media_services.models.CreateStreamPackagingConfigDetails create_stream_packaging_config_details: (required)
- Details for the new Stream Packaging Configuration.
+ :param str stream_distribution_channel_id: (required)
+ Unique Stream Distribution Channel path identifier.
+
+ :param oci.media_services.models.ChangeStreamDistributionChannelCompartmentDetails change_stream_distribution_channel_compartment_details: (required)
+ The change compartment payload.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
:param str opc_retry_token: (optional)
A token that uniquely identifies a request so it can be retried in case of a timeout or
@@ -1321,6 +1517,13 @@ def create_stream_packaging_config(self, create_stream_packaging_config_details,
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 str opc_request_id: (optional)
The client request ID for tracing.
@@ -1336,35 +1539,53 @@ def create_stream_packaging_config(self, create_stream_packaging_config_details,
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamPackagingConfig`
+ :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 create_stream_packaging_config API.
+ Click `here `__ to see an example of how to use change_stream_distribution_channel_compartment API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/streamPackagingConfigs"
+ required_arguments = ['streamDistributionChannelId']
+ resource_path = "/streamDistributionChannels/{streamDistributionChannelId}/actions/changeCompartment"
method = "POST"
- operation_name = "create_stream_packaging_config"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/CreateStreamPackagingConfig"
+ operation_name = "change_stream_distribution_channel_compartment"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/ChangeStreamDistributionChannelCompartment"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"opc_retry_token",
+ "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"create_stream_packaging_config got unknown kwargs: {extra_kwargs!r}")
+ f"change_stream_distribution_channel_compartment got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "streamDistributionChannelId": stream_distribution_channel_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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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),
+ "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}
@@ -1385,9 +1606,10 @@ def create_stream_packaging_config(self, create_stream_packaging_config_details,
self.base_client.call_api,
resource_path=resource_path,
method=method,
+ path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- body=create_stream_packaging_config_details,
- response_type="StreamPackagingConfig",
+ body=change_stream_distribution_channel_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1396,37 +1618,33 @@ def create_stream_packaging_config(self, create_stream_packaging_config_details,
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=create_stream_packaging_config_details,
- response_type="StreamPackagingConfig",
+ body=change_stream_distribution_channel_compartment_details,
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def delete_media_asset(self, media_asset_id, **kwargs):
+ def create_media_asset(self, create_media_asset_details, **kwargs):
"""
- Deletes a MediaAsset resource by identifier. If DeleteChildren is passed in as the mode, all the assets with the parentMediaAssetId matching the ID will be deleted. If DeleteDerivatives is set as the mode, all the assets with the masterMediaAssetId matching the ID will be deleted.
+ Creates a new MediaAsset.
- :param str media_asset_id: (required)
- Unique MediaAsset identifier
+ :param oci.media_services.models.CreateMediaAssetDetails create_media_asset_details: (required)
+ Details for the new MediaAsset.
- :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 the 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 delete_mode: (optional)
- DeleteMode decides whether to delete all the immediate children or all assets with the asset's ID as their masterMediaAssetId.
-
- Allowed values are: "DELETE_CHILDREN", "DELETE_DERIVATIONS"
-
: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.
@@ -1439,58 +1657,35 @@ def delete_media_asset(self, media_asset_id, **kwargs):
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
- :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.media_services.models.MediaAsset`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use delete_media_asset API.
+ Click `here `__ to see an example of how to use create_media_asset API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaAssetId']
- resource_path = "/mediaAssets/{mediaAssetId}"
- method = "DELETE"
- operation_name = "delete_media_asset"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/DeleteMediaAsset"
+ required_arguments = []
+ resource_path = "/mediaAssets"
+ method = "POST"
+ operation_name = "create_media_asset"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/CreateMediaAsset"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "if_match",
- "opc_request_id",
- "delete_mode"
+ "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"delete_media_asset got unknown kwargs: {extra_kwargs!r}")
-
- path_params = {
- "mediaAssetId": media_asset_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 'delete_mode' in kwargs:
- delete_mode_allowed_values = ["DELETE_CHILDREN", "DELETE_DERIVATIONS"]
- if kwargs['delete_mode'] not in delete_mode_allowed_values:
- raise ValueError(
- f"Invalid value for `delete_mode`, must be one of { delete_mode_allowed_values }"
- )
-
- query_params = {
- "deleteMode": kwargs.get("delete_mode", missing)
- }
- query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+ f"create_media_asset got unknown kwargs: {extra_kwargs!r}")
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}
@@ -1504,15 +1699,16 @@ def delete_media_asset(self, media_asset_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,
+ body=create_media_asset_details,
+ response_type="MediaAsset",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1521,38 +1717,32 @@ def delete_media_asset(self, media_asset_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,
+ body=create_media_asset_details,
+ response_type="MediaAsset",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def delete_media_asset_distribution_channel_attachment(self, media_asset_id, distribution_channel_id, **kwargs):
+ def create_media_workflow(self, create_media_workflow_details, **kwargs):
"""
- Deletes a MediaAsset from the DistributionChannel by identifiers.
-
+ Creates a new MediaWorkflow.
- :param str media_asset_id: (required)
- Unique MediaAsset identifier
- :param str distribution_channel_id: (required)
- Unique DistributionChannel identifier.
+ :param oci.media_services.models.CreateMediaWorkflowDetails create_media_workflow_details: (required)
+ Details for the new MediaWorkflow.
- :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 the 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 int version: (optional)
- Version of the attachment.
-
: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.
@@ -1565,52 +1755,35 @@ def delete_media_asset_distribution_channel_attachment(self, media_asset_id, dis
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
- :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.media_services.models.MediaWorkflow`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use delete_media_asset_distribution_channel_attachment API.
+ Click `here `__ to see an example of how to use create_media_workflow API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaAssetId', 'distributionChannelId']
- resource_path = "/mediaAssets/{mediaAssetId}/distributionChannelAttachments/{distributionChannelId}"
- method = "DELETE"
- operation_name = "delete_media_asset_distribution_channel_attachment"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAssetDistributionChannelAttachment/DeleteMediaAssetDistributionChannelAttachment"
+ required_arguments = []
+ resource_path = "/mediaWorkflows"
+ method = "POST"
+ operation_name = "create_media_workflow"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/CreateMediaWorkflow"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "if_match",
- "opc_request_id",
- "version"
+ "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"delete_media_asset_distribution_channel_attachment got unknown kwargs: {extra_kwargs!r}")
-
- path_params = {
- "mediaAssetId": media_asset_id,
- "distributionChannelId": distribution_channel_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 = {
- "version": kwargs.get("version", missing)
- }
- query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+ f"create_media_workflow got unknown kwargs: {extra_kwargs!r}")
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}
@@ -1624,16 +1797,17 @@ def delete_media_asset_distribution_channel_attachment(self, media_asset_id, dis
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'),
+ body=create_media_workflow_details,
+ response_type="MediaWorkflow",
+ allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
@@ -1641,32 +1815,32 @@ def delete_media_asset_distribution_channel_attachment(self, media_asset_id, dis
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=create_media_workflow_details,
+ response_type="MediaWorkflow",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def delete_media_workflow(self, media_workflow_id, **kwargs):
+ def create_media_workflow_configuration(self, create_media_workflow_configuration_details, **kwargs):
"""
- The MediaWorkflow lifecycleState will change to DELETED.
+ Creates a new MediaWorkflowConfiguration.
- :param str media_workflow_id: (required)
- Unique MediaWorkflow identifier.
+ :param oci.media_services.models.CreateMediaWorkflowConfigurationDetails create_media_workflow_configuration_details: (required)
+ Details for the new MediaWorkflowConfiguration.
+
+ :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 the 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.
@@ -1679,46 +1853,36 @@ def delete_media_workflow(self, media_workflow_id, **kwargs):
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
- :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.media_services.models.MediaWorkflowConfiguration`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use delete_media_workflow API.
+ Click `here `__ to see an example of how to use create_media_workflow_configuration API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowId']
- resource_path = "/mediaWorkflows/{mediaWorkflowId}"
- method = "DELETE"
- operation_name = "delete_media_workflow"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/DeleteMediaWorkflow"
+ required_arguments = []
+ resource_path = "/mediaWorkflowConfigurations"
+ method = "POST"
+ operation_name = "create_media_workflow_configuration"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/CreateMediaWorkflowConfiguration"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id",
- "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"delete_media_workflow got unknown kwargs: {extra_kwargs!r}")
-
- path_params = {
- "mediaWorkflowId": media_workflow_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')
+ f"create_media_workflow_configuration got unknown kwargs: {extra_kwargs!r}")
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),
+ "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}
@@ -1731,14 +1895,16 @@ def delete_media_workflow(self, media_workflow_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,
header_params=header_params,
+ body=create_media_workflow_configuration_details,
+ response_type="MediaWorkflowConfiguration",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1747,31 +1913,32 @@ def delete_media_workflow(self, media_workflow_id, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- path_params=path_params,
header_params=header_params,
+ body=create_media_workflow_configuration_details,
+ response_type="MediaWorkflowConfiguration",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def delete_media_workflow_configuration(self, media_workflow_configuration_id, **kwargs):
+ def create_media_workflow_job(self, create_media_workflow_job_details, **kwargs):
"""
- Deletes a MediaWorkflowConfiguration resource by identifier.
-
+ Run the MediaWorkflow according to the given mediaWorkflow definition and configuration.
- :param str media_workflow_configuration_id: (required)
- Unique MediaWorkflowConfiguration 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 oci.media_services.models.CreateMediaWorkflowJobDetails create_media_workflow_job_details: (required)
+ The information to run the mediaWorkflow.
: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 the 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.
@@ -1784,46 +1951,36 @@ def delete_media_workflow_configuration(self, media_workflow_configuration_id, *
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
- :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.media_services.models.MediaWorkflowJob`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use delete_media_workflow_configuration API.
+ Click `here `__ to see an example of how to use create_media_workflow_job API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowConfigurationId']
- resource_path = "/mediaWorkflowConfigurations/{mediaWorkflowConfigurationId}"
- method = "DELETE"
- operation_name = "delete_media_workflow_configuration"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/DeleteMediaWorkflowConfiguration"
+ required_arguments = []
+ resource_path = "/mediaWorkflowJobs"
+ method = "POST"
+ operation_name = "create_media_workflow_job"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/CreateMediaWorkflowJob"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "if_match",
- "opc_request_id"
+ "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_media_workflow_configuration got unknown kwargs: {extra_kwargs!r}")
-
- path_params = {
- "mediaWorkflowConfigurationId": media_workflow_configuration_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')
+ f"create_media_workflow_job got unknown kwargs: {extra_kwargs!r}")
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-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}
@@ -1836,14 +1993,16 @@ def delete_media_workflow_configuration(self, media_workflow_configuration_id, *
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_media_workflow_job_details,
+ response_type="MediaWorkflowJob",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1852,31 +2011,32 @@ def delete_media_workflow_configuration(self, media_workflow_configuration_id, *
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- path_params=path_params,
header_params=header_params,
+ body=create_media_workflow_job_details,
+ response_type="MediaWorkflowJob",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def delete_media_workflow_job(self, media_workflow_job_id, **kwargs):
+ def create_stream_cdn_config(self, create_stream_cdn_config_details, **kwargs):
"""
- This is an asynchronous operation. The MediaWorkflowJob lifecycleState will change to CANCELING temporarily until the job is completely CANCELED.
+ Creates a new CDN Configuration.
- :param str media_workflow_job_id: (required)
- Unique MediaWorkflowJob identifier.
+ :param oci.media_services.models.CreateStreamCdnConfigDetails create_stream_cdn_config_details: (required)
+ Details for the new StreamCdnConfig.
+
+ :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 the 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.
@@ -1889,46 +2049,36 @@ def delete_media_workflow_job(self, media_workflow_job_id, **kwargs):
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
- :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.media_services.models.StreamCdnConfig`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use delete_media_workflow_job API.
+ Click `here `__ to see an example of how to use create_stream_cdn_config API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowJobId']
- resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}"
- method = "DELETE"
- operation_name = "delete_media_workflow_job"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/DeleteMediaWorkflowJob"
+ required_arguments = []
+ resource_path = "/streamCdnConfigs"
+ method = "POST"
+ operation_name = "create_stream_cdn_config"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/CreateStreamCdnConfig"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id",
- "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"delete_media_workflow_job got unknown kwargs: {extra_kwargs!r}")
-
- path_params = {
- "mediaWorkflowJobId": media_workflow_job_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')
+ f"create_stream_cdn_config got unknown kwargs: {extra_kwargs!r}")
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),
+ "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}
@@ -1941,14 +2091,16 @@ def delete_media_workflow_job(self, media_workflow_job_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,
header_params=header_params,
+ body=create_stream_cdn_config_details,
+ response_type="StreamCdnConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -1957,31 +2109,32 @@ def delete_media_workflow_job(self, media_workflow_job_id, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- path_params=path_params,
header_params=header_params,
+ body=create_stream_cdn_config_details,
+ response_type="StreamCdnConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def delete_stream_cdn_config(self, stream_cdn_config_id, **kwargs):
+ def create_stream_distribution_channel(self, create_stream_distribution_channel_details, **kwargs):
"""
- The StreamCdnConfig lifecycleState will change to DELETED.
+ Creates a new Stream Distribution Channel.
- :param str stream_cdn_config_id: (required)
- Unique StreamCdnConfig identifier.
+ :param oci.media_services.models.CreateStreamDistributionChannelDetails create_stream_distribution_channel_details: (required)
+ Details for the new Stream Distribution Channel.
+
+ :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 the 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.
@@ -1994,46 +2147,36 @@ def delete_stream_cdn_config(self, stream_cdn_config_id, **kwargs):
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
- :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.media_services.models.StreamDistributionChannel`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use delete_stream_cdn_config API.
+ Click `here `__ to see an example of how to use create_stream_distribution_channel API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['streamCdnConfigId']
- resource_path = "/streamCdnConfigs/{streamCdnConfigId}"
- method = "DELETE"
- operation_name = "delete_stream_cdn_config"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/DeleteStreamCdnConfig"
+ required_arguments = []
+ resource_path = "/streamDistributionChannels"
+ method = "POST"
+ operation_name = "create_stream_distribution_channel"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/CreateStreamDistributionChannel"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id",
- "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"delete_stream_cdn_config got unknown kwargs: {extra_kwargs!r}")
-
- path_params = {
- "streamCdnConfigId": stream_cdn_config_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')
+ f"create_stream_distribution_channel got unknown kwargs: {extra_kwargs!r}")
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),
+ "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}
@@ -2046,14 +2189,16 @@ def delete_stream_cdn_config(self, stream_cdn_config_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,
header_params=header_params,
+ body=create_stream_distribution_channel_details,
+ response_type="StreamDistributionChannel",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -2062,31 +2207,32 @@ def delete_stream_cdn_config(self, stream_cdn_config_id, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- path_params=path_params,
header_params=header_params,
+ body=create_stream_distribution_channel_details,
+ response_type="StreamDistributionChannel",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def delete_stream_distribution_channel(self, stream_distribution_channel_id, **kwargs):
+ def create_stream_packaging_config(self, create_stream_packaging_config_details, **kwargs):
"""
- The Stream Distribution Channel lifecycleState will change to DELETED.
+ Creates a new Packaging Configuration.
- :param str stream_distribution_channel_id: (required)
- Unique Stream Distribution Channel path identifier.
+ :param oci.media_services.models.CreateStreamPackagingConfigDetails create_stream_packaging_config_details: (required)
+ Details for the new Stream Packaging Configuration.
+
+ :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 the 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.
@@ -2099,46 +2245,36 @@ def delete_stream_distribution_channel(self, stream_distribution_channel_id, **k
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
- :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.media_services.models.StreamPackagingConfig`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use delete_stream_distribution_channel API.
+ Click `here `__ to see an example of how to use create_stream_packaging_config API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['streamDistributionChannelId']
- resource_path = "/streamDistributionChannels/{streamDistributionChannelId}"
- method = "DELETE"
- operation_name = "delete_stream_distribution_channel"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/DeleteStreamDistributionChannel"
+ required_arguments = []
+ resource_path = "/streamPackagingConfigs"
+ method = "POST"
+ operation_name = "create_stream_packaging_config"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/CreateStreamPackagingConfig"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id",
- "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"delete_stream_distribution_channel got unknown kwargs: {extra_kwargs!r}")
-
- path_params = {
- "streamDistributionChannelId": stream_distribution_channel_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')
+ f"create_stream_packaging_config got unknown kwargs: {extra_kwargs!r}")
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),
+ "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}
@@ -2151,14 +2287,16 @@ def delete_stream_distribution_channel(self, stream_distribution_channel_id, **k
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_stream_packaging_config_details,
+ response_type="StreamPackagingConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -2167,23 +2305,24 @@ def delete_stream_distribution_channel(self, stream_distribution_channel_id, **k
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- path_params=path_params,
header_params=header_params,
+ body=create_stream_packaging_config_details,
+ response_type="StreamPackagingConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def delete_stream_packaging_config(self, stream_packaging_config_id, **kwargs):
+ def delete_media_asset(self, media_asset_id, **kwargs):
"""
- The Stream Packaging Configuration lifecycleState will change to DELETED.
+ Deletes a MediaAsset resource by identifier. If DeleteChildren is passed in as the mode, all the assets with the parentMediaAssetId matching the ID will be deleted. If DeleteDerivatives is set as the mode, all the assets with the masterMediaAssetId matching the ID will be deleted.
- :param str stream_packaging_config_id: (required)
- Unique Stream Packaging Configuration path identifier.
+ :param str media_asset_id: (required)
+ Unique MediaAsset identifier
- :param str opc_request_id: (optional)
- The client request ID for tracing.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
:param str if_match: (optional)
For optimistic concurrency control. In the PUT or DELETE call
@@ -2192,6 +2331,14 @@ def delete_stream_packaging_config(self, stream_packaging_config_id, **kwargs):
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 delete_mode: (optional)
+ DeleteMode decides whether to delete all the immediate children or all assets with the asset's ID as their masterMediaAssetId.
+
+ Allowed values are: "DELETE_CHILDREN", "DELETE_DERIVATIONS"
+
: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.
@@ -2208,29 +2355,31 @@ def delete_stream_packaging_config(self, stream_packaging_config_id, **kwargs):
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use delete_stream_packaging_config API.
+ Click `here `__ to see an example of how to use delete_media_asset API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['streamPackagingConfigId']
- resource_path = "/streamPackagingConfigs/{streamPackagingConfigId}"
+ required_arguments = ['mediaAssetId']
+ resource_path = "/mediaAssets/{mediaAssetId}"
method = "DELETE"
- operation_name = "delete_stream_packaging_config"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/DeleteStreamPackagingConfig"
+ operation_name = "delete_media_asset"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/DeleteMediaAsset"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
+ "if_match",
"opc_request_id",
- "if_match"
+ "delete_mode"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
raise ValueError(
- f"delete_stream_packaging_config got unknown kwargs: {extra_kwargs!r}")
+ f"delete_media_asset got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "streamPackagingConfigId": stream_packaging_config_id
+ "mediaAssetId": media_asset_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -2239,11 +2388,24 @@ def delete_stream_packaging_config(self, stream_packaging_config_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 'delete_mode' in kwargs:
+ delete_mode_allowed_values = ["DELETE_CHILDREN", "DELETE_DERIVATIONS"]
+ if kwargs['delete_mode'] not in delete_mode_allowed_values:
+ raise ValueError(
+ f"Invalid value for `delete_mode`, must be one of { delete_mode_allowed_values }"
+ )
+
+ query_params = {
+ "isLockOverride": kwargs.get("is_lock_override", missing),
+ "deleteMode": kwargs.get("delete_mode", 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),
- "if-match": kwargs.get("if_match", missing)
+ "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}
@@ -2263,6 +2425,7 @@ def delete_stream_packaging_config(self, stream_packaging_config_id, **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'),
operation_name=operation_name,
@@ -2273,23 +2436,40 @@ def delete_stream_packaging_config(self, stream_packaging_config_id, **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'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def get_media_asset(self, media_asset_id, **kwargs):
+ def delete_media_asset_distribution_channel_attachment(self, media_asset_id, distribution_channel_id, **kwargs):
"""
- Gets a MediaAsset by identifier.
+ Deletes a MediaAsset from the DistributionChannel by identifiers.
:param str media_asset_id: (required)
Unique MediaAsset identifier
+ :param str distribution_channel_id: (required)
+ Unique DistributionChannel identifier.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
+
+ :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 int version: (optional)
+ Version of the attachment.
+
: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.
@@ -2302,32 +2482,36 @@ def get_media_asset(self, media_asset_id, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAsset`
+ :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 get_media_asset API.
+ Click `here `__ to see an example of how to use delete_media_asset_distribution_channel_attachment API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaAssetId']
- resource_path = "/mediaAssets/{mediaAssetId}"
- method = "GET"
- operation_name = "get_media_asset"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/GetMediaAsset"
+ required_arguments = ['mediaAssetId', 'distributionChannelId']
+ resource_path = "/mediaAssets/{mediaAssetId}/distributionChannelAttachments/{distributionChannelId}"
+ method = "DELETE"
+ operation_name = "delete_media_asset_distribution_channel_attachment"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAssetDistributionChannelAttachment/DeleteMediaAssetDistributionChannelAttachment"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id"
+ "is_lock_override",
+ "if_match",
+ "opc_request_id",
+ "version"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
raise ValueError(
- f"get_media_asset got unknown kwargs: {extra_kwargs!r}")
+ f"delete_media_asset_distribution_channel_attachment got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaAssetId": media_asset_id
+ "mediaAssetId": media_asset_id,
+ "distributionChannelId": distribution_channel_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -2336,9 +2520,16 @@ def get_media_asset(self, media_asset_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')
+ query_params = {
+ "isLockOverride": kwargs.get("is_lock_override", missing),
+ "version": kwargs.get("version", 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}
@@ -2359,8 +2550,8 @@ def get_media_asset(self, media_asset_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaAsset",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -2370,29 +2561,33 @@ def get_media_asset(self, media_asset_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaAsset",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def get_media_asset_distribution_channel_attachment(self, media_asset_id, distribution_channel_id, **kwargs):
+ def delete_media_workflow(self, media_workflow_id, **kwargs):
"""
- Gets a MediaAssetDistributionChannelAttachment for a MediaAsset by identifiers.
+ The MediaWorkflow lifecycleState will change to DELETED.
- :param str media_asset_id: (required)
- Unique MediaAsset identifier
+ :param str media_workflow_id: (required)
+ Unique MediaWorkflow identifier.
- :param str distribution_channel_id: (required)
- Unique DistributionChannel identifier.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
:param str opc_request_id: (optional)
The client request ID for tracing.
- :param int version: (optional)
- Version of the attachment.
+ :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.
@@ -2406,34 +2601,34 @@ def get_media_asset_distribution_channel_attachment(self, media_asset_id, distri
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAssetDistributionChannelAttachment`
+ :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 get_media_asset_distribution_channel_attachment API.
+ Click `here `__ to see an example of how to use delete_media_workflow API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaAssetId', 'distributionChannelId']
- resource_path = "/mediaAssets/{mediaAssetId}/distributionChannelAttachments/{distributionChannelId}"
- method = "GET"
- operation_name = "get_media_asset_distribution_channel_attachment"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAssetDistributionChannelAttachment/GetMediaAssetDistributionChannelAttachment"
+ required_arguments = ['mediaWorkflowId']
+ resource_path = "/mediaWorkflows/{mediaWorkflowId}"
+ method = "DELETE"
+ operation_name = "delete_media_workflow"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/DeleteMediaWorkflow"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"opc_request_id",
- "version"
+ "if_match"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
raise ValueError(
- f"get_media_asset_distribution_channel_attachment got unknown kwargs: {extra_kwargs!r}")
+ f"delete_media_workflow got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaAssetId": media_asset_id,
- "distributionChannelId": distribution_channel_id
+ "mediaWorkflowId": media_workflow_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -2443,14 +2638,15 @@ def get_media_asset_distribution_channel_attachment(self, media_asset_id, distri
raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
query_params = {
- "version": kwargs.get("version", missing)
+ "isLockOverride": kwargs.get("is_lock_override", 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)
+ "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}
@@ -2472,7 +2668,6 @@ def get_media_asset_distribution_channel_attachment(self, media_asset_id, distri
path_params=path_params,
query_params=query_params,
header_params=header_params,
- response_type="MediaAssetDistributionChannelAttachment",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -2484,19 +2679,28 @@ def get_media_asset_distribution_channel_attachment(self, media_asset_id, distri
path_params=path_params,
query_params=query_params,
header_params=header_params,
- response_type="MediaAssetDistributionChannelAttachment",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def get_media_workflow(self, media_workflow_id, **kwargs):
+ def delete_media_workflow_configuration(self, media_workflow_configuration_id, **kwargs):
"""
- Gets a MediaWorkflow by identifier.
+ Deletes a MediaWorkflowConfiguration resource by identifier.
- :param str media_workflow_id: (required)
- Unique MediaWorkflow identifier.
+ :param str media_workflow_configuration_id: (required)
+ Unique MediaWorkflowConfiguration identifier.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
+
+ :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.
@@ -2513,32 +2717,34 @@ def get_media_workflow(self, media_workflow_id, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflow`
+ :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 get_media_workflow API.
+ Click `here `__ to see an example of how to use delete_media_workflow_configuration API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowId']
- resource_path = "/mediaWorkflows/{mediaWorkflowId}"
- method = "GET"
- operation_name = "get_media_workflow"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/GetMediaWorkflow"
+ required_arguments = ['mediaWorkflowConfigurationId']
+ resource_path = "/mediaWorkflowConfigurations/{mediaWorkflowConfigurationId}"
+ method = "DELETE"
+ operation_name = "delete_media_workflow_configuration"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/DeleteMediaWorkflowConfiguration"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
+ "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"get_media_workflow got unknown kwargs: {extra_kwargs!r}")
+ f"delete_media_workflow_configuration got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaWorkflowId": media_workflow_id
+ "mediaWorkflowConfigurationId": media_workflow_configuration_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -2547,9 +2753,15 @@ def get_media_workflow(self, media_workflow_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')
+ query_params = {
+ "isLockOverride": kwargs.get("is_lock_override", 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}
@@ -2570,8 +2782,8 @@ def get_media_workflow(self, media_workflow_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflow",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -2581,24 +2793,34 @@ def get_media_workflow(self, media_workflow_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflow",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def get_media_workflow_configuration(self, media_workflow_configuration_id, **kwargs):
+ def delete_media_workflow_job(self, media_workflow_job_id, **kwargs):
"""
- Gets a MediaWorkflowConfiguration by identifier
+ This is an asynchronous operation. The MediaWorkflowJob lifecycleState will change to CANCELING temporarily until the job is completely CANCELED.
- :param str media_workflow_configuration_id: (required)
- Unique MediaWorkflowConfiguration identifier.
+ :param str media_workflow_job_id: (required)
+ Unique MediaWorkflowJob identifier.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
: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.
@@ -2611,32 +2833,34 @@ def get_media_workflow_configuration(self, media_workflow_configuration_id, **kw
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowConfiguration`
+ :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 get_media_workflow_configuration API.
+ Click `here `__ to see an example of how to use delete_media_workflow_job API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowConfigurationId']
- resource_path = "/mediaWorkflowConfigurations/{mediaWorkflowConfigurationId}"
- method = "GET"
- operation_name = "get_media_workflow_configuration"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/GetMediaWorkflowConfiguration"
+ required_arguments = ['mediaWorkflowJobId']
+ resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}"
+ method = "DELETE"
+ operation_name = "delete_media_workflow_job"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/DeleteMediaWorkflowJob"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id"
+ "is_lock_override",
+ "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"get_media_workflow_configuration got unknown kwargs: {extra_kwargs!r}")
+ f"delete_media_workflow_job got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaWorkflowConfigurationId": media_workflow_configuration_id
+ "mediaWorkflowJobId": media_workflow_job_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -2645,10 +2869,16 @@ def get_media_workflow_configuration(self, media_workflow_configuration_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')
+ query_params = {
+ "isLockOverride": kwargs.get("is_lock_override", 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)
+ "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}
@@ -2668,8 +2898,8 @@ def get_media_workflow_configuration(self, media_workflow_configuration_id, **kw
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflowConfiguration",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -2679,24 +2909,34 @@ def get_media_workflow_configuration(self, media_workflow_configuration_id, **kw
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflowConfiguration",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def get_media_workflow_job(self, media_workflow_job_id, **kwargs):
+ def delete_stream_cdn_config(self, stream_cdn_config_id, **kwargs):
"""
- Gets the MediaWorkflowJob.
+ The StreamCdnConfig lifecycleState will change to DELETED.
- :param str media_workflow_job_id: (required)
- Unique MediaWorkflowJob identifier.
+ :param str stream_cdn_config_id: (required)
+ Unique StreamCdnConfig identifier.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
: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.
@@ -2709,32 +2949,34 @@ def get_media_workflow_job(self, media_workflow_job_id, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowJob`
+ :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 get_media_workflow_job API.
+ Click `here `__ to see an example of how to use delete_stream_cdn_config API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowJobId']
- resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}"
- method = "GET"
- operation_name = "get_media_workflow_job"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/GetMediaWorkflowJob"
+ required_arguments = ['streamCdnConfigId']
+ resource_path = "/streamCdnConfigs/{streamCdnConfigId}"
+ method = "DELETE"
+ operation_name = "delete_stream_cdn_config"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/DeleteStreamCdnConfig"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id"
+ "is_lock_override",
+ "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"get_media_workflow_job got unknown kwargs: {extra_kwargs!r}")
+ f"delete_stream_cdn_config got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaWorkflowJobId": media_workflow_job_id
+ "streamCdnConfigId": stream_cdn_config_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -2743,10 +2985,16 @@ def get_media_workflow_job(self, media_workflow_job_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')
+ query_params = {
+ "isLockOverride": kwargs.get("is_lock_override", 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)
+ "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}
@@ -2766,8 +3014,8 @@ def get_media_workflow_job(self, media_workflow_job_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflowJob",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -2777,27 +3025,34 @@ def get_media_workflow_job(self, media_workflow_job_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflowJob",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def get_media_workflow_job_fact(self, media_workflow_job_id, key, **kwargs):
+ def delete_stream_distribution_channel(self, stream_distribution_channel_id, **kwargs):
"""
- Get the MediaWorkflowJobFact identified by the mediaWorkflowJobId and Fact ID.
+ The Stream Distribution Channel lifecycleState will change to DELETED.
- :param str media_workflow_job_id: (required)
- Unique MediaWorkflowJob identifier.
+ :param str stream_distribution_channel_id: (required)
+ Unique Stream Distribution Channel path identifier.
- :param int key: (required)
- Identifier of the MediaWorkflowJobFact within a MediaWorkflowJob.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
: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.
@@ -2810,33 +3065,34 @@ def get_media_workflow_job_fact(self, media_workflow_job_id, key, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowJobFact`
+ :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 get_media_workflow_job_fact API.
+ Click `here `__ to see an example of how to use delete_stream_distribution_channel API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowJobId', 'key']
- resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}/facts/{key}"
- method = "GET"
- operation_name = "get_media_workflow_job_fact"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJobFact/GetMediaWorkflowJobFact"
+ required_arguments = ['streamDistributionChannelId']
+ resource_path = "/streamDistributionChannels/{streamDistributionChannelId}"
+ method = "DELETE"
+ operation_name = "delete_stream_distribution_channel"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/DeleteStreamDistributionChannel"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id"
+ "is_lock_override",
+ "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"get_media_workflow_job_fact got unknown kwargs: {extra_kwargs!r}")
+ f"delete_stream_distribution_channel got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaWorkflowJobId": media_workflow_job_id,
- "key": key
+ "streamDistributionChannelId": stream_distribution_channel_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -2845,10 +3101,16 @@ def get_media_workflow_job_fact(self, media_workflow_job_id, key, **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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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)
+ "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}
@@ -2868,8 +3130,8 @@ def get_media_workflow_job_fact(self, media_workflow_job_id, key, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflowJobFact",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -2879,24 +3141,34 @@ def get_media_workflow_job_fact(self, media_workflow_job_id, key, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflowJobFact",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def get_stream_cdn_config(self, stream_cdn_config_id, **kwargs):
+ def delete_stream_packaging_config(self, stream_packaging_config_id, **kwargs):
"""
- Gets a StreamCdnConfig by identifier.
+ The Stream Packaging Configuration lifecycleState will change to DELETED.
- :param str stream_cdn_config_id: (required)
- Unique StreamCdnConfig identifier.
+ :param str stream_packaging_config_id: (required)
+ Unique Stream Packaging Configuration path identifier.
+
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
: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.
@@ -2909,32 +3181,34 @@ def get_stream_cdn_config(self, stream_cdn_config_id, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamCdnConfig`
+ :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 get_stream_cdn_config API.
+ Click `here `__ to see an example of how to use delete_stream_packaging_config API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['streamCdnConfigId']
- resource_path = "/streamCdnConfigs/{streamCdnConfigId}"
- method = "GET"
- operation_name = "get_stream_cdn_config"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/GetStreamCdnConfig"
+ required_arguments = ['streamPackagingConfigId']
+ resource_path = "/streamPackagingConfigs/{streamPackagingConfigId}"
+ method = "DELETE"
+ operation_name = "delete_stream_packaging_config"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/DeleteStreamPackagingConfig"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id"
+ "is_lock_override",
+ "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"get_stream_cdn_config got unknown kwargs: {extra_kwargs!r}")
+ f"delete_stream_packaging_config got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "streamCdnConfigId": stream_cdn_config_id
+ "streamPackagingConfigId": stream_packaging_config_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -2943,10 +3217,16 @@ def get_stream_cdn_config(self, stream_cdn_config_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')
+ query_params = {
+ "isLockOverride": kwargs.get("is_lock_override", 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)
+ "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}
@@ -2966,8 +3246,8 @@ def get_stream_cdn_config(self, stream_cdn_config_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="StreamCdnConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -2977,20 +3257,20 @@ def get_stream_cdn_config(self, stream_cdn_config_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="StreamCdnConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def get_stream_distribution_channel(self, stream_distribution_channel_id, **kwargs):
+ def get_media_asset(self, media_asset_id, **kwargs):
"""
- Gets a Stream Distribution Channel by identifier.
+ Gets a MediaAsset by identifier.
- :param str stream_distribution_channel_id: (required)
- Unique Stream Distribution Channel path identifier.
+ :param str media_asset_id: (required)
+ Unique MediaAsset identifier
:param str opc_request_id: (optional)
The client request ID for tracing.
@@ -3007,18 +3287,18 @@ def get_stream_distribution_channel(self, stream_distribution_channel_id, **kwar
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamDistributionChannel`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAsset`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use get_stream_distribution_channel API.
+ Click `here `__ to see an example of how to use get_media_asset API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['streamDistributionChannelId']
- resource_path = "/streamDistributionChannels/{streamDistributionChannelId}"
+ required_arguments = ['mediaAssetId']
+ resource_path = "/mediaAssets/{mediaAssetId}"
method = "GET"
- operation_name = "get_stream_distribution_channel"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/GetStreamDistributionChannel"
+ operation_name = "get_media_asset"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/GetMediaAsset"
# Don't accept unknown kwargs
expected_kwargs = [
@@ -3029,10 +3309,10 @@ def get_stream_distribution_channel(self, stream_distribution_channel_id, **kwar
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
raise ValueError(
- f"get_stream_distribution_channel got unknown kwargs: {extra_kwargs!r}")
+ f"get_media_asset got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "streamDistributionChannelId": stream_distribution_channel_id
+ "mediaAssetId": media_asset_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -3065,7 +3345,7 @@ def get_stream_distribution_channel(self, stream_distribution_channel_id, **kwar
method=method,
path_params=path_params,
header_params=header_params,
- response_type="StreamDistributionChannel",
+ response_type="MediaAsset",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -3076,23 +3356,29 @@ def get_stream_distribution_channel(self, stream_distribution_channel_id, **kwar
method=method,
path_params=path_params,
header_params=header_params,
- response_type="StreamDistributionChannel",
+ response_type="MediaAsset",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def get_stream_packaging_config(self, stream_packaging_config_id, **kwargs):
+ def get_media_asset_distribution_channel_attachment(self, media_asset_id, distribution_channel_id, **kwargs):
"""
- Gets a Stream Packaging Configuration by identifier.
+ Gets a MediaAssetDistributionChannelAttachment for a MediaAsset by identifiers.
- :param str stream_packaging_config_id: (required)
- Unique Stream Packaging Configuration path identifier.
+ :param str media_asset_id: (required)
+ Unique MediaAsset identifier
+
+ :param str distribution_channel_id: (required)
+ Unique DistributionChannel identifier.
:param str opc_request_id: (optional)
The client request ID for tracing.
+ :param int version: (optional)
+ Version of the attachment.
+
: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.
@@ -3105,32 +3391,34 @@ def get_stream_packaging_config(self, stream_packaging_config_id, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamPackagingConfig`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAssetDistributionChannelAttachment`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use get_stream_packaging_config API.
+ Click `here `__ to see an example of how to use get_media_asset_distribution_channel_attachment API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['streamPackagingConfigId']
- resource_path = "/streamPackagingConfigs/{streamPackagingConfigId}"
+ required_arguments = ['mediaAssetId', 'distributionChannelId']
+ resource_path = "/mediaAssets/{mediaAssetId}/distributionChannelAttachments/{distributionChannelId}"
method = "GET"
- operation_name = "get_stream_packaging_config"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/GetStreamPackagingConfig"
+ operation_name = "get_media_asset_distribution_channel_attachment"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAssetDistributionChannelAttachment/GetMediaAssetDistributionChannelAttachment"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "opc_request_id"
+ "opc_request_id",
+ "version"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
raise ValueError(
- f"get_stream_packaging_config got unknown kwargs: {extra_kwargs!r}")
+ f"get_media_asset_distribution_channel_attachment got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "streamPackagingConfigId": stream_packaging_config_id
+ "mediaAssetId": media_asset_id,
+ "distributionChannelId": distribution_channel_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -3139,6 +3427,11 @@ def get_stream_packaging_config(self, stream_packaging_config_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')
+ query_params = {
+ "version": kwargs.get("version", 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",
@@ -3162,8 +3455,9 @@ def get_stream_packaging_config(self, stream_packaging_config_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="StreamPackagingConfig",
+ response_type="MediaAssetDistributionChannelAttachment",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -3173,30 +3467,21 @@ def get_stream_packaging_config(self, stream_packaging_config_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
- response_type="StreamPackagingConfig",
+ response_type="MediaAssetDistributionChannelAttachment",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def ingest_stream_distribution_channel(self, stream_distribution_channel_id, ingest_stream_distribution_channel_details, **kwargs):
+ def get_media_workflow(self, media_workflow_id, **kwargs):
"""
- Ingests an Asset into a Distribution Channel.
-
-
- :param str stream_distribution_channel_id: (required)
- Unique Stream Distribution Channel path identifier.
+ Gets a MediaWorkflow by identifier.
- :param oci.media_services.models.IngestStreamDistributionChannelDetails ingest_stream_distribution_channel_details: (required)
- Playlist entry information.
- :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 the 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 media_workflow_id: (required)
+ Unique MediaWorkflow identifier.
:param str opc_request_id: (optional)
The client request ID for tracing.
@@ -3213,33 +3498,32 @@ def ingest_stream_distribution_channel(self, stream_distribution_channel_id, ing
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.IngestStreamDistributionChannelResult`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflow`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use ingest_stream_distribution_channel API.
+ Click `here `__ to see an example of how to use get_media_workflow API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['streamDistributionChannelId']
- resource_path = "/streamDistributionChannels/{streamDistributionChannelId}/actions/ingest"
- method = "POST"
- operation_name = "ingest_stream_distribution_channel"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/IngestStreamDistributionChannel"
+ required_arguments = ['mediaWorkflowId']
+ resource_path = "/mediaWorkflows/{mediaWorkflowId}"
+ method = "GET"
+ operation_name = "get_media_workflow"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/GetMediaWorkflow"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"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"ingest_stream_distribution_channel got unknown kwargs: {extra_kwargs!r}")
+ f"get_media_workflow got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "streamDistributionChannelId": stream_distribution_channel_id
+ "mediaWorkflowId": media_workflow_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -3251,7 +3535,6 @@ def ingest_stream_distribution_channel(self, stream_distribution_channel_id, ing
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}
@@ -3265,7 +3548,6 @@ def ingest_stream_distribution_channel(self, stream_distribution_channel_id, ing
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(
@@ -3274,8 +3556,7 @@ def ingest_stream_distribution_channel(self, stream_distribution_channel_id, ing
method=method,
path_params=path_params,
header_params=header_params,
- body=ingest_stream_distribution_channel_details,
- response_type="IngestStreamDistributionChannelResult",
+ response_type="MediaWorkflow",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -3286,47 +3567,23 @@ def ingest_stream_distribution_channel(self, stream_distribution_channel_id, ing
method=method,
path_params=path_params,
header_params=header_params,
- body=ingest_stream_distribution_channel_details,
- response_type="IngestStreamDistributionChannelResult",
+ response_type="MediaWorkflow",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_media_asset_distribution_channel_attachments(self, media_asset_id, **kwargs):
+ def get_media_workflow_configuration(self, media_workflow_configuration_id, **kwargs):
"""
- Lists the MediaAssetDistributionChannelAttachments for a MediaAsset by identifier.
-
-
- :param str media_asset_id: (required)
- Unique MediaAsset identifier
-
- :param str display_name: (optional)
- A filter to return only the resources that match the entire display name given.
+ Gets a MediaWorkflowConfiguration by 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 media_workflow_configuration_id: (required)
+ Unique MediaWorkflowConfiguration identifier.
:param str opc_request_id: (optional)
The client request ID for tracing.
- :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: "mediaAssetId", "distributionChannelId", "displayName", "version"
-
- :param str distribution_channel_id: (optional)
- Unique DistributionChannel 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.
@@ -3339,38 +3596,32 @@ def list_media_asset_distribution_channel_attachments(self, media_asset_id, **kw
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAssetDistributionChannelAttachmentCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowConfiguration`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_media_asset_distribution_channel_attachments API.
+ Click `here `__ to see an example of how to use get_media_workflow_configuration API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaAssetId']
- resource_path = "/mediaAssets/{mediaAssetId}/distributionChannelAttachments"
+ required_arguments = ['mediaWorkflowConfigurationId']
+ resource_path = "/mediaWorkflowConfigurations/{mediaWorkflowConfigurationId}"
method = "GET"
- operation_name = "list_media_asset_distribution_channel_attachments"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAssetDistributionChannelAttachmentCollection/ListMediaAssetDistributionChannelAttachments"
+ operation_name = "get_media_workflow_configuration"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/GetMediaWorkflowConfiguration"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "display_name",
- "limit",
- "page",
- "opc_request_id",
- "sort_order",
- "sort_by",
- "distribution_channel_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_media_asset_distribution_channel_attachments got unknown kwargs: {extra_kwargs!r}")
+ f"get_media_workflow_configuration got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaAssetId": media_asset_id
+ "mediaWorkflowConfigurationId": media_workflow_configuration_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -3379,30 +3630,6 @@ def list_media_asset_distribution_channel_attachments(self, media_asset_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 '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 = ["mediaAssetId", "distributionChannelId", "displayName", "version"]
- 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 = {
- "displayName": kwargs.get("display_name", missing),
- "limit": kwargs.get("limit", missing),
- "page": kwargs.get("page", missing),
- "sortOrder": kwargs.get("sort_order", missing),
- "sortBy": kwargs.get("sort_by", missing),
- "distributionChannelId": kwargs.get("distribution_channel_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",
@@ -3426,9 +3653,8 @@ def list_media_asset_distribution_channel_attachments(self, media_asset_id, **kw
resource_path=resource_path,
method=method,
path_params=path_params,
- query_params=query_params,
header_params=header_params,
- response_type="MediaAssetDistributionChannelAttachmentCollection",
+ response_type="MediaWorkflowConfiguration",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -3438,79 +3664,24 @@ def list_media_asset_distribution_channel_attachments(self, media_asset_id, **kw
resource_path=resource_path,
method=method,
path_params=path_params,
- query_params=query_params,
header_params=header_params,
- response_type="MediaAssetDistributionChannelAttachmentCollection",
+ response_type="MediaWorkflowConfiguration",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_media_assets(self, **kwargs):
+ def get_media_workflow_job(self, media_workflow_job_id, **kwargs):
"""
- Returns a list of MediaAssetSummary.
-
-
- :param str compartment_id: (optional)
- The ID of the compartment in which to list resources.
-
- :param str display_name: (optional)
- A filter to return only the resources that match the entire display name given.
-
- :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 lifecycle_state: (optional)
- A filter to return only the resources with lifecycleState matching the given lifecycleState.
-
- Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"
-
- :param str sort_order: (optional)
- The sort order to use, either 'ASC' or 'DESC'.
-
- Allowed values are: "ASC", "DESC"
+ Gets the MediaWorkflowJob.
- :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: "compartmentId", "type", "lifecycleState", "parentMediaAssetId", "masterMediaAssetId", "displayName", "timeCreated", "timeUpdated"
+ :param str media_workflow_job_id: (required)
+ Unique MediaWorkflowJob identifier.
:param str opc_request_id: (optional)
The client request ID for tracing.
- :param str distribution_channel_id: (optional)
- Unique DistributionChannel identifier.
-
- :param str parent_media_asset_id: (optional)
- Unique MediaAsset identifier of the asset from which this asset is derived.
-
- :param str master_media_asset_id: (optional)
- Unique MediaAsset identifier of the first asset upload.
-
- :param str type: (optional)
- Filter MediaAsset by the asset type.
-
- Allowed values are: "AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "UNKNOWN"
-
- :param str bucket_name: (optional)
- Filter MediaAsset by the bucket where the object is stored.
-
- :param str object_name: (optional)
- Filter MediaAsset by the name of the object in object storage.
-
- :param str media_workflow_job_id: (optional)
- The ID of the MediaWorkflowJob used to produce this asset, if this parameter is supplied then the workflow ID must also be supplied.
-
- :param str source_media_workflow_id: (optional)
- The ID of the MediaWorkflow used to produce this asset.
-
- :param int source_media_workflow_version: (optional)
- The version of the MediaWorkflow used to produce this asset.
-
: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.
@@ -3523,93 +3694,39 @@ def list_media_assets(self, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAssetCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowJob`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_media_assets API.
+ Click `here `__ to see an example of how to use get_media_workflow_job API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/mediaAssets"
+ required_arguments = ['mediaWorkflowJobId']
+ resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}"
method = "GET"
- operation_name = "list_media_assets"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/ListMediaAssets"
+ operation_name = "get_media_workflow_job"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/GetMediaWorkflowJob"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "compartment_id",
- "display_name",
- "limit",
- "page",
- "lifecycle_state",
- "sort_order",
- "sort_by",
- "opc_request_id",
- "distribution_channel_id",
- "parent_media_asset_id",
- "master_media_asset_id",
- "type",
- "bucket_name",
- "object_name",
- "media_workflow_job_id",
- "source_media_workflow_id",
- "source_media_workflow_version"
+ "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_media_assets 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 }"
- )
+ f"get_media_workflow_job 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 }"
- )
+ path_params = {
+ "mediaWorkflowJobId": media_workflow_job_id
+ }
- if 'sort_by' in kwargs:
- sort_by_allowed_values = ["compartmentId", "type", "lifecycleState", "parentMediaAssetId", "masterMediaAssetId", "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 }"
- )
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
- if 'type' in kwargs:
- type_allowed_values = ["AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "UNKNOWN"]
- if kwargs['type'] not in type_allowed_values:
- raise ValueError(
- f"Invalid value for `type`, must be one of { type_allowed_values }"
- )
-
- query_params = {
- "compartmentId": kwargs.get("compartment_id", missing),
- "displayName": kwargs.get("display_name", missing),
- "limit": kwargs.get("limit", missing),
- "page": kwargs.get("page", missing),
- "lifecycleState": kwargs.get("lifecycle_state", missing),
- "sortOrder": kwargs.get("sort_order", missing),
- "sortBy": kwargs.get("sort_by", missing),
- "distributionChannelId": kwargs.get("distribution_channel_id", missing),
- "parentMediaAssetId": kwargs.get("parent_media_asset_id", missing),
- "masterMediaAssetId": kwargs.get("master_media_asset_id", missing),
- "type": kwargs.get("type", missing),
- "bucketName": kwargs.get("bucket_name", missing),
- "objectName": kwargs.get("object_name", missing),
- "mediaWorkflowJobId": kwargs.get("media_workflow_job_id", missing),
- "sourceMediaWorkflowId": kwargs.get("source_media_workflow_id", missing),
- "sourceMediaWorkflowVersion": kwargs.get("source_media_workflow_version", missing)
- }
- query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+ 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",
@@ -3633,9 +3750,9 @@ def list_media_assets(self, **kwargs):
self.base_client.call_api,
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="MediaAssetCollection",
+ response_type="MediaWorkflowJob",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -3644,50 +3761,21 @@ def list_media_assets(self, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="MediaAssetCollection",
+ response_type="MediaWorkflowJob",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_media_workflow_configurations(self, **kwargs):
+ def get_stream_cdn_config(self, stream_cdn_config_id, **kwargs):
"""
- Returns a list of MediaWorkflowConfigurations.
-
-
- :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 the resources with lifecycleState matching the given lifecycleState.
-
- Allowed values are: "ACTIVE", "NEEDS_ATTENTION", "DELETED"
-
- :param str display_name: (optional)
- A filter to return only the resources that match the entire display name given.
-
- :param str id: (optional)
- Unique MediaWorkflowConfiguration 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"
+ Gets a StreamCdnConfig by identifier.
- :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 stream_cdn_config_id: (required)
+ Unique StreamCdnConfig identifier.
:param str opc_request_id: (optional)
The client request ID for tracing.
@@ -3704,70 +3792,39 @@ def list_media_workflow_configurations(self, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowConfigurationCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamCdnConfig`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_media_workflow_configurations API.
+ Click `here `__ to see an example of how to use get_stream_cdn_config API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/mediaWorkflowConfigurations"
+ required_arguments = ['streamCdnConfigId']
+ resource_path = "/streamCdnConfigs/{streamCdnConfigId}"
method = "GET"
- operation_name = "list_media_workflow_configurations"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfigurationCollection/ListMediaWorkflowConfigurations"
+ operation_name = "get_stream_cdn_config"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/GetStreamCdnConfig"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"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_media_workflow_configurations got unknown kwargs: {extra_kwargs!r}")
-
- if 'lifecycle_state' in kwargs:
- lifecycle_state_allowed_values = ["ACTIVE", "NEEDS_ATTENTION", "DELETED"]
- 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 }"
- )
+ f"get_stream_cdn_config 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 }"
- )
+ path_params = {
+ "streamCdnConfigId": stream_cdn_config_id
+ }
- 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 = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
- 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}
+ 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",
@@ -3791,9 +3848,9 @@ def list_media_workflow_configurations(self, **kwargs):
self.base_client.call_api,
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="MediaWorkflowConfigurationCollection",
+ response_type="StreamCdnConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -3802,46 +3859,21 @@ def list_media_workflow_configurations(self, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="MediaWorkflowConfigurationCollection",
+ response_type="StreamCdnConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_media_workflow_job_facts(self, media_workflow_job_id, **kwargs):
+ def get_stream_distribution_channel(self, stream_distribution_channel_id, **kwargs):
"""
- Internal API to get a point-in-time snapshot of a MediaWorkflowJob.
-
-
- :param str media_workflow_job_id: (required)
- Unique MediaWorkflowJob identifier.
-
- :param int key: (optional)
- Filter by MediaWorkflowJob ID and MediaWorkflowJobFact key.
-
- :param str type: (optional)
- Types of details to include.
-
- Allowed values are: "runnableJob", "taskDeclaration", "workflow", "configuration", "parameterResolutionEvent"
-
- :param str sort_by: (optional)
- Types of details to include.
-
- Allowed values are: "key"
-
- :param str sort_order: (optional)
- The sort order to use, either 'ASC' or 'DESC'.
-
- Allowed values are: "ASC", "DESC"
+ Gets a Stream Distribution Channel by identifier.
- :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 stream_distribution_channel_id: (required)
+ Unique Stream Distribution Channel path identifier.
:param str opc_request_id: (optional)
The client request ID for tracing.
@@ -3858,38 +3890,32 @@ def list_media_workflow_job_facts(self, media_workflow_job_id, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowJobFactCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamDistributionChannel`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_media_workflow_job_facts API.
+ Click `here `__ to see an example of how to use get_stream_distribution_channel API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['mediaWorkflowJobId']
- resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}/facts"
+ required_arguments = ['streamDistributionChannelId']
+ resource_path = "/streamDistributionChannels/{streamDistributionChannelId}"
method = "GET"
- operation_name = "list_media_workflow_job_facts"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJobFact/ListMediaWorkflowJobFacts"
+ operation_name = "get_stream_distribution_channel"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/GetStreamDistributionChannel"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "key",
- "type",
- "sort_by",
- "sort_order",
- "page",
- "limit",
"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_media_workflow_job_facts got unknown kwargs: {extra_kwargs!r}")
+ f"get_stream_distribution_channel got unknown kwargs: {extra_kwargs!r}")
path_params = {
- "mediaWorkflowJobId": media_workflow_job_id
+ "streamDistributionChannelId": stream_distribution_channel_id
}
path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -3898,37 +3924,6 @@ def list_media_workflow_job_facts(self, media_workflow_job_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 'type' in kwargs:
- type_allowed_values = ["runnableJob", "taskDeclaration", "workflow", "configuration", "parameterResolutionEvent"]
- 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 = ["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 }"
- )
-
- 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 = {
- "key": kwargs.get("key", missing),
- "type": kwargs.get("type", missing),
- "sortBy": kwargs.get("sort_by", missing),
- "sortOrder": kwargs.get("sort_order", 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",
@@ -3952,9 +3947,8 @@ def list_media_workflow_job_facts(self, media_workflow_job_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
- query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflowJobFactCollection",
+ response_type="StreamDistributionChannel",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -3964,52 +3958,20 @@ def list_media_workflow_job_facts(self, media_workflow_job_id, **kwargs):
resource_path=resource_path,
method=method,
path_params=path_params,
- query_params=query_params,
header_params=header_params,
- response_type="MediaWorkflowJobFactCollection",
+ response_type="StreamDistributionChannel",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_media_workflow_jobs(self, **kwargs):
+ def get_stream_packaging_config(self, stream_packaging_config_id, **kwargs):
"""
- Lists the MediaWorkflowJobs.
-
-
- :param str compartment_id: (optional)
- The ID of the compartment in which to list resources.
-
- :param str id: (optional)
- unique MediaWorkflowJob identifier
-
- :param str media_workflow_id: (optional)
- Unique MediaWorkflow identifier.
-
- :param str display_name: (optional)
- A filter to return only the resources that match the entire display name given.
-
- :param str lifecycle_state: (optional)
- A filter to return only the resources with lifecycleState matching the given lifecycleState.
-
- Allowed values are: "ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED"
-
- :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 parameter sort by.
-
- Allowed values are: "timeCreated", "workflowId", "lifecycleState"
+ Gets a Stream Packaging Configuration by identifier.
- :param str sort_order: (optional)
- The sort order to use, either 'ASC' or 'DESC'.
- Allowed values are: "ASC", "DESC"
+ :param str stream_packaging_config_id: (required)
+ Unique Stream Packaging Configuration path identifier.
:param str opc_request_id: (optional)
The client request ID for tracing.
@@ -4026,72 +3988,39 @@ def list_media_workflow_jobs(self, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowJobCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamPackagingConfig`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_media_workflow_jobs API.
+ Click `here `__ to see an example of how to use get_stream_packaging_config API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/mediaWorkflowJobs"
+ required_arguments = ['streamPackagingConfigId']
+ resource_path = "/streamPackagingConfigs/{streamPackagingConfigId}"
method = "GET"
- operation_name = "list_media_workflow_jobs"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/ListMediaWorkflowJobs"
+ operation_name = "get_stream_packaging_config"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/GetStreamPackagingConfig"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "compartment_id",
- "id",
- "media_workflow_id",
- "display_name",
- "lifecycle_state",
- "page",
- "limit",
- "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_media_workflow_jobs got unknown kwargs: {extra_kwargs!r}")
-
- if 'lifecycle_state' in kwargs:
- lifecycle_state_allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED"]
- 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 }"
- )
+ f"get_stream_packaging_config got unknown kwargs: {extra_kwargs!r}")
- if 'sort_by' in kwargs:
- sort_by_allowed_values = ["timeCreated", "workflowId", "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 }"
- )
+ path_params = {
+ "streamPackagingConfigId": stream_packaging_config_id
+ }
- 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 }"
- )
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
- query_params = {
- "compartmentId": kwargs.get("compartment_id", missing),
- "id": kwargs.get("id", missing),
- "mediaWorkflowId": kwargs.get("media_workflow_id", missing),
- "displayName": kwargs.get("display_name", missing),
- "lifecycleState": kwargs.get("lifecycle_state", missing),
- "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}
+ 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",
@@ -4115,9 +4044,9 @@ def list_media_workflow_jobs(self, **kwargs):
self.base_client.call_api,
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="MediaWorkflowJobCollection",
+ response_type="StreamPackagingConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -4126,47 +4055,31 @@ def list_media_workflow_jobs(self, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="MediaWorkflowJobCollection",
+ response_type="StreamPackagingConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_media_workflow_task_declarations(self, **kwargs):
+ def ingest_stream_distribution_channel(self, stream_distribution_channel_id, ingest_stream_distribution_channel_details, **kwargs):
"""
- Returns a list of MediaWorkflowTaskDeclarations.
-
-
- :param str compartment_id: (optional)
- The ID of the compartment in which to list resources.
-
- :param str name: (optional)
- A filter to return only the resources with their system defined, unique name matching the given name.
-
- :param int version: (optional)
- A filter to select MediaWorkflowTaskDeclaration by version.
-
- :param bool is_current: (optional)
- A filter to only select the newest version for each MediaWorkflowTaskDeclaration name.
-
- :param str sort_by: (optional)
- The field to sort by. Only one sort order may be provided.
-
- Allowed values are: "name", "version"
+ Ingests an Asset into a Distribution Channel.
- :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 stream_distribution_channel_id: (required)
+ Unique Stream Distribution Channel path identifier.
- :param str sort_order: (optional)
- The sort order to use, either 'ASC' or 'DESC'.
+ :param oci.media_services.models.IngestStreamDistributionChannelDetails ingest_stream_distribution_channel_details: (required)
+ Playlist entry information.
- Allowed values are: "ASC", "DESC"
+ :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 the 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.
@@ -4183,67 +4096,45 @@ def list_media_workflow_task_declarations(self, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowTaskDeclarationCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.IngestStreamDistributionChannelResult`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_media_workflow_task_declarations API.
+ Click `here `__ to see an example of how to use ingest_stream_distribution_channel API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/mediaWorkflowTaskDeclarations"
- method = "GET"
- operation_name = "list_media_workflow_task_declarations"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowTaskDeclarationCollection/ListMediaWorkflowTaskDeclarations"
+ required_arguments = ['streamDistributionChannelId']
+ resource_path = "/streamDistributionChannels/{streamDistributionChannelId}/actions/ingest"
+ method = "POST"
+ operation_name = "ingest_stream_distribution_channel"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/IngestStreamDistributionChannel"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "compartment_id",
- "name",
- "version",
- "is_current",
- "sort_by",
- "limit",
- "page",
- "sort_order",
+ "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"list_media_workflow_task_declarations got unknown kwargs: {extra_kwargs!r}")
+ f"ingest_stream_distribution_channel got unknown kwargs: {extra_kwargs!r}")
- if 'sort_by' in kwargs:
- sort_by_allowed_values = ["name", "version"]
- 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 = {
+ "streamDistributionChannelId": stream_distribution_channel_id
+ }
- 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 }"
- )
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
- query_params = {
- "compartmentId": kwargs.get("compartment_id", missing),
- "name": kwargs.get("name", missing),
- "version": kwargs.get("version", missing),
- "isCurrent": kwargs.get("is_current", missing),
- "sortBy": kwargs.get("sort_by", 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}
+ 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)
}
header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
@@ -4257,15 +4148,17 @@ def list_media_workflow_task_declarations(self, **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,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="MediaWorkflowTaskDeclarationCollection",
+ body=ingest_stream_distribution_channel_details,
+ response_type="IngestStreamDistributionChannelResult",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -4274,32 +4167,35 @@ def list_media_workflow_task_declarations(self, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="MediaWorkflowTaskDeclarationCollection",
+ body=ingest_stream_distribution_channel_details,
+ response_type="IngestStreamDistributionChannelResult",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_media_workflows(self, **kwargs):
+ def list_media_asset_distribution_channel_attachments(self, media_asset_id, **kwargs):
"""
- Lists the MediaWorkflows.
+ Lists the MediaAssetDistributionChannelAttachments for a MediaAsset by identifier.
- :param str compartment_id: (optional)
- The ID of the compartment in which to list resources.
+ :param str media_asset_id: (required)
+ Unique MediaAsset identifier
- :param str id: (optional)
- Unique MediaWorkflow identifier.
+ :param str display_name: (optional)
+ A filter to return only the resources that match the entire display name given.
- :param str lifecycle_state: (optional)
- A filter to return only the resources with lifecycleState matching the given lifecycleState.
+ :param int limit: (optional)
+ The maximum number of items to return.
- Allowed values are: "ACTIVE", "NEEDS_ATTENTION", "DELETED"
+ :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 display_name: (optional)
- A filter to return only the resources that match the entire display name given.
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
:param str sort_order: (optional)
The sort order to use, either 'ASC' or 'DESC'.
@@ -4307,20 +4203,12 @@ def list_media_workflows(self, **kwargs):
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 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.
+ The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending.
- :param int limit: (optional)
- The maximum number of items to return.
+ Allowed values are: "mediaAssetId", "distributionChannelId", "displayName", "version"
- :param str opc_request_id: (optional)
- The client request ID for tracing.
+ :param str distribution_channel_id: (optional)
+ Unique DistributionChannel 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.
@@ -4334,44 +4222,45 @@ def list_media_workflows(self, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAssetDistributionChannelAttachmentCollection`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_media_workflows API.
+ Click `here `__ to see an example of how to use list_media_asset_distribution_channel_attachments API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/mediaWorkflows"
+ required_arguments = ['mediaAssetId']
+ resource_path = "/mediaAssets/{mediaAssetId}/distributionChannelAttachments"
method = "GET"
- operation_name = "list_media_workflows"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/ListMediaWorkflows"
+ operation_name = "list_media_asset_distribution_channel_attachments"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAssetDistributionChannelAttachmentCollection/ListMediaAssetDistributionChannelAttachments"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "compartment_id",
- "id",
- "lifecycle_state",
"display_name",
+ "limit",
+ "page",
+ "opc_request_id",
"sort_order",
"sort_by",
- "page",
- "limit",
- "opc_request_id"
+ "distribution_channel_id"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
raise ValueError(
- f"list_media_workflows got unknown kwargs: {extra_kwargs!r}")
+ f"list_media_asset_distribution_channel_attachments got unknown kwargs: {extra_kwargs!r}")
- if 'lifecycle_state' in kwargs:
- lifecycle_state_allowed_values = ["ACTIVE", "NEEDS_ATTENTION", "DELETED"]
- 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 }"
- )
+ path_params = {
+ "mediaAssetId": media_asset_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"]
@@ -4381,21 +4270,19 @@ def list_media_workflows(self, **kwargs):
)
if 'sort_by' in kwargs:
- sort_by_allowed_values = ["timeCreated", "displayName"]
+ sort_by_allowed_values = ["mediaAssetId", "distributionChannelId", "displayName", "version"]
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),
- "id": kwargs.get("id", missing),
- "lifecycleState": kwargs.get("lifecycle_state", missing),
"displayName": kwargs.get("display_name", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
"sortOrder": kwargs.get("sort_order", missing),
"sortBy": kwargs.get("sort_by", missing),
- "page": kwargs.get("page", missing),
- "limit": kwargs.get("limit", missing)
+ "distributionChannelId": kwargs.get("distribution_channel_id", missing)
}
query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
@@ -4421,9 +4308,10 @@ def list_media_workflows(self, **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="MediaWorkflowCollection",
+ response_type="MediaAssetDistributionChannelAttachmentCollection",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -4432,32 +4320,37 @@ def list_media_workflows(self, **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="MediaWorkflowCollection",
+ response_type="MediaAssetDistributionChannelAttachmentCollection",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_stream_cdn_configs(self, distribution_channel_id, **kwargs):
+ def list_media_assets(self, **kwargs):
"""
- Lists the StreamCdnConfig.
+ Returns a list of MediaAssetSummary.
- :param str distribution_channel_id: (required)
- The Stream Distribution Channel identifier this CdnConfig belongs to.
+ :param str compartment_id: (optional)
+ The ID of the compartment in which to list resources.
- :param str id: (optional)
- Unique StreamCdnConfig identifier.
+ :param str display_name: (optional)
+ A filter to return only the resources that match the entire display name given.
+
+ :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 lifecycle_state: (optional)
A filter to return only the resources with lifecycleState matching the given lifecycleState.
- Allowed values are: "ACTIVE", "NEEDS_ATTENTION", "DELETED"
-
- :param str display_name: (optional)
- A filter to return only the resources that match the entire display name given.
+ Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"
:param str sort_order: (optional)
The sort order to use, either 'ASC' or 'DESC'.
@@ -4465,21 +4358,42 @@ def list_stream_cdn_configs(self, distribution_channel_id, **kwargs):
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 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.
+ The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending.
- :param int limit: (optional)
- The maximum number of items to return.
+ Allowed values are: "compartmentId", "type", "lifecycleState", "parentMediaAssetId", "masterMediaAssetId", "displayName", "timeCreated", "timeUpdated"
:param str opc_request_id: (optional)
The client request ID for tracing.
+ :param str distribution_channel_id: (optional)
+ Unique DistributionChannel identifier.
+
+ :param str parent_media_asset_id: (optional)
+ Unique MediaAsset identifier of the asset from which this asset is derived.
+
+ :param str master_media_asset_id: (optional)
+ Unique MediaAsset identifier of the first asset upload.
+
+ :param str type: (optional)
+ Filter MediaAsset by the asset type.
+
+ Allowed values are: "AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "UNKNOWN"
+
+ :param str bucket_name: (optional)
+ Filter MediaAsset by the bucket where the object is stored.
+
+ :param str object_name: (optional)
+ Filter MediaAsset by the name of the object in object storage.
+
+ :param str media_workflow_job_id: (optional)
+ The ID of the MediaWorkflowJob used to produce this asset, if this parameter is supplied then the workflow ID must also be supplied.
+
+ :param str source_media_workflow_id: (optional)
+ The ID of the MediaWorkflow used to produce this asset.
+
+ :param int source_media_workflow_version: (optional)
+ The version of the MediaWorkflow used to produce this asset.
+
: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.
@@ -4492,39 +4406,48 @@ def list_stream_cdn_configs(self, distribution_channel_id, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamCdnConfigCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAssetCollection`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_stream_cdn_configs API.
+ Click `here `__ to see an example of how to use list_media_assets API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['distributionChannelId']
- resource_path = "/streamCdnConfigs"
+ required_arguments = []
+ resource_path = "/mediaAssets"
method = "GET"
- operation_name = "list_stream_cdn_configs"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/ListStreamCdnConfigs"
+ operation_name = "list_media_assets"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/ListMediaAssets"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "id",
- "lifecycle_state",
+ "compartment_id",
"display_name",
+ "limit",
+ "page",
+ "lifecycle_state",
"sort_order",
"sort_by",
- "page",
- "limit",
- "opc_request_id"
+ "opc_request_id",
+ "distribution_channel_id",
+ "parent_media_asset_id",
+ "master_media_asset_id",
+ "type",
+ "bucket_name",
+ "object_name",
+ "media_workflow_job_id",
+ "source_media_workflow_id",
+ "source_media_workflow_version"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
raise ValueError(
- f"list_stream_cdn_configs got unknown kwargs: {extra_kwargs!r}")
+ f"list_media_assets got unknown kwargs: {extra_kwargs!r}")
if 'lifecycle_state' in kwargs:
- lifecycle_state_allowed_values = ["ACTIVE", "NEEDS_ATTENTION", "DELETED"]
+ 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 }"
@@ -4538,21 +4461,36 @@ def list_stream_cdn_configs(self, distribution_channel_id, **kwargs):
)
if 'sort_by' in kwargs:
- sort_by_allowed_values = ["timeCreated", "displayName"]
+ sort_by_allowed_values = ["compartmentId", "type", "lifecycleState", "parentMediaAssetId", "masterMediaAssetId", "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 }"
)
+ if 'type' in kwargs:
+ type_allowed_values = ["AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "UNKNOWN"]
+ if kwargs['type'] not in type_allowed_values:
+ raise ValueError(
+ f"Invalid value for `type`, must be one of { type_allowed_values }"
+ )
+
query_params = {
- "distributionChannelId": distribution_channel_id,
- "id": kwargs.get("id", missing),
- "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "compartmentId": kwargs.get("compartment_id", missing),
"displayName": kwargs.get("display_name", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
"sortOrder": kwargs.get("sort_order", missing),
"sortBy": kwargs.get("sort_by", missing),
- "page": kwargs.get("page", missing),
- "limit": kwargs.get("limit", missing)
+ "distributionChannelId": kwargs.get("distribution_channel_id", missing),
+ "parentMediaAssetId": kwargs.get("parent_media_asset_id", missing),
+ "masterMediaAssetId": kwargs.get("master_media_asset_id", missing),
+ "type": kwargs.get("type", missing),
+ "bucketName": kwargs.get("bucket_name", missing),
+ "objectName": kwargs.get("object_name", missing),
+ "mediaWorkflowJobId": kwargs.get("media_workflow_job_id", missing),
+ "sourceMediaWorkflowId": kwargs.get("source_media_workflow_id", missing),
+ "sourceMediaWorkflowVersion": kwargs.get("source_media_workflow_version", missing)
}
query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
@@ -4580,7 +4518,7 @@ def list_stream_cdn_configs(self, distribution_channel_id, **kwargs):
method=method,
query_params=query_params,
header_params=header_params,
- response_type="StreamCdnConfigCollection",
+ response_type="MediaAssetCollection",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -4591,23 +4529,20 @@ def list_stream_cdn_configs(self, distribution_channel_id, **kwargs):
method=method,
query_params=query_params,
header_params=header_params,
- response_type="StreamCdnConfigCollection",
+ response_type="MediaAssetCollection",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_stream_distribution_channels(self, **kwargs):
+ def list_media_workflow_configurations(self, **kwargs):
"""
- Lists the Stream Distribution Channels.
+ Returns a list of MediaWorkflowConfigurations.
:param str compartment_id: (optional)
The ID of the compartment in which to list resources.
- :param str id: (optional)
- Unique Stream Distribution Channel identifier.
-
:param str lifecycle_state: (optional)
A filter to return only the resources with lifecycleState matching the given lifecycleState.
@@ -4616,6 +4551,16 @@ def list_stream_distribution_channels(self, **kwargs):
:param str display_name: (optional)
A filter to return only the resources that match the entire display name given.
+ :param str id: (optional)
+ Unique MediaWorkflowConfiguration 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'.
@@ -4627,13 +4572,6 @@ def list_stream_distribution_channels(self, **kwargs):
Allowed values are: "timeCreated", "displayName"
- :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 opc_request_id: (optional)
The client request ID for tracing.
@@ -4649,37 +4587,37 @@ def list_stream_distribution_channels(self, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamDistributionChannelCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowConfigurationCollection`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_stream_distribution_channels API.
+ Click `here `__ to see an example of how to use list_media_workflow_configurations API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
required_arguments = []
- resource_path = "/streamDistributionChannels"
+ resource_path = "/mediaWorkflowConfigurations"
method = "GET"
- operation_name = "list_stream_distribution_channels"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/ListStreamDistributionChannels"
+ operation_name = "list_media_workflow_configurations"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfigurationCollection/ListMediaWorkflowConfigurations"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
"compartment_id",
- "id",
"lifecycle_state",
"display_name",
+ "id",
+ "limit",
+ "page",
"sort_order",
"sort_by",
- "page",
- "limit",
"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_stream_distribution_channels got unknown kwargs: {extra_kwargs!r}")
+ f"list_media_workflow_configurations got unknown kwargs: {extra_kwargs!r}")
if 'lifecycle_state' in kwargs:
lifecycle_state_allowed_values = ["ACTIVE", "NEEDS_ATTENTION", "DELETED"]
@@ -4704,13 +4642,13 @@ def list_stream_distribution_channels(self, **kwargs):
query_params = {
"compartmentId": kwargs.get("compartment_id", missing),
- "id": kwargs.get("id", missing),
"lifecycleState": kwargs.get("lifecycle_state", missing),
"displayName": kwargs.get("display_name", missing),
- "sortOrder": kwargs.get("sort_order", missing),
- "sortBy": kwargs.get("sort_by", missing),
+ "id": kwargs.get("id", missing),
+ "limit": kwargs.get("limit", 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}
@@ -4738,7 +4676,7 @@ def list_stream_distribution_channels(self, **kwargs):
method=method,
query_params=query_params,
header_params=header_params,
- response_type="StreamDistributionChannelCollection",
+ response_type="MediaWorkflowConfigurationCollection",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -4749,52 +4687,1714 @@ def list_stream_distribution_channels(self, **kwargs):
method=method,
query_params=query_params,
header_params=header_params,
- response_type="StreamDistributionChannelCollection",
+ response_type="MediaWorkflowConfigurationCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_media_workflow_jobs(self, **kwargs):
+ """
+ Lists the MediaWorkflowJobs.
+
+
+ :param str compartment_id: (optional)
+ The ID of the compartment in which to list resources.
+
+ :param str id: (optional)
+ unique MediaWorkflowJob identifier
+
+ :param str media_workflow_id: (optional)
+ Unique MediaWorkflow identifier.
+
+ :param str display_name: (optional)
+ A filter to return only the resources that match the entire display name given.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only the resources with lifecycleState matching the given lifecycleState.
+
+ Allowed values are: "ACCEPTED", "IN_PROGRESS", "WAITING", "REJECTED", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED"
+
+ :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 parameter sort by.
+
+ Allowed values are: "timeCreated", "workflowId", "lifecycleState"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'ASC' or 'DESC'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowJobCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_media_workflow_jobs API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = []
+ resource_path = "/mediaWorkflowJobs"
+ method = "GET"
+ operation_name = "list_media_workflow_jobs"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/ListMediaWorkflowJobs"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "compartment_id",
+ "id",
+ "media_workflow_id",
+ "display_name",
+ "lifecycle_state",
+ "page",
+ "limit",
+ "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_media_workflow_jobs got unknown kwargs: {extra_kwargs!r}")
+
+ if 'lifecycle_state' in kwargs:
+ lifecycle_state_allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "REJECTED", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED"]
+ 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", "workflowId", "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 }"
+ )
+
+ 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),
+ "id": kwargs.get("id", missing),
+ "mediaWorkflowId": kwargs.get("media_workflow_id", missing),
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "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,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="MediaWorkflowJobCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="MediaWorkflowJobCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_media_workflow_task_declarations(self, **kwargs):
+ """
+ Returns a list of MediaWorkflowTaskDeclarations.
+
+
+ :param str compartment_id: (optional)
+ The ID of the compartment in which to list resources.
+
+ :param str name: (optional)
+ A filter to return only the resources with their system defined, unique name matching the given name.
+
+ :param int version: (optional)
+ A filter to select MediaWorkflowTaskDeclaration by version.
+
+ :param bool is_current: (optional)
+ A filter to only select the newest version for each MediaWorkflowTaskDeclaration name.
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided.
+
+ Allowed values are: "name", "version"
+
+ :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 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowTaskDeclarationCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_media_workflow_task_declarations API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = []
+ resource_path = "/mediaWorkflowTaskDeclarations"
+ method = "GET"
+ operation_name = "list_media_workflow_task_declarations"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowTaskDeclarationCollection/ListMediaWorkflowTaskDeclarations"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "compartment_id",
+ "name",
+ "version",
+ "is_current",
+ "sort_by",
+ "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_media_workflow_task_declarations got unknown kwargs: {extra_kwargs!r}")
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["name", "version"]
+ 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),
+ "name": kwargs.get("name", missing),
+ "version": kwargs.get("version", missing),
+ "isCurrent": kwargs.get("is_current", missing),
+ "sortBy": kwargs.get("sort_by", 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="MediaWorkflowTaskDeclarationCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="MediaWorkflowTaskDeclarationCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_media_workflows(self, **kwargs):
+ """
+ Lists the MediaWorkflows.
+
+
+ :param str compartment_id: (optional)
+ The ID of the compartment in which to list resources.
+
+ :param str id: (optional)
+ Unique MediaWorkflow identifier.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only the resources with lifecycleState matching the given lifecycleState.
+
+ Allowed values are: "ACTIVE", "NEEDS_ATTENTION", "DELETED"
+
+ :param str display_name: (optional)
+ A filter to return only the resources that match the entire display name given.
+
+ :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 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 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_media_workflows API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = []
+ resource_path = "/mediaWorkflows"
+ method = "GET"
+ operation_name = "list_media_workflows"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/ListMediaWorkflows"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "compartment_id",
+ "id",
+ "lifecycle_state",
+ "display_name",
+ "sort_order",
+ "sort_by",
+ "page",
+ "limit",
+ "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_media_workflows got unknown kwargs: {extra_kwargs!r}")
+
+ if 'lifecycle_state' in kwargs:
+ lifecycle_state_allowed_values = ["ACTIVE", "NEEDS_ATTENTION", "DELETED"]
+ 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),
+ "id": kwargs.get("id", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "displayName": kwargs.get("display_name", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "sortBy": kwargs.get("sort_by", 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="MediaWorkflowCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="MediaWorkflowCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_stream_cdn_configs(self, distribution_channel_id, **kwargs):
+ """
+ Lists the StreamCdnConfig.
+
+
+ :param str distribution_channel_id: (required)
+ The Stream Distribution Channel identifier this CdnConfig belongs to.
+
+ :param str id: (optional)
+ Unique StreamCdnConfig identifier.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only the resources with lifecycleState matching the given lifecycleState.
+
+ Allowed values are: "ACTIVE", "NEEDS_ATTENTION", "DELETED"
+
+ :param str display_name: (optional)
+ A filter to return only the resources that match the entire display name given.
+
+ :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 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 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamCdnConfigCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_stream_cdn_configs API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['distributionChannelId']
+ resource_path = "/streamCdnConfigs"
+ method = "GET"
+ operation_name = "list_stream_cdn_configs"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/ListStreamCdnConfigs"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "id",
+ "lifecycle_state",
+ "display_name",
+ "sort_order",
+ "sort_by",
+ "page",
+ "limit",
+ "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_stream_cdn_configs got unknown kwargs: {extra_kwargs!r}")
+
+ if 'lifecycle_state' in kwargs:
+ lifecycle_state_allowed_values = ["ACTIVE", "NEEDS_ATTENTION", "DELETED"]
+ 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 = {
+ "distributionChannelId": distribution_channel_id,
+ "id": kwargs.get("id", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "displayName": kwargs.get("display_name", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "sortBy": kwargs.get("sort_by", 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="StreamCdnConfigCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="StreamCdnConfigCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_stream_distribution_channels(self, **kwargs):
+ """
+ Lists the Stream Distribution Channels.
+
+
+ :param str compartment_id: (optional)
+ The ID of the compartment in which to list resources.
+
+ :param str id: (optional)
+ Unique Stream Distribution Channel identifier.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only the resources with lifecycleState matching the given lifecycleState.
+
+ Allowed values are: "ACTIVE", "NEEDS_ATTENTION", "DELETED"
+
+ :param str display_name: (optional)
+ A filter to return only the resources that match the entire display name given.
+
+ :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 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 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamDistributionChannelCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_stream_distribution_channels API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = []
+ resource_path = "/streamDistributionChannels"
+ method = "GET"
+ operation_name = "list_stream_distribution_channels"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/ListStreamDistributionChannels"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "compartment_id",
+ "id",
+ "lifecycle_state",
+ "display_name",
+ "sort_order",
+ "sort_by",
+ "page",
+ "limit",
+ "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_stream_distribution_channels got unknown kwargs: {extra_kwargs!r}")
+
+ if 'lifecycle_state' in kwargs:
+ lifecycle_state_allowed_values = ["ACTIVE", "NEEDS_ATTENTION", "DELETED"]
+ 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),
+ "id": kwargs.get("id", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "displayName": kwargs.get("display_name", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "sortBy": kwargs.get("sort_by", 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="StreamDistributionChannelCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="StreamDistributionChannelCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_stream_packaging_configs(self, distribution_channel_id, **kwargs):
+ """
+ Lists the Stream Packaging Configurations.
+
+
+ :param str distribution_channel_id: (required)
+ Unique Stream Distribution Channel identifier.
+
+ :param str stream_packaging_config_id: (optional)
+ Unique Stream Packaging Configuration identifier.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only the resources with lifecycleState matching the given lifecycleState.
+
+ Allowed values are: "ACTIVE", "NEEDS_ATTENTION", "DELETED"
+
+ :param str display_name: (optional)
+ A filter to return only the resources that match the entire display name given.
+
+ :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 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 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamPackagingConfigCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_stream_packaging_configs API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['distributionChannelId']
+ resource_path = "/streamPackagingConfigs"
+ method = "GET"
+ operation_name = "list_stream_packaging_configs"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/ListStreamPackagingConfigs"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "stream_packaging_config_id",
+ "lifecycle_state",
+ "display_name",
+ "sort_order",
+ "sort_by",
+ "page",
+ "limit",
+ "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_stream_packaging_configs got unknown kwargs: {extra_kwargs!r}")
+
+ if 'lifecycle_state' in kwargs:
+ lifecycle_state_allowed_values = ["ACTIVE", "NEEDS_ATTENTION", "DELETED"]
+ 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 = {
+ "distributionChannelId": distribution_channel_id,
+ "streamPackagingConfigId": kwargs.get("stream_packaging_config_id", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "displayName": kwargs.get("display_name", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "sortBy": kwargs.get("sort_by", 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="StreamPackagingConfigCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="StreamPackagingConfigCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def list_system_media_workflows(self, **kwargs):
+ """
+ Lists the SystemMediaWorkflows that can be used to run a job by name or as a template to create a MediaWorkflow.
+
+
+ :param str compartment_id: (optional)
+ The ID of the compartment in which to list resources.
+
+ :param str name: (optional)
+ A filter to return only the resources with their system defined, unique name matching the given name.
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'ASC' or 'DESC'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :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 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.SystemMediaWorkflowCollection`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use list_system_media_workflows API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = []
+ resource_path = "/systemMediaWorkflows"
+ method = "GET"
+ operation_name = "list_system_media_workflows"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/ListSystemMediaWorkflows"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "retry_strategy",
+ "compartment_id",
+ "name",
+ "sort_order",
+ "page",
+ "limit",
+ "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_system_media_workflows 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 }"
+ )
+
+ query_params = {
+ "compartmentId": kwargs.get("compartment_id", missing),
+ "name": kwargs.get("name", missing),
+ "sortOrder": kwargs.get("sort_order", 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="SystemMediaWorkflowCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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="SystemMediaWorkflowCollection",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def remove_media_asset_lock(self, remove_lock_details, media_asset_id, **kwargs):
+ """
+ Remove a lock to an MediaAsset.
+
+
+ :param oci.media_services.models.RemoveLockDetails remove_lock_details: (required)
+ The details to be updated for the RemoveLock.
+
+ :param str media_asset_id: (required)
+ Unique MediaAsset 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 the 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaAsset`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use remove_media_asset_lock API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['mediaAssetId']
+ resource_path = "/mediaAssets/{mediaAssetId}/actions/removeLock"
+ method = "POST"
+ operation_name = "remove_media_asset_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaAsset/RemoveMediaAssetLock"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"remove_media_asset_lock got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "mediaAssetId": media_asset_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=remove_lock_details,
+ response_type="MediaAsset",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=remove_lock_details,
+ response_type="MediaAsset",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def remove_media_workflow_configuration_lock(self, remove_resource_lock_details, media_workflow_configuration_id, **kwargs):
+ """
+ Remove a lock from a MediaWorkflowConfiguration.
+
+
+ :param oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
+
+ :param str media_workflow_configuration_id: (required)
+ Unique MediaWorkflowConfiguration 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 the 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowConfiguration`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use remove_media_workflow_configuration_lock API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['mediaWorkflowConfigurationId']
+ resource_path = "/mediaWorkflowConfigurations/{mediaWorkflowConfigurationId}/actions/removeLock"
+ method = "POST"
+ operation_name = "remove_media_workflow_configuration_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowConfiguration/RemoveMediaWorkflowConfigurationLock"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"remove_media_workflow_configuration_lock got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "mediaWorkflowConfigurationId": media_workflow_configuration_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=remove_resource_lock_details,
+ response_type="MediaWorkflowConfiguration",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=remove_resource_lock_details,
+ response_type="MediaWorkflowConfiguration",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def remove_media_workflow_job_lock(self, remove_lock_details, media_workflow_job_id, **kwargs):
+ """
+ Remove a lock from a MediaWorkflowJob.
+
+
+ :param oci.media_services.models.RemoveLockDetails remove_lock_details: (required)
+ The details to be updated for the RemoveLock.
+
+ :param str media_workflow_job_id: (required)
+ Unique MediaWorkflowJob 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 the 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflowJob`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use remove_media_workflow_job_lock API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['mediaWorkflowJobId']
+ resource_path = "/mediaWorkflowJobs/{mediaWorkflowJobId}/actions/removeLock"
+ method = "POST"
+ operation_name = "remove_media_workflow_job_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflowJob/RemoveMediaWorkflowJobLock"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"remove_media_workflow_job_lock got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "mediaWorkflowJobId": media_workflow_job_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=remove_lock_details,
+ response_type="MediaWorkflowJob",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=remove_lock_details,
+ response_type="MediaWorkflowJob",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def remove_media_workflow_lock(self, remove_resource_lock_details, media_workflow_id, **kwargs):
+ """
+ Remove a lock from a MediaWorkflow.
+
+
+ :param oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
+
+ :param str media_workflow_id: (required)
+ Unique MediaWorkflow 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 the 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.MediaWorkflow`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use remove_media_workflow_lock API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['mediaWorkflowId']
+ resource_path = "/mediaWorkflows/{mediaWorkflowId}/actions/removeLock"
+ method = "POST"
+ operation_name = "remove_media_workflow_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/RemoveMediaWorkflowLock"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"remove_media_workflow_lock got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "mediaWorkflowId": media_workflow_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=remove_resource_lock_details,
+ response_type="MediaWorkflow",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=remove_resource_lock_details,
+ response_type="MediaWorkflow",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
+ def remove_stream_cdn_config_lock(self, remove_resource_lock_details, stream_cdn_config_id, **kwargs):
+ """
+ Remove a lock from a StreamCdnConfig.
+
+
+ :param oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
+
+ :param str stream_cdn_config_id: (required)
+ Unique StreamCdnConfig 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 the 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
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamCdnConfig`
+ :rtype: :class:`~oci.response.Response`
+
+ :example:
+ Click `here `__ to see an example of how to use remove_stream_cdn_config_lock API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['streamCdnConfigId']
+ resource_path = "/streamCdnConfigs/{streamCdnConfigId}/actions/removeLock"
+ method = "POST"
+ operation_name = "remove_stream_cdn_config_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamCdnConfig/RemoveStreamCdnConfigLock"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"remove_stream_cdn_config_lock got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "streamCdnConfigId": stream_cdn_config_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=remove_resource_lock_details,
+ response_type="StreamCdnConfig",
+ allow_control_chars=kwargs.get('allow_control_chars'),
+ 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=remove_resource_lock_details,
+ response_type="StreamCdnConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_stream_packaging_configs(self, distribution_channel_id, **kwargs):
+ def remove_stream_distribution_channel_lock(self, remove_resource_lock_details, stream_distribution_channel_id, **kwargs):
"""
- Lists the Stream Packaging Configurations.
-
-
- :param str distribution_channel_id: (required)
- Unique Stream Distribution Channel identifier.
-
- :param str stream_packaging_config_id: (optional)
- Unique Stream Packaging Configuration identifier.
-
- :param str lifecycle_state: (optional)
- A filter to return only the resources with lifecycleState matching the given lifecycleState.
-
- Allowed values are: "ACTIVE", "NEEDS_ATTENTION", "DELETED"
+ Remove a lock to a StreamDistributionChannel.
- :param str display_name: (optional)
- A filter to return only the resources that match the entire display name given.
-
- :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 oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
- :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 stream_distribution_channel_id: (required)
+ Unique Stream Distribution Channel path identifier.
- :param int limit: (optional)
- The maximum number of items to return.
+ :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 the 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.
@@ -4807,74 +6407,48 @@ def list_stream_packaging_configs(self, distribution_channel_id, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamPackagingConfigCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamDistributionChannel`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_stream_packaging_configs API.
+ Click `here `__ to see an example of how to use remove_stream_distribution_channel_lock API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = ['distributionChannelId']
- resource_path = "/streamPackagingConfigs"
- method = "GET"
- operation_name = "list_stream_packaging_configs"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/ListStreamPackagingConfigs"
+ required_arguments = ['streamDistributionChannelId']
+ resource_path = "/streamDistributionChannels/{streamDistributionChannelId}/actions/removeLock"
+ method = "POST"
+ operation_name = "remove_stream_distribution_channel_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamDistributionChannel/RemoveStreamDistributionChannelLock"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "stream_packaging_config_id",
- "lifecycle_state",
- "display_name",
- "sort_order",
- "sort_by",
- "page",
- "limit",
- "opc_request_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"list_stream_packaging_configs got unknown kwargs: {extra_kwargs!r}")
-
- if 'lifecycle_state' in kwargs:
- lifecycle_state_allowed_values = ["ACTIVE", "NEEDS_ATTENTION", "DELETED"]
- 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 }"
- )
+ f"remove_stream_distribution_channel_lock 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 }"
- )
+ path_params = {
+ "streamDistributionChannelId": stream_distribution_channel_id
+ }
- 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 = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
- query_params = {
- "distributionChannelId": distribution_channel_id,
- "streamPackagingConfigId": kwargs.get("stream_packaging_config_id", missing),
- "lifecycleState": kwargs.get("lifecycle_state", missing),
- "displayName": kwargs.get("display_name", missing),
- "sortOrder": kwargs.get("sort_order", missing),
- "sortBy": kwargs.get("sort_by", 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}
+ 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-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}
@@ -4887,15 +6461,17 @@ def list_stream_packaging_configs(self, distribution_channel_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,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="StreamPackagingConfigCollection",
+ body=remove_resource_lock_details,
+ response_type="StreamDistributionChannel",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -4904,40 +6480,43 @@ def list_stream_packaging_configs(self, distribution_channel_id, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="StreamPackagingConfigCollection",
+ body=remove_resource_lock_details,
+ response_type="StreamDistributionChannel",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
required_arguments=required_arguments)
- def list_system_media_workflows(self, **kwargs):
+ def remove_stream_packaging_config_lock(self, remove_resource_lock_details, stream_packaging_config_id, **kwargs):
"""
- Lists the SystemMediaWorkflows that can be used to run a job by name or as a template to create a MediaWorkflow.
-
-
- :param str compartment_id: (optional)
- The ID of the compartment in which to list resources.
-
- :param str name: (optional)
- A filter to return only the resources with their system defined, unique name matching the given name.
+ Remove a lock from a StreamPackagingConfig.
- :param str sort_order: (optional)
- The sort order to use, either 'ASC' or 'DESC'.
- Allowed values are: "ASC", "DESC"
+ :param oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
- :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 stream_packaging_config_id: (required)
+ Unique Stream Packaging Configuration path identifier.
- :param int limit: (optional)
- The maximum number of items to return.
+ :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 the 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.
@@ -4950,55 +6529,48 @@ def list_system_media_workflows(self, **kwargs):
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
- :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.SystemMediaWorkflowCollection`
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.media_services.models.StreamPackagingConfig`
:rtype: :class:`~oci.response.Response`
:example:
- Click `here `__ to see an example of how to use list_system_media_workflows API.
+ Click `here `__ to see an example of how to use remove_stream_packaging_config_lock API.
"""
# Required path and query arguments. These are in camelCase to replace values in service endpoints.
- required_arguments = []
- resource_path = "/systemMediaWorkflows"
- method = "GET"
- operation_name = "list_system_media_workflows"
- api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/MediaWorkflow/ListSystemMediaWorkflows"
+ required_arguments = ['streamPackagingConfigId']
+ resource_path = "/streamPackagingConfigs/{streamPackagingConfigId}/actions/removeLock"
+ method = "POST"
+ operation_name = "remove_stream_packaging_config_lock"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/dms/20211101/StreamPackagingConfig/RemoveStreamPackagingConfigLock"
# Don't accept unknown kwargs
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
- "compartment_id",
- "name",
- "sort_order",
- "page",
- "limit",
- "opc_request_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"list_system_media_workflows 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 }"
- )
+ f"remove_stream_packaging_config_lock got unknown kwargs: {extra_kwargs!r}")
- query_params = {
- "compartmentId": kwargs.get("compartment_id", missing),
- "name": kwargs.get("name", missing),
- "sortOrder": kwargs.get("sort_order", missing),
- "page": kwargs.get("page", missing),
- "limit": kwargs.get("limit", missing)
+ path_params = {
+ "streamPackagingConfigId": stream_packaging_config_id
}
- query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ 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-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}
@@ -5011,15 +6583,17 @@ def list_system_media_workflows(self, **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,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="SystemMediaWorkflowCollection",
+ body=remove_resource_lock_details,
+ response_type="StreamPackagingConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -5028,9 +6602,10 @@ def list_system_media_workflows(self, **kwargs):
return self.base_client.call_api(
resource_path=resource_path,
method=method,
- query_params=query_params,
+ path_params=path_params,
header_params=header_params,
- response_type="SystemMediaWorkflowCollection",
+ body=remove_resource_lock_details,
+ response_type="StreamPackagingConfig",
allow_control_chars=kwargs.get('allow_control_chars'),
operation_name=operation_name,
api_reference_link=api_reference_link,
@@ -5047,6 +6622,9 @@ def update_media_asset(self, media_asset_id, update_media_asset_details, **kwarg
:param oci.media_services.models.UpdateMediaAssetDetails update_media_asset_details: (required)
The information to be updated.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
+
: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
@@ -5086,6 +6664,7 @@ def update_media_asset(self, media_asset_id, update_media_asset_details, **kwarg
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"if_match",
"opc_request_id"
]
@@ -5104,6 +6683,11 @@ def update_media_asset(self, media_asset_id, update_media_asset_details, **kwarg
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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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",
@@ -5128,6 +6712,7 @@ def update_media_asset(self, media_asset_id, update_media_asset_details, **kwarg
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_media_asset_details,
response_type="MediaAsset",
@@ -5140,6 +6725,7 @@ def update_media_asset(self, media_asset_id, update_media_asset_details, **kwarg
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_media_asset_details,
response_type="MediaAsset",
@@ -5159,6 +6745,9 @@ def update_media_workflow(self, media_workflow_id, update_media_workflow_details
:param oci.media_services.models.UpdateMediaWorkflowDetails update_media_workflow_details: (required)
The information to be updated.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
+
: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
@@ -5198,6 +6787,7 @@ def update_media_workflow(self, media_workflow_id, update_media_workflow_details
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"if_match",
"opc_request_id"
]
@@ -5216,6 +6806,11 @@ def update_media_workflow(self, media_workflow_id, update_media_workflow_details
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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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",
@@ -5240,6 +6835,7 @@ def update_media_workflow(self, media_workflow_id, update_media_workflow_details
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_media_workflow_details,
response_type="MediaWorkflow",
@@ -5252,6 +6848,7 @@ def update_media_workflow(self, media_workflow_id, update_media_workflow_details
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_media_workflow_details,
response_type="MediaWorkflow",
@@ -5271,6 +6868,9 @@ def update_media_workflow_configuration(self, media_workflow_configuration_id, u
:param oci.media_services.models.UpdateMediaWorkflowConfigurationDetails update_media_workflow_configuration_details: (required)
The information to be updated.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
+
: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
@@ -5310,6 +6910,7 @@ def update_media_workflow_configuration(self, media_workflow_configuration_id, u
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"if_match",
"opc_request_id"
]
@@ -5328,6 +6929,11 @@ def update_media_workflow_configuration(self, media_workflow_configuration_id, u
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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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",
@@ -5352,6 +6958,7 @@ def update_media_workflow_configuration(self, media_workflow_configuration_id, u
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_media_workflow_configuration_details,
response_type="MediaWorkflowConfiguration",
@@ -5364,6 +6971,7 @@ def update_media_workflow_configuration(self, media_workflow_configuration_id, u
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_media_workflow_configuration_details,
response_type="MediaWorkflowConfiguration",
@@ -5383,6 +6991,9 @@ def update_media_workflow_job(self, media_workflow_job_id, update_media_workflow
:param oci.media_services.models.UpdateMediaWorkflowJobDetails update_media_workflow_job_details: (required)
The information to be updated.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
+
: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
@@ -5422,6 +7033,7 @@ def update_media_workflow_job(self, media_workflow_job_id, update_media_workflow
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"if_match",
"opc_request_id"
]
@@ -5440,6 +7052,11 @@ def update_media_workflow_job(self, media_workflow_job_id, update_media_workflow
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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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",
@@ -5464,6 +7081,7 @@ def update_media_workflow_job(self, media_workflow_job_id, update_media_workflow
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_media_workflow_job_details,
response_type="MediaWorkflowJob",
@@ -5476,6 +7094,7 @@ def update_media_workflow_job(self, media_workflow_job_id, update_media_workflow
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_media_workflow_job_details,
response_type="MediaWorkflowJob",
@@ -5495,6 +7114,9 @@ def update_stream_cdn_config(self, stream_cdn_config_id, update_stream_cdn_confi
:param oci.media_services.models.UpdateStreamCdnConfigDetails update_stream_cdn_config_details: (required)
The information to be updated.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
+
: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
@@ -5534,6 +7156,7 @@ def update_stream_cdn_config(self, stream_cdn_config_id, update_stream_cdn_confi
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"if_match",
"opc_request_id"
]
@@ -5552,6 +7175,11 @@ def update_stream_cdn_config(self, stream_cdn_config_id, update_stream_cdn_confi
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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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",
@@ -5576,6 +7204,7 @@ def update_stream_cdn_config(self, stream_cdn_config_id, update_stream_cdn_confi
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_stream_cdn_config_details,
response_type="StreamCdnConfig",
@@ -5588,6 +7217,7 @@ def update_stream_cdn_config(self, stream_cdn_config_id, update_stream_cdn_confi
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_stream_cdn_config_details,
response_type="StreamCdnConfig",
@@ -5607,6 +7237,9 @@ def update_stream_distribution_channel(self, stream_distribution_channel_id, upd
:param oci.media_services.models.UpdateStreamDistributionChannelDetails update_stream_distribution_channel_details: (required)
The information to be updated.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
+
: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
@@ -5646,6 +7279,7 @@ def update_stream_distribution_channel(self, stream_distribution_channel_id, upd
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"if_match",
"opc_request_id"
]
@@ -5664,6 +7298,11 @@ def update_stream_distribution_channel(self, stream_distribution_channel_id, upd
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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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",
@@ -5688,6 +7327,7 @@ def update_stream_distribution_channel(self, stream_distribution_channel_id, upd
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_stream_distribution_channel_details,
response_type="StreamDistributionChannel",
@@ -5700,6 +7340,7 @@ def update_stream_distribution_channel(self, stream_distribution_channel_id, upd
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_stream_distribution_channel_details,
response_type="StreamDistributionChannel",
@@ -5719,6 +7360,9 @@ def update_stream_packaging_config(self, stream_packaging_config_id, update_stre
:param oci.media_services.models.UpdateStreamPackagingConfigDetails update_stream_packaging_config_details: (required)
The information to be updated.
+ :param bool is_lock_override: (optional)
+ Whether to override locks (if any exist).
+
: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
@@ -5758,6 +7402,7 @@ def update_stream_packaging_config(self, stream_packaging_config_id, update_stre
expected_kwargs = [
"allow_control_chars",
"retry_strategy",
+ "is_lock_override",
"if_match",
"opc_request_id"
]
@@ -5776,6 +7421,11 @@ def update_stream_packaging_config(self, stream_packaging_config_id, update_stre
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 = {
+ "isLockOverride": kwargs.get("is_lock_override", 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",
@@ -5800,6 +7450,7 @@ def update_stream_packaging_config(self, stream_packaging_config_id, update_stre
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_stream_packaging_config_details,
response_type="StreamPackagingConfig",
@@ -5812,6 +7463,7 @@ def update_stream_packaging_config(self, stream_packaging_config_id, update_stre
resource_path=resource_path,
method=method,
path_params=path_params,
+ query_params=query_params,
header_params=header_params,
body=update_stream_packaging_config_details,
response_type="StreamPackagingConfig",
diff --git a/src/oci/media_services/media_services_client_composite_operations.py b/src/oci/media_services/media_services_client_composite_operations.py
index 0418af6352..a5886dc4d2 100644
--- a/src/oci/media_services/media_services_client_composite_operations.py
+++ b/src/oci/media_services/media_services_client_composite_operations.py
@@ -25,25 +25,28 @@ def __init__(self, client, **kwargs):
"""
self.client = client
- def create_media_asset_and_wait_for_state(self, create_media_asset_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def add_media_asset_lock_and_wait_for_state(self, add_lock_details, media_asset_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.create_media_asset` and waits for the :py:class:`~oci.media_services.models.MediaAsset` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.add_media_asset_lock` and waits for the :py:class:`~oci.media_services.models.MediaAsset` acted upon
to enter the given state(s).
- :param oci.media_services.models.CreateMediaAssetDetails create_media_asset_details: (required)
- Details for the new MediaAsset.
+ :param oci.media_services.models.AddLockDetails add_lock_details: (required)
+ The details to be updated for the AddLock.
+
+ :param str media_asset_id: (required)
+ Unique MediaAsset identifier
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaAsset.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_media_asset`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.add_media_asset_lock`
: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_media_asset(create_media_asset_details, **operation_kwargs)
+ operation_result = self.client.add_media_asset_lock(add_lock_details, media_asset_id, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
@@ -67,34 +70,37 @@ def create_media_asset_and_wait_for_state(self, create_media_asset_details, wait
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def create_media_workflow_and_wait_for_state(self, create_media_workflow_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def add_media_workflow_configuration_lock_and_wait_for_state(self, add_resource_lock_details, media_workflow_configuration_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow` and waits for the :py:class:`~oci.media_services.models.MediaWorkflow` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.add_media_workflow_configuration_lock` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowConfiguration` acted upon
to enter the given state(s).
- :param oci.media_services.models.CreateMediaWorkflowDetails create_media_workflow_details: (required)
- Details for the new MediaWorkflow.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
+
+ :param str media_workflow_configuration_id: (required)
+ Unique MediaWorkflowConfiguration identifier.
:param list[str] wait_for_states:
- An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflow.lifecycle_state`
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowConfiguration.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.add_media_workflow_configuration_lock`
: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_media_workflow(create_media_workflow_details, **operation_kwargs)
+ operation_result = self.client.add_media_workflow_configuration_lock(add_resource_lock_details, media_workflow_configuration_id, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
- media_workflow_id = operation_result.data.id
+ media_workflow_configuration_id = operation_result.data.id
try:
waiter_result = oci.wait_until(
self.client,
- self.client.get_media_workflow(media_workflow_id), # noqa: F821
+ self.client.get_media_workflow_configuration(media_workflow_configuration_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
)
@@ -109,34 +115,37 @@ def create_media_workflow_and_wait_for_state(self, create_media_workflow_details
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def create_media_workflow_configuration_and_wait_for_state(self, create_media_workflow_configuration_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def add_media_workflow_job_lock_and_wait_for_state(self, add_lock_details, media_workflow_job_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow_configuration` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowConfiguration` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.add_media_workflow_job_lock` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowJob` acted upon
to enter the given state(s).
- :param oci.media_services.models.CreateMediaWorkflowConfigurationDetails create_media_workflow_configuration_details: (required)
- Details for the new MediaWorkflowConfiguration.
+ :param oci.media_services.models.AddLockDetails add_lock_details: (required)
+ The details to be updated for the AddLock.
+
+ :param str media_workflow_job_id: (required)
+ Unique MediaWorkflowJob identifier.
:param list[str] wait_for_states:
- An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowConfiguration.lifecycle_state`
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowJob.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow_configuration`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.add_media_workflow_job_lock`
: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_media_workflow_configuration(create_media_workflow_configuration_details, **operation_kwargs)
+ operation_result = self.client.add_media_workflow_job_lock(add_lock_details, media_workflow_job_id, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
- media_workflow_configuration_id = operation_result.data.id
+ media_workflow_job_id = operation_result.data.id
try:
waiter_result = oci.wait_until(
self.client,
- self.client.get_media_workflow_configuration(media_workflow_configuration_id), # noqa: F821
+ self.client.get_media_workflow_job(media_workflow_job_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
)
@@ -151,34 +160,37 @@ def create_media_workflow_configuration_and_wait_for_state(self, create_media_wo
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def create_media_workflow_job_and_wait_for_state(self, create_media_workflow_job_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def add_media_workflow_lock_and_wait_for_state(self, add_resource_lock_details, media_workflow_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow_job` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowJob` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.add_media_workflow_lock` and waits for the :py:class:`~oci.media_services.models.MediaWorkflow` acted upon
to enter the given state(s).
- :param oci.media_services.models.CreateMediaWorkflowJobDetails create_media_workflow_job_details: (required)
- The information to run the mediaWorkflow.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
+
+ :param str media_workflow_id: (required)
+ Unique MediaWorkflow identifier.
:param list[str] wait_for_states:
- An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowJob.lifecycle_state`
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflow.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow_job`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.add_media_workflow_lock`
: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_media_workflow_job(create_media_workflow_job_details, **operation_kwargs)
+ operation_result = self.client.add_media_workflow_lock(add_resource_lock_details, media_workflow_id, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
- media_workflow_job_id = operation_result.data.id
+ media_workflow_id = operation_result.data.id
try:
waiter_result = oci.wait_until(
self.client,
- self.client.get_media_workflow_job(media_workflow_job_id), # noqa: F821
+ self.client.get_media_workflow(media_workflow_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
)
@@ -193,25 +205,28 @@ def create_media_workflow_job_and_wait_for_state(self, create_media_workflow_job
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def create_stream_cdn_config_and_wait_for_state(self, create_stream_cdn_config_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def add_stream_cdn_config_lock_and_wait_for_state(self, add_resource_lock_details, stream_cdn_config_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.create_stream_cdn_config` and waits for the :py:class:`~oci.media_services.models.StreamCdnConfig` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.add_stream_cdn_config_lock` and waits for the :py:class:`~oci.media_services.models.StreamCdnConfig` acted upon
to enter the given state(s).
- :param oci.media_services.models.CreateStreamCdnConfigDetails create_stream_cdn_config_details: (required)
- Details for the new StreamCdnConfig.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
+
+ :param str stream_cdn_config_id: (required)
+ Unique StreamCdnConfig identifier.
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamCdnConfig.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_stream_cdn_config`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.add_stream_cdn_config_lock`
: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_stream_cdn_config(create_stream_cdn_config_details, **operation_kwargs)
+ operation_result = self.client.add_stream_cdn_config_lock(add_resource_lock_details, stream_cdn_config_id, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
@@ -235,25 +250,28 @@ def create_stream_cdn_config_and_wait_for_state(self, create_stream_cdn_config_d
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def create_stream_distribution_channel_and_wait_for_state(self, create_stream_distribution_channel_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def add_stream_distribution_channel_lock_and_wait_for_state(self, add_resource_lock_details, stream_distribution_channel_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.create_stream_distribution_channel` and waits for the :py:class:`~oci.media_services.models.StreamDistributionChannel` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.add_stream_distribution_channel_lock` and waits for the :py:class:`~oci.media_services.models.StreamDistributionChannel` acted upon
to enter the given state(s).
- :param oci.media_services.models.CreateStreamDistributionChannelDetails create_stream_distribution_channel_details: (required)
- Details for the new Stream Distribution Channel.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
+
+ :param str stream_distribution_channel_id: (required)
+ Unique Stream Distribution Channel path identifier.
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamDistributionChannel.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_stream_distribution_channel`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.add_stream_distribution_channel_lock`
: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_stream_distribution_channel(create_stream_distribution_channel_details, **operation_kwargs)
+ operation_result = self.client.add_stream_distribution_channel_lock(add_resource_lock_details, stream_distribution_channel_id, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
@@ -277,25 +295,28 @@ def create_stream_distribution_channel_and_wait_for_state(self, create_stream_di
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def create_stream_packaging_config_and_wait_for_state(self, create_stream_packaging_config_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def add_stream_packaging_config_lock_and_wait_for_state(self, add_resource_lock_details, stream_packaging_config_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.create_stream_packaging_config` and waits for the :py:class:`~oci.media_services.models.StreamPackagingConfig` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.add_stream_packaging_config_lock` and waits for the :py:class:`~oci.media_services.models.StreamPackagingConfig` acted upon
to enter the given state(s).
- :param oci.media_services.models.CreateStreamPackagingConfigDetails create_stream_packaging_config_details: (required)
- Details for the new Stream Packaging Configuration.
+ :param oci.media_services.models.AddLockDetails add_resource_lock_details: (required)
+ AddResourceLockDetails body parameter
+
+ :param str stream_packaging_config_id: (required)
+ Unique Stream Packaging Configuration path identifier.
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamPackagingConfig.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_stream_packaging_config`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.add_stream_packaging_config_lock`
: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_stream_packaging_config(create_stream_packaging_config_details, **operation_kwargs)
+ operation_result = self.client.add_stream_packaging_config_lock(add_resource_lock_details, stream_packaging_config_id, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
@@ -319,51 +340,34 @@ def create_stream_packaging_config_and_wait_for_state(self, create_stream_packag
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def delete_media_asset_and_wait_for_state(self, media_asset_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def create_media_asset_and_wait_for_state(self, create_media_asset_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.delete_media_asset` and waits for the :py:class:`~oci.media_services.models.MediaAsset` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.create_media_asset` and waits for the :py:class:`~oci.media_services.models.MediaAsset` acted upon
to enter the given state(s).
- :param str media_asset_id: (required)
- Unique MediaAsset identifier
+ :param oci.media_services.models.CreateMediaAssetDetails create_media_asset_details: (required)
+ Details for the new MediaAsset.
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaAsset.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_media_asset`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_media_asset`
: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_media_asset(media_asset_id)
- operation_result = None
- try:
- operation_result = self.client.delete_media_asset(media_asset_id, **operation_kwargs)
- except oci.exceptions.ServiceError as e:
- if e.status == 404:
- return WAIT_RESOURCE_NOT_FOUND
- else:
- raise e
-
+ operation_result = self.client.create_media_asset(create_media_asset_details, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ media_asset_id = operation_result.data.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 delete_media_asset, 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
+ self.client.get_media_asset(media_asset_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
)
@@ -378,51 +382,34 @@ def delete_media_asset_and_wait_for_state(self, media_asset_id, wait_for_states=
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def delete_media_workflow_and_wait_for_state(self, media_workflow_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def create_media_workflow_and_wait_for_state(self, create_media_workflow_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow` and waits for the :py:class:`~oci.media_services.models.MediaWorkflow` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow` and waits for the :py:class:`~oci.media_services.models.MediaWorkflow` acted upon
to enter the given state(s).
- :param str media_workflow_id: (required)
- Unique MediaWorkflow identifier.
+ :param oci.media_services.models.CreateMediaWorkflowDetails create_media_workflow_details: (required)
+ Details for the new MediaWorkflow.
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflow.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow`
: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_media_workflow(media_workflow_id)
- operation_result = None
- try:
- operation_result = self.client.delete_media_workflow(media_workflow_id, **operation_kwargs)
- except oci.exceptions.ServiceError as e:
- if e.status == 404:
- return WAIT_RESOURCE_NOT_FOUND
- else:
- raise e
-
+ operation_result = self.client.create_media_workflow(create_media_workflow_details, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ media_workflow_id = operation_result.data.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 delete_media_workflow, 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
+ self.client.get_media_workflow(media_workflow_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
)
@@ -437,51 +424,34 @@ def delete_media_workflow_and_wait_for_state(self, media_workflow_id, wait_for_s
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def delete_media_workflow_configuration_and_wait_for_state(self, media_workflow_configuration_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def create_media_workflow_configuration_and_wait_for_state(self, create_media_workflow_configuration_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow_configuration` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowConfiguration` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow_configuration` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowConfiguration` acted upon
to enter the given state(s).
- :param str media_workflow_configuration_id: (required)
- Unique MediaWorkflowConfiguration identifier.
+ :param oci.media_services.models.CreateMediaWorkflowConfigurationDetails create_media_workflow_configuration_details: (required)
+ Details for the new MediaWorkflowConfiguration.
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowConfiguration.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow_configuration`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow_configuration`
: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_media_workflow_configuration(media_workflow_configuration_id)
- operation_result = None
- try:
- operation_result = self.client.delete_media_workflow_configuration(media_workflow_configuration_id, **operation_kwargs)
- except oci.exceptions.ServiceError as e:
- if e.status == 404:
- return WAIT_RESOURCE_NOT_FOUND
- else:
- raise e
-
+ operation_result = self.client.create_media_workflow_configuration(create_media_workflow_configuration_details, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ media_workflow_configuration_id = operation_result.data.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 delete_media_workflow_configuration, 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
+ self.client.get_media_workflow_configuration(media_workflow_configuration_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
)
@@ -496,51 +466,34 @@ def delete_media_workflow_configuration_and_wait_for_state(self, media_workflow_
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def delete_media_workflow_job_and_wait_for_state(self, media_workflow_job_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def create_media_workflow_job_and_wait_for_state(self, create_media_workflow_job_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow_job` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowJob` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow_job` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowJob` acted upon
to enter the given state(s).
- :param str media_workflow_job_id: (required)
- Unique MediaWorkflowJob identifier.
+ :param oci.media_services.models.CreateMediaWorkflowJobDetails create_media_workflow_job_details: (required)
+ The information to run the mediaWorkflow.
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowJob.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow_job`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_media_workflow_job`
: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_media_workflow_job(media_workflow_job_id)
- operation_result = None
- try:
- operation_result = self.client.delete_media_workflow_job(media_workflow_job_id, **operation_kwargs)
- except oci.exceptions.ServiceError as e:
- if e.status == 404:
- return WAIT_RESOURCE_NOT_FOUND
- else:
- raise e
-
+ operation_result = self.client.create_media_workflow_job(create_media_workflow_job_details, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ media_workflow_job_id = operation_result.data.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 delete_media_workflow_job, 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
+ self.client.get_media_workflow_job(media_workflow_job_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
)
@@ -555,51 +508,34 @@ def delete_media_workflow_job_and_wait_for_state(self, media_workflow_job_id, wa
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def delete_stream_cdn_config_and_wait_for_state(self, stream_cdn_config_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def create_stream_cdn_config_and_wait_for_state(self, create_stream_cdn_config_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.delete_stream_cdn_config` and waits for the :py:class:`~oci.media_services.models.StreamCdnConfig` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.create_stream_cdn_config` and waits for the :py:class:`~oci.media_services.models.StreamCdnConfig` acted upon
to enter the given state(s).
- :param str stream_cdn_config_id: (required)
- Unique StreamCdnConfig identifier.
+ :param oci.media_services.models.CreateStreamCdnConfigDetails create_stream_cdn_config_details: (required)
+ Details for the new StreamCdnConfig.
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamCdnConfig.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_stream_cdn_config`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_stream_cdn_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
"""
- initial_get_result = self.client.get_stream_cdn_config(stream_cdn_config_id)
- operation_result = None
- try:
- operation_result = self.client.delete_stream_cdn_config(stream_cdn_config_id, **operation_kwargs)
- except oci.exceptions.ServiceError as e:
- if e.status == 404:
- return WAIT_RESOURCE_NOT_FOUND
- else:
- raise e
-
+ operation_result = self.client.create_stream_cdn_config(create_stream_cdn_config_details, **operation_kwargs)
if not wait_for_states:
return operation_result
lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ stream_cdn_config_id = operation_result.data.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 delete_stream_cdn_config, 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
+ self.client.get_stream_cdn_config(stream_cdn_config_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
)
@@ -614,28 +550,112 @@ def delete_stream_cdn_config_and_wait_for_state(self, stream_cdn_config_id, wait
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def delete_stream_distribution_channel_and_wait_for_state(self, stream_distribution_channel_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def create_stream_distribution_channel_and_wait_for_state(self, create_stream_distribution_channel_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.delete_stream_distribution_channel` and waits for the :py:class:`~oci.media_services.models.StreamDistributionChannel` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.create_stream_distribution_channel` and waits for the :py:class:`~oci.media_services.models.StreamDistributionChannel` acted upon
to enter the given state(s).
- :param str stream_distribution_channel_id: (required)
- Unique Stream Distribution Channel path identifier.
+ :param oci.media_services.models.CreateStreamDistributionChannelDetails create_stream_distribution_channel_details: (required)
+ Details for the new Stream Distribution Channel.
:param list[str] wait_for_states:
An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamDistributionChannel.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_stream_distribution_channel`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_stream_distribution_channel`
: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_stream_distribution_channel(stream_distribution_channel_id)
+ operation_result = self.client.create_stream_distribution_channel(create_stream_distribution_channel_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ stream_distribution_channel_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_stream_distribution_channel(stream_distribution_channel_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_stream_packaging_config_and_wait_for_state(self, create_stream_packaging_config_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.create_stream_packaging_config` and waits for the :py:class:`~oci.media_services.models.StreamPackagingConfig` acted upon
+ to enter the given state(s).
+
+ :param oci.media_services.models.CreateStreamPackagingConfigDetails create_stream_packaging_config_details: (required)
+ Details for the new Stream Packaging Configuration.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamPackagingConfig.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.create_stream_packaging_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.create_stream_packaging_config(create_stream_packaging_config_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ stream_packaging_config_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_stream_packaging_config(stream_packaging_config_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_media_asset_and_wait_for_state(self, media_asset_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.delete_media_asset` and waits for the :py:class:`~oci.media_services.models.MediaAsset` acted upon
+ to enter the given state(s).
+
+ :param str media_asset_id: (required)
+ Unique MediaAsset identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaAsset.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_media_asset`
+
+ :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_media_asset(media_asset_id)
operation_result = None
try:
- operation_result = self.client.delete_stream_distribution_channel(stream_distribution_channel_id, **operation_kwargs)
+ operation_result = self.client.delete_media_asset(media_asset_id, **operation_kwargs)
except oci.exceptions.ServiceError as e:
if e.status == 404:
return WAIT_RESOURCE_NOT_FOUND
@@ -648,7 +668,7 @@ def delete_stream_distribution_channel_and_wait_for_state(self, stream_distribut
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_stream_distribution_channel, 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")
+ self.client.base_client.logger.warning("The waiter kwarg succeed_on_not_found was passed as False for the delete composite operation delete_media_asset, 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.
@@ -673,28 +693,28 @@ def delete_stream_distribution_channel_and_wait_for_state(self, stream_distribut
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
- def delete_stream_packaging_config_and_wait_for_state(self, stream_packaging_config_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ def delete_media_workflow_and_wait_for_state(self, media_workflow_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
- Calls :py:func:`~oci.media_services.MediaServicesClient.delete_stream_packaging_config` and waits for the :py:class:`~oci.media_services.models.StreamPackagingConfig` acted upon
+ Calls :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow` and waits for the :py:class:`~oci.media_services.models.MediaWorkflow` acted upon
to enter the given state(s).
- :param str stream_packaging_config_id: (required)
- Unique Stream Packaging Configuration path identifier.
+ :param str media_workflow_id: (required)
+ Unique MediaWorkflow identifier.
:param list[str] wait_for_states:
- An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamPackagingConfig.lifecycle_state`
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflow.lifecycle_state`
:param dict operation_kwargs:
- A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_stream_packaging_config`
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow`
: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_stream_packaging_config(stream_packaging_config_id)
+ initial_get_result = self.client.get_media_workflow(media_workflow_id)
operation_result = None
try:
- operation_result = self.client.delete_stream_packaging_config(stream_packaging_config_id, **operation_kwargs)
+ operation_result = self.client.delete_media_workflow(media_workflow_id, **operation_kwargs)
except oci.exceptions.ServiceError as e:
if e.status == 404:
return WAIT_RESOURCE_NOT_FOUND
@@ -707,7 +727,125 @@ def delete_stream_packaging_config_and_wait_for_state(self, stream_packaging_con
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_stream_packaging_config, 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")
+ self.client.base_client.logger.warning("The waiter kwarg succeed_on_not_found was passed as False for the delete composite operation delete_media_workflow, 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 delete_media_workflow_configuration_and_wait_for_state(self, media_workflow_configuration_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow_configuration` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowConfiguration` acted upon
+ to enter the given state(s).
+
+ :param str media_workflow_configuration_id: (required)
+ Unique MediaWorkflowConfiguration identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowConfiguration.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow_configuration`
+
+ :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_media_workflow_configuration(media_workflow_configuration_id)
+ operation_result = None
+ try:
+ operation_result = self.client.delete_media_workflow_configuration(media_workflow_configuration_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_media_workflow_configuration, 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 delete_media_workflow_job_and_wait_for_state(self, media_workflow_job_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow_job` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowJob` acted upon
+ to enter the given state(s).
+
+ :param str media_workflow_job_id: (required)
+ Unique MediaWorkflowJob identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowJob.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_media_workflow_job`
+
+ :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_media_workflow_job(media_workflow_job_id)
+ operation_result = None
+ try:
+ operation_result = self.client.delete_media_workflow_job(media_workflow_job_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_media_workflow_job, 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.
@@ -732,6 +870,498 @@ def delete_stream_packaging_config_and_wait_for_state(self, stream_packaging_con
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+ def delete_stream_cdn_config_and_wait_for_state(self, stream_cdn_config_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.delete_stream_cdn_config` and waits for the :py:class:`~oci.media_services.models.StreamCdnConfig` acted upon
+ to enter the given state(s).
+
+ :param str stream_cdn_config_id: (required)
+ Unique StreamCdnConfig identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamCdnConfig.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_stream_cdn_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
+ """
+ initial_get_result = self.client.get_stream_cdn_config(stream_cdn_config_id)
+ operation_result = None
+ try:
+ operation_result = self.client.delete_stream_cdn_config(stream_cdn_config_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_stream_cdn_config, 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 delete_stream_distribution_channel_and_wait_for_state(self, stream_distribution_channel_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.delete_stream_distribution_channel` and waits for the :py:class:`~oci.media_services.models.StreamDistributionChannel` acted upon
+ to enter the given state(s).
+
+ :param str stream_distribution_channel_id: (required)
+ Unique Stream Distribution Channel path identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamDistributionChannel.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_stream_distribution_channel`
+
+ :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_stream_distribution_channel(stream_distribution_channel_id)
+ operation_result = None
+ try:
+ operation_result = self.client.delete_stream_distribution_channel(stream_distribution_channel_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_stream_distribution_channel, 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 delete_stream_packaging_config_and_wait_for_state(self, stream_packaging_config_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.delete_stream_packaging_config` and waits for the :py:class:`~oci.media_services.models.StreamPackagingConfig` acted upon
+ to enter the given state(s).
+
+ :param str stream_packaging_config_id: (required)
+ Unique Stream Packaging Configuration path identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamPackagingConfig.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.delete_stream_packaging_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
+ """
+ initial_get_result = self.client.get_stream_packaging_config(stream_packaging_config_id)
+ operation_result = None
+ try:
+ operation_result = self.client.delete_stream_packaging_config(stream_packaging_config_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_stream_packaging_config, 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 remove_media_asset_lock_and_wait_for_state(self, remove_lock_details, media_asset_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.remove_media_asset_lock` and waits for the :py:class:`~oci.media_services.models.MediaAsset` acted upon
+ to enter the given state(s).
+
+ :param oci.media_services.models.RemoveLockDetails remove_lock_details: (required)
+ The details to be updated for the RemoveLock.
+
+ :param str media_asset_id: (required)
+ Unique MediaAsset identifier
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaAsset.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.remove_media_asset_lock`
+
+ :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.remove_media_asset_lock(remove_lock_details, media_asset_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ media_asset_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_media_asset(media_asset_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 remove_media_workflow_configuration_lock_and_wait_for_state(self, remove_resource_lock_details, media_workflow_configuration_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.remove_media_workflow_configuration_lock` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowConfiguration` acted upon
+ to enter the given state(s).
+
+ :param oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
+
+ :param str media_workflow_configuration_id: (required)
+ Unique MediaWorkflowConfiguration identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowConfiguration.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.remove_media_workflow_configuration_lock`
+
+ :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.remove_media_workflow_configuration_lock(remove_resource_lock_details, media_workflow_configuration_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ media_workflow_configuration_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_media_workflow_configuration(media_workflow_configuration_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 remove_media_workflow_job_lock_and_wait_for_state(self, remove_lock_details, media_workflow_job_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.remove_media_workflow_job_lock` and waits for the :py:class:`~oci.media_services.models.MediaWorkflowJob` acted upon
+ to enter the given state(s).
+
+ :param oci.media_services.models.RemoveLockDetails remove_lock_details: (required)
+ The details to be updated for the RemoveLock.
+
+ :param str media_workflow_job_id: (required)
+ Unique MediaWorkflowJob identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflowJob.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.remove_media_workflow_job_lock`
+
+ :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.remove_media_workflow_job_lock(remove_lock_details, media_workflow_job_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ media_workflow_job_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_media_workflow_job(media_workflow_job_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 remove_media_workflow_lock_and_wait_for_state(self, remove_resource_lock_details, media_workflow_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.remove_media_workflow_lock` and waits for the :py:class:`~oci.media_services.models.MediaWorkflow` acted upon
+ to enter the given state(s).
+
+ :param oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
+
+ :param str media_workflow_id: (required)
+ Unique MediaWorkflow identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.MediaWorkflow.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.remove_media_workflow_lock`
+
+ :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.remove_media_workflow_lock(remove_resource_lock_details, media_workflow_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ media_workflow_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_media_workflow(media_workflow_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 remove_stream_cdn_config_lock_and_wait_for_state(self, remove_resource_lock_details, stream_cdn_config_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.remove_stream_cdn_config_lock` and waits for the :py:class:`~oci.media_services.models.StreamCdnConfig` acted upon
+ to enter the given state(s).
+
+ :param oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
+
+ :param str stream_cdn_config_id: (required)
+ Unique StreamCdnConfig identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamCdnConfig.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.remove_stream_cdn_config_lock`
+
+ :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.remove_stream_cdn_config_lock(remove_resource_lock_details, stream_cdn_config_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ stream_cdn_config_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_stream_cdn_config(stream_cdn_config_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 remove_stream_distribution_channel_lock_and_wait_for_state(self, remove_resource_lock_details, stream_distribution_channel_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.remove_stream_distribution_channel_lock` and waits for the :py:class:`~oci.media_services.models.StreamDistributionChannel` acted upon
+ to enter the given state(s).
+
+ :param oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
+
+ :param str stream_distribution_channel_id: (required)
+ Unique Stream Distribution Channel path identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamDistributionChannel.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.remove_stream_distribution_channel_lock`
+
+ :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.remove_stream_distribution_channel_lock(remove_resource_lock_details, stream_distribution_channel_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ stream_distribution_channel_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_stream_distribution_channel(stream_distribution_channel_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 remove_stream_packaging_config_lock_and_wait_for_state(self, remove_resource_lock_details, stream_packaging_config_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.media_services.MediaServicesClient.remove_stream_packaging_config_lock` and waits for the :py:class:`~oci.media_services.models.StreamPackagingConfig` acted upon
+ to enter the given state(s).
+
+ :param oci.media_services.models.RemoveLockDetails remove_resource_lock_details: (required)
+ RemoveResourceLockDetails body parameter
+
+ :param str stream_packaging_config_id: (required)
+ Unique Stream Packaging Configuration path identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.media_services.models.StreamPackagingConfig.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.media_services.MediaServicesClient.remove_stream_packaging_config_lock`
+
+ :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.remove_stream_packaging_config_lock(remove_resource_lock_details, stream_packaging_config_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ stream_packaging_config_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_stream_packaging_config(stream_packaging_config_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_media_asset_and_wait_for_state(self, media_asset_id, update_media_asset_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
Calls :py:func:`~oci.media_services.MediaServicesClient.update_media_asset` and waits for the :py:class:`~oci.media_services.models.MediaAsset` acted upon
diff --git a/src/oci/media_services/media_stream_client.py b/src/oci/media_services/media_stream_client.py
index 9db270b5a3..75fc4f6b7f 100644
--- a/src/oci/media_services/media_stream_client.py
+++ b/src/oci/media_services/media_stream_client.py
@@ -120,7 +120,7 @@ def __init__(self, config, **kwargs):
def generate_playlist(self, stream_packaging_config_id, media_asset_id, **kwargs):
"""
- Gets the playlist content for the specified Packaging Configuration and Media Asset combination.
+ Gets the playlist content for the specified Packaging Configuration and Media Asset combination. This API call is made using the MediaStreamsClient, which requires the endpoint to be set with the value of the distribution channel domain name (for example, https://example_channel.dc.mediaservices.example_region.oci.oraclecloud.com) to generate a session token or playlist for a media asset registered in this distribution channel.
:param str stream_packaging_config_id: (required)
@@ -222,7 +222,7 @@ def generate_playlist(self, stream_packaging_config_id, media_asset_id, **kwargs
def generate_session_token(self, generate_session_token_details, **kwargs):
"""
- Generate a new streaming session token.
+ Generate a new streaming session token. This API call is made using the MediaStreamsClient, which requires the endpoint to be set with the value of the distribution channel domain name (for example, https://example_channel.dc.mediaservices.example_region.oci.oraclecloud.com) to generate a session token or playlist for a media asset registered in this distribution channel.
:param oci.media_services.models.GenerateSessionTokenDetails generate_session_token_details: (required)
diff --git a/src/oci/media_services/models/__init__.py b/src/oci/media_services/models/__init__.py
index 652ff97178..133ad0a3ae 100644
--- a/src/oci/media_services/models/__init__.py
+++ b/src/oci/media_services/models/__init__.py
@@ -6,6 +6,7 @@
from __future__ import absolute_import
+from .add_lock_details import AddLockDetails
from .akamai_manual_stream_cdn_config import AkamaiManualStreamCdnConfig
from .asset_metadata_entry_details import AssetMetadataEntryDetails
from .change_media_asset_compartment_details import ChangeMediaAssetCompartmentDetails
@@ -43,9 +44,6 @@
from .media_workflow_configuration_summary import MediaWorkflowConfigurationSummary
from .media_workflow_job import MediaWorkflowJob
from .media_workflow_job_collection import MediaWorkflowJobCollection
-from .media_workflow_job_fact import MediaWorkflowJobFact
-from .media_workflow_job_fact_collection import MediaWorkflowJobFactCollection
-from .media_workflow_job_fact_summary import MediaWorkflowJobFactSummary
from .media_workflow_job_summary import MediaWorkflowJobSummary
from .media_workflow_summary import MediaWorkflowSummary
from .media_workflow_task import MediaWorkflowTask
@@ -53,6 +51,8 @@
from .media_workflow_task_declaration_collection import MediaWorkflowTaskDeclarationCollection
from .media_workflow_task_state import MediaWorkflowTaskState
from .metadata import Metadata
+from .remove_lock_details import RemoveLockDetails
+from .resource_lock import ResourceLock
from .session_token import SessionToken
from .stream_cdn_config import StreamCdnConfig
from .stream_cdn_config_collection import StreamCdnConfigCollection
@@ -79,6 +79,7 @@
# Maps type names to classes for media_services services.
media_services_type_mapping = {
+ "AddLockDetails": AddLockDetails,
"AkamaiManualStreamCdnConfig": AkamaiManualStreamCdnConfig,
"AssetMetadataEntryDetails": AssetMetadataEntryDetails,
"ChangeMediaAssetCompartmentDetails": ChangeMediaAssetCompartmentDetails,
@@ -116,9 +117,6 @@
"MediaWorkflowConfigurationSummary": MediaWorkflowConfigurationSummary,
"MediaWorkflowJob": MediaWorkflowJob,
"MediaWorkflowJobCollection": MediaWorkflowJobCollection,
- "MediaWorkflowJobFact": MediaWorkflowJobFact,
- "MediaWorkflowJobFactCollection": MediaWorkflowJobFactCollection,
- "MediaWorkflowJobFactSummary": MediaWorkflowJobFactSummary,
"MediaWorkflowJobSummary": MediaWorkflowJobSummary,
"MediaWorkflowSummary": MediaWorkflowSummary,
"MediaWorkflowTask": MediaWorkflowTask,
@@ -126,6 +124,8 @@
"MediaWorkflowTaskDeclarationCollection": MediaWorkflowTaskDeclarationCollection,
"MediaWorkflowTaskState": MediaWorkflowTaskState,
"Metadata": Metadata,
+ "RemoveLockDetails": RemoveLockDetails,
+ "ResourceLock": ResourceLock,
"SessionToken": SessionToken,
"StreamCdnConfig": StreamCdnConfig,
"StreamCdnConfigCollection": StreamCdnConfigCollection,
diff --git a/src/oci/media_services/models/add_lock_details.py b/src/oci/media_services/models/add_lock_details.py
new file mode 100644
index 0000000000..8512418f9f
--- /dev/null
+++ b/src/oci/media_services/models/add_lock_details.py
@@ -0,0 +1,216 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20211101
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class AddLockDetails(object):
+ """
+ Request payload to add lock to the resource. The FULL lock type allows no modifications (delete, create, update).
+ The DELETE lock type allows all modifications, but delete is not allowed.
+ type: object
+ """
+
+ #: A constant which can be used with the type property of a AddLockDetails.
+ #: This constant has a value of "FULL"
+ TYPE_FULL = "FULL"
+
+ #: A constant which can be used with the type property of a AddLockDetails.
+ #: This constant has a value of "DELETE"
+ TYPE_DELETE = "DELETE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new AddLockDetails 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 AddLockDetails.
+ Allowed values for this property are: "FULL", "DELETE"
+ :type type: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this AddLockDetails.
+ :type compartment_id: str
+
+ :param related_resource_id:
+ The value to assign to the related_resource_id property of this AddLockDetails.
+ :type related_resource_id: str
+
+ :param message:
+ The value to assign to the message property of this AddLockDetails.
+ :type message: str
+
+ :param time_created:
+ The value to assign to the time_created property of this AddLockDetails.
+ :type time_created: datetime
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'compartment_id': 'str',
+ 'related_resource_id': 'str',
+ 'message': 'str',
+ 'time_created': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'compartment_id': 'compartmentId',
+ 'related_resource_id': 'relatedResourceId',
+ 'message': 'message',
+ 'time_created': 'timeCreated'
+ }
+
+ self._type = None
+ self._compartment_id = None
+ self._related_resource_id = None
+ self._message = None
+ self._time_created = None
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this AddLockDetails.
+ Type of the lock.
+
+ Allowed values for this property are: "FULL", "DELETE"
+
+
+ :return: The type of this AddLockDetails.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this AddLockDetails.
+ Type of the lock.
+
+
+ :param type: The type of this AddLockDetails.
+ :type: str
+ """
+ allowed_values = ["FULL", "DELETE"]
+ 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}"
+ )
+ self._type = type
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this AddLockDetails.
+ The compartment ID of the lock.
+
+
+ :return: The compartment_id of this AddLockDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this AddLockDetails.
+ The compartment ID of the lock.
+
+
+ :param compartment_id: The compartment_id of this AddLockDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def related_resource_id(self):
+ """
+ Gets the related_resource_id of this AddLockDetails.
+ The ID of the Target that is locking this Target. Indicates that deleting this Target will remove the lock.
+
+
+ :return: The related_resource_id of this AddLockDetails.
+ :rtype: str
+ """
+ return self._related_resource_id
+
+ @related_resource_id.setter
+ def related_resource_id(self, related_resource_id):
+ """
+ Sets the related_resource_id of this AddLockDetails.
+ The ID of the Target that is locking this Target. Indicates that deleting this Target will remove the lock.
+
+
+ :param related_resource_id: The related_resource_id of this AddLockDetails.
+ :type: str
+ """
+ self._related_resource_id = related_resource_id
+
+ @property
+ def message(self):
+ """
+ Gets the message of this AddLockDetails.
+ A message added by the creator of the lock. This is typically used to give an
+ indication of why the resource is locked.
+
+
+ :return: The message of this AddLockDetails.
+ :rtype: str
+ """
+ return self._message
+
+ @message.setter
+ def message(self, message):
+ """
+ Sets the message of this AddLockDetails.
+ A message added by the creator of the lock. This is typically used to give an
+ indication of why the resource is locked.
+
+
+ :param message: The message of this AddLockDetails.
+ :type: str
+ """
+ self._message = message
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this AddLockDetails.
+ When the lock was created.
+
+
+ :return: The time_created of this AddLockDetails.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this AddLockDetails.
+ When the lock was created.
+
+
+ :param time_created: The time_created of this AddLockDetails.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/media_services/models/create_media_asset_details.py b/src/oci/media_services/models/create_media_asset_details.py
index fe8fe19d1f..1b0ade9606 100644
--- a/src/oci/media_services/models/create_media_asset_details.py
+++ b/src/oci/media_services/models/create_media_asset_details.py
@@ -117,6 +117,10 @@ def __init__(self, **kwargs):
The value to assign to the defined_tags property of this CreateMediaAssetDetails.
:type defined_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this CreateMediaAssetDetails.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'source_media_workflow_id': 'str',
@@ -136,7 +140,8 @@ def __init__(self, **kwargs):
'segment_range_end_index': 'int',
'media_asset_tags': 'list[MediaAssetTag]',
'freeform_tags': 'dict(str, str)',
- 'defined_tags': 'dict(str, dict(str, object))'
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -157,7 +162,8 @@ def __init__(self, **kwargs):
'segment_range_end_index': 'segmentRangeEndIndex',
'media_asset_tags': 'mediaAssetTags',
'freeform_tags': 'freeformTags',
- 'defined_tags': 'definedTags'
+ 'defined_tags': 'definedTags',
+ 'locks': 'locks'
}
self._source_media_workflow_id = None
@@ -178,6 +184,7 @@ def __init__(self, **kwargs):
self._media_asset_tags = None
self._freeform_tags = None
self._defined_tags = None
+ self._locks = None
@property
def source_media_workflow_id(self):
@@ -622,6 +629,30 @@ def defined_tags(self, defined_tags):
"""
self._defined_tags = defined_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this CreateMediaAssetDetails.
+ Locks associated with this resource.
+
+
+ :return: The locks of this CreateMediaAssetDetails.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this CreateMediaAssetDetails.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this CreateMediaAssetDetails.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/create_media_workflow_configuration_details.py b/src/oci/media_services/models/create_media_workflow_configuration_details.py
index c6937d9ae5..c295568b14 100644
--- a/src/oci/media_services/models/create_media_workflow_configuration_details.py
+++ b/src/oci/media_services/models/create_media_workflow_configuration_details.py
@@ -40,13 +40,18 @@ def __init__(self, **kwargs):
The value to assign to the defined_tags property of this CreateMediaWorkflowConfigurationDetails.
:type defined_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this CreateMediaWorkflowConfigurationDetails.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'display_name': 'str',
'parameters': 'dict(str, object)',
'compartment_id': 'str',
'freeform_tags': 'dict(str, str)',
- 'defined_tags': 'dict(str, dict(str, object))'
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -54,7 +59,8 @@ def __init__(self, **kwargs):
'parameters': 'parameters',
'compartment_id': 'compartmentId',
'freeform_tags': 'freeformTags',
- 'defined_tags': 'definedTags'
+ 'defined_tags': 'definedTags',
+ 'locks': 'locks'
}
self._display_name = None
@@ -62,6 +68,7 @@ def __init__(self, **kwargs):
self._compartment_id = None
self._freeform_tags = None
self._defined_tags = None
+ self._locks = None
@property
def display_name(self):
@@ -193,6 +200,30 @@ def defined_tags(self, defined_tags):
"""
self._defined_tags = defined_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this CreateMediaWorkflowConfigurationDetails.
+ Locks associated with this resource.
+
+
+ :return: The locks of this CreateMediaWorkflowConfigurationDetails.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this CreateMediaWorkflowConfigurationDetails.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this CreateMediaWorkflowConfigurationDetails.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/create_media_workflow_details.py b/src/oci/media_services/models/create_media_workflow_details.py
index 8e10eb5bf0..a2c5224968 100644
--- a/src/oci/media_services/models/create_media_workflow_details.py
+++ b/src/oci/media_services/models/create_media_workflow_details.py
@@ -48,6 +48,10 @@ def __init__(self, **kwargs):
The value to assign to the defined_tags property of this CreateMediaWorkflowDetails.
:type defined_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this CreateMediaWorkflowDetails.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'display_name': 'str',
@@ -56,7 +60,8 @@ def __init__(self, **kwargs):
'media_workflow_configuration_ids': 'list[str]',
'parameters': 'dict(str, object)',
'freeform_tags': 'dict(str, str)',
- 'defined_tags': 'dict(str, dict(str, object))'
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -66,7 +71,8 @@ def __init__(self, **kwargs):
'media_workflow_configuration_ids': 'mediaWorkflowConfigurationIds',
'parameters': 'parameters',
'freeform_tags': 'freeformTags',
- 'defined_tags': 'definedTags'
+ 'defined_tags': 'definedTags',
+ 'locks': 'locks'
}
self._display_name = None
@@ -76,6 +82,7 @@ def __init__(self, **kwargs):
self._parameters = None
self._freeform_tags = None
self._defined_tags = None
+ self._locks = None
@property
def display_name(self):
@@ -259,6 +266,30 @@ def defined_tags(self, defined_tags):
"""
self._defined_tags = defined_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this CreateMediaWorkflowDetails.
+ Locks associated with this resource.
+
+
+ :return: The locks of this CreateMediaWorkflowDetails.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this CreateMediaWorkflowDetails.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this CreateMediaWorkflowDetails.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/create_media_workflow_job_by_id_details.py b/src/oci/media_services/models/create_media_workflow_job_by_id_details.py
index d73591ebae..2596d1458f 100644
--- a/src/oci/media_services/models/create_media_workflow_job_by_id_details.py
+++ b/src/oci/media_services/models/create_media_workflow_job_by_id_details.py
@@ -50,6 +50,10 @@ def __init__(self, **kwargs):
The value to assign to the defined_tags property of this CreateMediaWorkflowJobByIdDetails.
:type defined_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this CreateMediaWorkflowJobByIdDetails.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
:param media_workflow_id:
The value to assign to the media_workflow_id property of this CreateMediaWorkflowJobByIdDetails.
:type media_workflow_id: str
@@ -63,6 +67,7 @@ def __init__(self, **kwargs):
'parameters': 'dict(str, object)',
'freeform_tags': 'dict(str, str)',
'defined_tags': 'dict(str, dict(str, object))',
+ 'locks': 'list[ResourceLock]',
'media_workflow_id': 'str'
}
@@ -74,6 +79,7 @@ def __init__(self, **kwargs):
'parameters': 'parameters',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
+ 'locks': 'locks',
'media_workflow_id': 'mediaWorkflowId'
}
@@ -84,6 +90,7 @@ def __init__(self, **kwargs):
self._parameters = None
self._freeform_tags = None
self._defined_tags = None
+ self._locks = None
self._media_workflow_id = None
self._workflow_identifier_type = 'ID'
diff --git a/src/oci/media_services/models/create_media_workflow_job_by_name_details.py b/src/oci/media_services/models/create_media_workflow_job_by_name_details.py
index 7d6b277c41..0f1d225dc2 100644
--- a/src/oci/media_services/models/create_media_workflow_job_by_name_details.py
+++ b/src/oci/media_services/models/create_media_workflow_job_by_name_details.py
@@ -50,6 +50,10 @@ def __init__(self, **kwargs):
The value to assign to the defined_tags property of this CreateMediaWorkflowJobByNameDetails.
:type defined_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this CreateMediaWorkflowJobByNameDetails.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
:param media_workflow_name:
The value to assign to the media_workflow_name property of this CreateMediaWorkflowJobByNameDetails.
:type media_workflow_name: str
@@ -63,6 +67,7 @@ def __init__(self, **kwargs):
'parameters': 'dict(str, object)',
'freeform_tags': 'dict(str, str)',
'defined_tags': 'dict(str, dict(str, object))',
+ 'locks': 'list[ResourceLock]',
'media_workflow_name': 'str'
}
@@ -74,6 +79,7 @@ def __init__(self, **kwargs):
'parameters': 'parameters',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
+ 'locks': 'locks',
'media_workflow_name': 'mediaWorkflowName'
}
@@ -84,6 +90,7 @@ def __init__(self, **kwargs):
self._parameters = None
self._freeform_tags = None
self._defined_tags = None
+ self._locks = None
self._media_workflow_name = None
self._workflow_identifier_type = 'NAME'
diff --git a/src/oci/media_services/models/create_media_workflow_job_details.py b/src/oci/media_services/models/create_media_workflow_job_details.py
index d0568928c5..3e30db14d8 100644
--- a/src/oci/media_services/models/create_media_workflow_job_details.py
+++ b/src/oci/media_services/models/create_media_workflow_job_details.py
@@ -62,6 +62,10 @@ def __init__(self, **kwargs):
The value to assign to the defined_tags property of this CreateMediaWorkflowJobDetails.
:type defined_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this CreateMediaWorkflowJobDetails.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'workflow_identifier_type': 'str',
@@ -70,7 +74,8 @@ def __init__(self, **kwargs):
'display_name': 'str',
'parameters': 'dict(str, object)',
'freeform_tags': 'dict(str, str)',
- 'defined_tags': 'dict(str, dict(str, object))'
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -80,7 +85,8 @@ def __init__(self, **kwargs):
'display_name': 'displayName',
'parameters': 'parameters',
'freeform_tags': 'freeformTags',
- 'defined_tags': 'definedTags'
+ 'defined_tags': 'definedTags',
+ 'locks': 'locks'
}
self._workflow_identifier_type = None
@@ -90,6 +96,7 @@ def __init__(self, **kwargs):
self._parameters = None
self._freeform_tags = None
self._defined_tags = None
+ self._locks = None
@staticmethod
def get_subtype(object_dictionary):
@@ -294,6 +301,30 @@ def defined_tags(self, defined_tags):
"""
self._defined_tags = defined_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this CreateMediaWorkflowJobDetails.
+ Locks associated with this resource.
+
+
+ :return: The locks of this CreateMediaWorkflowJobDetails.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this CreateMediaWorkflowJobDetails.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this CreateMediaWorkflowJobDetails.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/create_stream_cdn_config_details.py b/src/oci/media_services/models/create_stream_cdn_config_details.py
index 212d0dc9bb..3268a81419 100644
--- a/src/oci/media_services/models/create_stream_cdn_config_details.py
+++ b/src/oci/media_services/models/create_stream_cdn_config_details.py
@@ -44,6 +44,10 @@ def __init__(self, **kwargs):
The value to assign to the defined_tags property of this CreateStreamCdnConfigDetails.
:type defined_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this CreateStreamCdnConfigDetails.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'display_name': 'str',
@@ -51,7 +55,8 @@ def __init__(self, **kwargs):
'is_enabled': 'bool',
'config': 'StreamCdnConfigSection',
'freeform_tags': 'dict(str, str)',
- 'defined_tags': 'dict(str, dict(str, object))'
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -60,7 +65,8 @@ def __init__(self, **kwargs):
'is_enabled': 'isEnabled',
'config': 'config',
'freeform_tags': 'freeformTags',
- 'defined_tags': 'definedTags'
+ 'defined_tags': 'definedTags',
+ 'locks': 'locks'
}
self._display_name = None
@@ -69,6 +75,7 @@ def __init__(self, **kwargs):
self._config = None
self._freeform_tags = None
self._defined_tags = None
+ self._locks = None
@property
def display_name(self):
@@ -214,6 +221,30 @@ def defined_tags(self, defined_tags):
"""
self._defined_tags = defined_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this CreateStreamCdnConfigDetails.
+ Locks associated with this resource.
+
+
+ :return: The locks of this CreateStreamCdnConfigDetails.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this CreateStreamCdnConfigDetails.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this CreateStreamCdnConfigDetails.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/create_stream_distribution_channel_details.py b/src/oci/media_services/models/create_stream_distribution_channel_details.py
index 4892fba10c..225c6b5875 100644
--- a/src/oci/media_services/models/create_stream_distribution_channel_details.py
+++ b/src/oci/media_services/models/create_stream_distribution_channel_details.py
@@ -36,25 +36,32 @@ def __init__(self, **kwargs):
The value to assign to the defined_tags property of this CreateStreamDistributionChannelDetails.
:type defined_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this CreateStreamDistributionChannelDetails.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'display_name': 'str',
'compartment_id': 'str',
'freeform_tags': 'dict(str, str)',
- 'defined_tags': 'dict(str, dict(str, object))'
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
'display_name': 'displayName',
'compartment_id': 'compartmentId',
'freeform_tags': 'freeformTags',
- 'defined_tags': 'definedTags'
+ 'defined_tags': 'definedTags',
+ 'locks': 'locks'
}
self._display_name = None
self._compartment_id = None
self._freeform_tags = None
self._defined_tags = None
+ self._locks = None
@property
def display_name(self):
@@ -156,6 +163,30 @@ def defined_tags(self, defined_tags):
"""
self._defined_tags = defined_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this CreateStreamDistributionChannelDetails.
+ Locks associated with this resource.
+
+
+ :return: The locks of this CreateStreamDistributionChannelDetails.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this CreateStreamDistributionChannelDetails.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this CreateStreamDistributionChannelDetails.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/create_stream_packaging_config_details.py b/src/oci/media_services/models/create_stream_packaging_config_details.py
index 80f40fb8bb..29abf0bcc9 100644
--- a/src/oci/media_services/models/create_stream_packaging_config_details.py
+++ b/src/oci/media_services/models/create_stream_packaging_config_details.py
@@ -57,6 +57,10 @@ def __init__(self, **kwargs):
The value to assign to the defined_tags property of this CreateStreamPackagingConfigDetails.
:type defined_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this CreateStreamPackagingConfigDetails.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'distribution_channel_id': 'str',
@@ -65,7 +69,8 @@ def __init__(self, **kwargs):
'segment_time_in_seconds': 'int',
'encryption': 'StreamPackagingConfigEncryption',
'freeform_tags': 'dict(str, str)',
- 'defined_tags': 'dict(str, dict(str, object))'
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -75,7 +80,8 @@ def __init__(self, **kwargs):
'segment_time_in_seconds': 'segmentTimeInSeconds',
'encryption': 'encryption',
'freeform_tags': 'freeformTags',
- 'defined_tags': 'definedTags'
+ 'defined_tags': 'definedTags',
+ 'locks': 'locks'
}
self._distribution_channel_id = None
@@ -85,6 +91,7 @@ def __init__(self, **kwargs):
self._encryption = None
self._freeform_tags = None
self._defined_tags = None
+ self._locks = None
@property
def distribution_channel_id(self):
@@ -261,6 +268,30 @@ def defined_tags(self, defined_tags):
"""
self._defined_tags = defined_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this CreateStreamPackagingConfigDetails.
+ Locks associated with this resource.
+
+
+ :return: The locks of this CreateStreamPackagingConfigDetails.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this CreateStreamPackagingConfigDetails.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this CreateStreamPackagingConfigDetails.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/dash_stream_packaging_config.py b/src/oci/media_services/models/dash_stream_packaging_config.py
index b0a4432d8c..85a3c92f5a 100644
--- a/src/oci/media_services/models/dash_stream_packaging_config.py
+++ b/src/oci/media_services/models/dash_stream_packaging_config.py
@@ -75,6 +75,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this DashStreamPackagingConfig.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this DashStreamPackagingConfig.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -89,7 +93,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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -105,7 +110,8 @@ def __init__(self, **kwargs):
'lifecycle_state': 'lifecycleState',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -121,6 +127,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
self._stream_packaging_format = 'DASH'
def __repr__(self):
diff --git a/src/oci/media_services/models/hls_stream_packaging_config.py b/src/oci/media_services/models/hls_stream_packaging_config.py
index 1eb3f71f8a..6fe56fdd77 100644
--- a/src/oci/media_services/models/hls_stream_packaging_config.py
+++ b/src/oci/media_services/models/hls_stream_packaging_config.py
@@ -75,6 +75,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this HlsStreamPackagingConfig.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this HlsStreamPackagingConfig.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -89,7 +93,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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -105,7 +110,8 @@ def __init__(self, **kwargs):
'lifecycle_state': 'lifecycleState',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -121,6 +127,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
self._stream_packaging_format = 'HLS'
def __repr__(self):
diff --git a/src/oci/media_services/models/job_output.py b/src/oci/media_services/models/job_output.py
index 35891cac17..e0d7db18cd 100644
--- a/src/oci/media_services/models/job_output.py
+++ b/src/oci/media_services/models/job_output.py
@@ -47,6 +47,10 @@ class JobOutput(object):
#: This constant has a value of "TEXT_ANALYSIS"
ASSET_TYPE_TEXT_ANALYSIS = "TEXT_ANALYSIS"
+ #: A constant which can be used with the asset_type property of a JobOutput.
+ #: This constant has a value of "INPUT_FILE"
+ ASSET_TYPE_INPUT_FILE = "INPUT_FILE"
+
#: A constant which can be used with the asset_type property of a JobOutput.
#: This constant has a value of "OTHER"
ASSET_TYPE_OTHER = "OTHER"
@@ -58,7 +62,7 @@ def __init__(self, **kwargs):
:param asset_type:
The value to assign to the asset_type property of this JobOutput.
- Allowed values for this property are: "AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "TRANSCRIPTION_JOB", "VISION_JOB", "TEXT_ANALYSIS", "OTHER", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "TRANSCRIPTION_JOB", "VISION_JOB", "TEXT_ANALYSIS", "INPUT_FILE", "OTHER", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
:type asset_type: str
@@ -107,7 +111,7 @@ def asset_type(self):
Gets the asset_type of this JobOutput.
Type of job output.
- Allowed values for this property are: "AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "TRANSCRIPTION_JOB", "VISION_JOB", "TEXT_ANALYSIS", "OTHER", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "TRANSCRIPTION_JOB", "VISION_JOB", "TEXT_ANALYSIS", "INPUT_FILE", "OTHER", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
@@ -126,7 +130,7 @@ def asset_type(self, asset_type):
:param asset_type: The asset_type of this JobOutput.
:type: str
"""
- allowed_values = ["AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "TRANSCRIPTION_JOB", "VISION_JOB", "TEXT_ANALYSIS", "OTHER"]
+ allowed_values = ["AUDIO", "VIDEO", "PLAYLIST", "IMAGE", "CAPTION_FILE", "TRANSCRIPTION_JOB", "VISION_JOB", "TEXT_ANALYSIS", "INPUT_FILE", "OTHER"]
if not value_allowed_none_or_none_sentinel(asset_type, allowed_values):
asset_type = 'UNKNOWN_ENUM_VALUE'
self._asset_type = asset_type
diff --git a/src/oci/media_services/models/media_asset.py b/src/oci/media_services/models/media_asset.py
index 02013822a5..f54e830c4e 100644
--- a/src/oci/media_services/models/media_asset.py
+++ b/src/oci/media_services/models/media_asset.py
@@ -164,6 +164,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this MediaAsset.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this MediaAsset.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -188,7 +192,8 @@ def __init__(self, **kwargs):
'media_asset_tags': 'list[MediaAssetTag]',
'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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -214,7 +219,8 @@ def __init__(self, **kwargs):
'media_asset_tags': 'mediaAssetTags',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -240,6 +246,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -811,6 +818,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaAsset.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaAsset.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaAsset.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaAsset.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/media_asset_distribution_channel_attachment.py b/src/oci/media_services/models/media_asset_distribution_channel_attachment.py
index ea32cb8c5f..198688ff92 100644
--- a/src/oci/media_services/models/media_asset_distribution_channel_attachment.py
+++ b/src/oci/media_services/models/media_asset_distribution_channel_attachment.py
@@ -62,6 +62,10 @@ def __init__(self, **kwargs):
The value to assign to the media_workflow_job_id property of this MediaAssetDistributionChannelAttachment.
:type media_workflow_job_id: str
+ :param locks:
+ The value to assign to the locks property of this MediaAssetDistributionChannelAttachment.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'distribution_channel_id': 'str',
@@ -69,7 +73,8 @@ def __init__(self, **kwargs):
'version': 'int',
'lifecycle_state': 'str',
'metadata_ref': 'str',
- 'media_workflow_job_id': 'str'
+ 'media_workflow_job_id': 'str',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -78,7 +83,8 @@ def __init__(self, **kwargs):
'version': 'version',
'lifecycle_state': 'lifecycleState',
'metadata_ref': 'metadataRef',
- 'media_workflow_job_id': 'mediaWorkflowJobId'
+ 'media_workflow_job_id': 'mediaWorkflowJobId',
+ 'locks': 'locks'
}
self._distribution_channel_id = None
@@ -87,6 +93,7 @@ def __init__(self, **kwargs):
self._lifecycle_state = None
self._metadata_ref = None
self._media_workflow_job_id = None
+ self._locks = None
@property
def distribution_channel_id(self):
@@ -238,6 +245,30 @@ def media_workflow_job_id(self, media_workflow_job_id):
"""
self._media_workflow_job_id = media_workflow_job_id
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaAssetDistributionChannelAttachment.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaAssetDistributionChannelAttachment.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaAssetDistributionChannelAttachment.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaAssetDistributionChannelAttachment.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/media_asset_distribution_channel_attachment_summary.py b/src/oci/media_services/models/media_asset_distribution_channel_attachment_summary.py
index fb63e66e3e..0f680a56a4 100644
--- a/src/oci/media_services/models/media_asset_distribution_channel_attachment_summary.py
+++ b/src/oci/media_services/models/media_asset_distribution_channel_attachment_summary.py
@@ -66,6 +66,10 @@ def __init__(self, **kwargs):
The value to assign to the media_workflow_job_id property of this MediaAssetDistributionChannelAttachmentSummary.
:type media_workflow_job_id: str
+ :param locks:
+ The value to assign to the locks property of this MediaAssetDistributionChannelAttachmentSummary.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'media_asset_id': 'str',
@@ -74,7 +78,8 @@ def __init__(self, **kwargs):
'version': 'int',
'lifecycle_state': 'str',
'metadata_ref': 'str',
- 'media_workflow_job_id': 'str'
+ 'media_workflow_job_id': 'str',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -84,7 +89,8 @@ def __init__(self, **kwargs):
'version': 'version',
'lifecycle_state': 'lifecycleState',
'metadata_ref': 'metadataRef',
- 'media_workflow_job_id': 'mediaWorkflowJobId'
+ 'media_workflow_job_id': 'mediaWorkflowJobId',
+ 'locks': 'locks'
}
self._media_asset_id = None
@@ -94,6 +100,7 @@ def __init__(self, **kwargs):
self._lifecycle_state = None
self._metadata_ref = None
self._media_workflow_job_id = None
+ self._locks = None
@property
def media_asset_id(self):
@@ -269,6 +276,30 @@ def media_workflow_job_id(self, media_workflow_job_id):
"""
self._media_workflow_job_id = media_workflow_job_id
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaAssetDistributionChannelAttachmentSummary.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaAssetDistributionChannelAttachmentSummary.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaAssetDistributionChannelAttachmentSummary.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaAssetDistributionChannelAttachmentSummary.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/media_asset_summary.py b/src/oci/media_services/models/media_asset_summary.py
index 50e6f1bcd2..ac5e642e3a 100644
--- a/src/oci/media_services/models/media_asset_summary.py
+++ b/src/oci/media_services/models/media_asset_summary.py
@@ -120,6 +120,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this MediaAssetSummary.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this MediaAssetSummary.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -133,7 +137,8 @@ def __init__(self, **kwargs):
'parent_media_asset_id': '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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -148,7 +153,8 @@ def __init__(self, **kwargs):
'parent_media_asset_id': 'parentMediaAssetId',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -163,6 +169,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -470,6 +477,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaAssetSummary.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaAssetSummary.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaAssetSummary.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaAssetSummary.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/media_workflow.py b/src/oci/media_services/models/media_workflow.py
index 8295b33025..820af6e738 100644
--- a/src/oci/media_services/models/media_workflow.py
+++ b/src/oci/media_services/models/media_workflow.py
@@ -78,6 +78,10 @@ def __init__(self, **kwargs):
The value to assign to the version property of this MediaWorkflow.
:type version: int
+ :param locks:
+ The value to assign to the locks property of this MediaWorkflow.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
:param freeform_tags:
The value to assign to the freeform_tags property of this MediaWorkflow.
:type freeform_tags: dict(str, str)
@@ -103,6 +107,7 @@ def __init__(self, **kwargs):
'lifecycle_state': 'str',
'lifecyle_details': 'str',
'version': 'int',
+ 'locks': 'list[ResourceLock]',
'freeform_tags': 'dict(str, str)',
'defined_tags': 'dict(str, dict(str, object))',
'system_tags': 'dict(str, dict(str, object))'
@@ -120,6 +125,7 @@ def __init__(self, **kwargs):
'lifecycle_state': 'lifecycleState',
'lifecyle_details': 'lifecyleDetails',
'version': 'version',
+ 'locks': 'locks',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
'system_tags': 'systemTags'
@@ -136,6 +142,7 @@ def __init__(self, **kwargs):
self._lifecycle_state = None
self._lifecyle_details = None
self._version = None
+ self._locks = None
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
@@ -215,7 +222,7 @@ def compartment_id(self, compartment_id):
@property
def tasks(self):
"""
- Gets the tasks of this MediaWorkflow.
+ **[Required]** Gets the tasks of this MediaWorkflow.
The processing to be done in this workflow. Each key of the MediaWorkflowTasks in this array is unique
within the array. The order of the items is preserved from the order of the tasks array in
CreateMediaWorkflowDetails or UpdateMediaWorkflowDetails.
@@ -424,6 +431,30 @@ def version(self, version):
"""
self._version = version
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaWorkflow.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaWorkflow.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaWorkflow.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaWorkflow.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
@property
def freeform_tags(self):
"""
diff --git a/src/oci/media_services/models/media_workflow_configuration.py b/src/oci/media_services/models/media_workflow_configuration.py
index 334caeab90..4ceb3eab6e 100644
--- a/src/oci/media_services/models/media_workflow_configuration.py
+++ b/src/oci/media_services/models/media_workflow_configuration.py
@@ -74,6 +74,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this MediaWorkflowConfiguration.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this MediaWorkflowConfiguration.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -86,7 +90,8 @@ def __init__(self, **kwargs):
'lifecyle_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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -100,7 +105,8 @@ def __init__(self, **kwargs):
'lifecyle_details': 'lifecyleDetails',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -114,6 +120,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -397,6 +404,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaWorkflowConfiguration.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaWorkflowConfiguration.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaWorkflowConfiguration.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaWorkflowConfiguration.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/media_workflow_configuration_summary.py b/src/oci/media_services/models/media_workflow_configuration_summary.py
index ef10c7f46c..dbe726d918 100644
--- a/src/oci/media_services/models/media_workflow_configuration_summary.py
+++ b/src/oci/media_services/models/media_workflow_configuration_summary.py
@@ -60,6 +60,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this MediaWorkflowConfigurationSummary.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this MediaWorkflowConfigurationSummary.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -71,7 +75,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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -84,7 +89,8 @@ def __init__(self, **kwargs):
'lifecycle_details': 'lifecycleDetails',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -97,6 +103,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -344,6 +351,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaWorkflowConfigurationSummary.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaWorkflowConfigurationSummary.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaWorkflowConfigurationSummary.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaWorkflowConfigurationSummary.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/media_workflow_job.py b/src/oci/media_services/models/media_workflow_job.py
index 196fa121cd..fd50902a24 100644
--- a/src/oci/media_services/models/media_workflow_job.py
+++ b/src/oci/media_services/models/media_workflow_job.py
@@ -27,6 +27,10 @@ class MediaWorkflowJob(object):
#: This constant has a value of "WAITING"
LIFECYCLE_STATE_WAITING = "WAITING"
+ #: A constant which can be used with the lifecycle_state property of a MediaWorkflowJob.
+ #: This constant has a value of "REJECTED"
+ LIFECYCLE_STATE_REJECTED = "REJECTED"
+
#: A constant which can be used with the lifecycle_state property of a MediaWorkflowJob.
#: This constant has a value of "FAILED"
LIFECYCLE_STATE_FAILED = "FAILED"
@@ -70,7 +74,7 @@ def __init__(self, **kwargs):
:param lifecycle_state:
The value to assign to the lifecycle_state property of this MediaWorkflowJob.
- Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "REJECTED", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
:type lifecycle_state: str
@@ -110,6 +114,10 @@ def __init__(self, **kwargs):
The value to assign to the time_ended property of this MediaWorkflowJob.
:type time_ended: datetime
+ :param locks:
+ The value to assign to the locks property of this MediaWorkflowJob.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
:param freeform_tags:
The value to assign to the freeform_tags property of this MediaWorkflowJob.
:type freeform_tags: dict(str, str)
@@ -139,6 +147,7 @@ def __init__(self, **kwargs):
'outputs': 'list[JobOutput]',
'time_started': 'datetime',
'time_ended': 'datetime',
+ 'locks': 'list[ResourceLock]',
'freeform_tags': 'dict(str, str)',
'defined_tags': 'dict(str, dict(str, object))',
'system_tags': 'dict(str, dict(str, object))'
@@ -160,6 +169,7 @@ def __init__(self, **kwargs):
'outputs': 'outputs',
'time_started': 'timeStarted',
'time_ended': 'timeEnded',
+ 'locks': 'locks',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
'system_tags': 'systemTags'
@@ -180,6 +190,7 @@ def __init__(self, **kwargs):
self._outputs = None
self._time_started = None
self._time_ended = None
+ self._locks = None
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
@@ -310,7 +321,7 @@ def lifecycle_state(self):
Gets the lifecycle_state of this MediaWorkflowJob.
The current state of the MediaWorkflowJob.
- Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", 'UNKNOWN_ENUM_VALUE'.
+ Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "REJECTED", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", 'UNKNOWN_ENUM_VALUE'.
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
@@ -329,7 +340,7 @@ def lifecycle_state(self, lifecycle_state):
:param lifecycle_state: The lifecycle_state of this MediaWorkflowJob.
:type: str
"""
- allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED"]
+ allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "REJECTED", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED"]
if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values):
lifecycle_state = 'UNKNOWN_ENUM_VALUE'
self._lifecycle_state = lifecycle_state
@@ -560,6 +571,30 @@ def time_ended(self, time_ended):
"""
self._time_ended = time_ended
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaWorkflowJob.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaWorkflowJob.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaWorkflowJob.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaWorkflowJob.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
@property
def freeform_tags(self):
"""
diff --git a/src/oci/media_services/models/media_workflow_job_summary.py b/src/oci/media_services/models/media_workflow_job_summary.py
index 9260a0b373..45a5451db5 100644
--- a/src/oci/media_services/models/media_workflow_job_summary.py
+++ b/src/oci/media_services/models/media_workflow_job_summary.py
@@ -60,6 +60,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this MediaWorkflowJobSummary.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this MediaWorkflowJobSummary.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'media_workflow_id': 'str',
@@ -71,7 +75,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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -84,7 +89,8 @@ def __init__(self, **kwargs):
'lifecycle_details': 'lifecycleDetails',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._media_workflow_id = None
@@ -97,6 +103,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def media_workflow_id(self):
@@ -344,6 +351,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaWorkflowJobSummary.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaWorkflowJobSummary.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaWorkflowJobSummary.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaWorkflowJobSummary.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/media_workflow_summary.py b/src/oci/media_services/models/media_workflow_summary.py
index fa32f6018b..c457e2f2f5 100644
--- a/src/oci/media_services/models/media_workflow_summary.py
+++ b/src/oci/media_services/models/media_workflow_summary.py
@@ -64,6 +64,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this MediaWorkflowSummary.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this MediaWorkflowSummary.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -76,7 +80,8 @@ def __init__(self, **kwargs):
'version': 'int',
'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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -90,7 +95,8 @@ def __init__(self, **kwargs):
'version': 'version',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -104,6 +110,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -375,6 +382,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaWorkflowSummary.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaWorkflowSummary.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaWorkflowSummary.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaWorkflowSummary.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/media_workflow_task.py b/src/oci/media_services/models/media_workflow_task.py
index 1dd5eea72a..ddb78173af 100644
--- a/src/oci/media_services/models/media_workflow_task.py
+++ b/src/oci/media_services/models/media_workflow_task.py
@@ -81,7 +81,7 @@ def __init__(self, **kwargs):
@property
def type(self):
"""
- Gets the type of this MediaWorkflowTask.
+ **[Required]** Gets the type of this MediaWorkflowTask.
The type of process to run at this task. Refers to the name of a MediaWorkflowTaskDeclaration.
@@ -237,7 +237,7 @@ def enable_when_referenced_parameter_equals(self, enable_when_referenced_paramet
@property
def parameters(self):
"""
- Gets the parameters of this MediaWorkflowTask.
+ **[Required]** Gets the parameters of this MediaWorkflowTask.
Data specifiying how this task is to be run. The data is a JSON object that must conform to the JSON Schema
specified by the parameters of the MediaWorkflowTaskDeclaration this task references. The parameters may
contain values or references to other parameters.
diff --git a/src/oci/media_services/models/media_workflow_task_declaration.py b/src/oci/media_services/models/media_workflow_task_declaration.py
index 4c7a7cbdbf..40ee3fb1e0 100644
--- a/src/oci/media_services/models/media_workflow_task_declaration.py
+++ b/src/oci/media_services/models/media_workflow_task_declaration.py
@@ -36,25 +36,32 @@ def __init__(self, **kwargs):
The value to assign to the parameters_schema_allowing_references property of this MediaWorkflowTaskDeclaration.
:type parameters_schema_allowing_references: dict(str, object)
+ :param locks:
+ The value to assign to the locks property of this MediaWorkflowTaskDeclaration.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'name': 'str',
'version': 'int',
'parameters_schema': 'dict(str, object)',
- 'parameters_schema_allowing_references': 'dict(str, object)'
+ 'parameters_schema_allowing_references': 'dict(str, object)',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
'name': 'name',
'version': 'version',
'parameters_schema': 'parametersSchema',
- 'parameters_schema_allowing_references': 'parametersSchemaAllowingReferences'
+ 'parameters_schema_allowing_references': 'parametersSchemaAllowingReferences',
+ 'locks': 'locks'
}
self._name = None
self._version = None
self._parameters_schema = None
self._parameters_schema_allowing_references = None
+ self._locks = None
@property
def name(self):
@@ -160,6 +167,30 @@ def parameters_schema_allowing_references(self, parameters_schema_allowing_refer
"""
self._parameters_schema_allowing_references = parameters_schema_allowing_references
+ @property
+ def locks(self):
+ """
+ Gets the locks of this MediaWorkflowTaskDeclaration.
+ Locks associated with this resource.
+
+
+ :return: The locks of this MediaWorkflowTaskDeclaration.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this MediaWorkflowTaskDeclaration.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this MediaWorkflowTaskDeclaration.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/remove_lock_details.py b/src/oci/media_services/models/remove_lock_details.py
new file mode 100644
index 0000000000..ec5163b65b
--- /dev/null
+++ b/src/oci/media_services/models/remove_lock_details.py
@@ -0,0 +1,214 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20211101
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class RemoveLockDetails(object):
+ """
+ Request payload to remove lock to the resource.
+ """
+
+ #: A constant which can be used with the type property of a RemoveLockDetails.
+ #: This constant has a value of "FULL"
+ TYPE_FULL = "FULL"
+
+ #: A constant which can be used with the type property of a RemoveLockDetails.
+ #: This constant has a value of "DELETE"
+ TYPE_DELETE = "DELETE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new RemoveLockDetails 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 RemoveLockDetails.
+ Allowed values for this property are: "FULL", "DELETE"
+ :type type: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this RemoveLockDetails.
+ :type compartment_id: str
+
+ :param related_resource_id:
+ The value to assign to the related_resource_id property of this RemoveLockDetails.
+ :type related_resource_id: str
+
+ :param message:
+ The value to assign to the message property of this RemoveLockDetails.
+ :type message: str
+
+ :param time_created:
+ The value to assign to the time_created property of this RemoveLockDetails.
+ :type time_created: datetime
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'compartment_id': 'str',
+ 'related_resource_id': 'str',
+ 'message': 'str',
+ 'time_created': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'compartment_id': 'compartmentId',
+ 'related_resource_id': 'relatedResourceId',
+ 'message': 'message',
+ 'time_created': 'timeCreated'
+ }
+
+ self._type = None
+ self._compartment_id = None
+ self._related_resource_id = None
+ self._message = None
+ self._time_created = None
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this RemoveLockDetails.
+ Type of the lock.
+
+ Allowed values for this property are: "FULL", "DELETE"
+
+
+ :return: The type of this RemoveLockDetails.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this RemoveLockDetails.
+ Type of the lock.
+
+
+ :param type: The type of this RemoveLockDetails.
+ :type: str
+ """
+ allowed_values = ["FULL", "DELETE"]
+ 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}"
+ )
+ self._type = type
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this RemoveLockDetails.
+ The compartment ID of the lock.
+
+
+ :return: The compartment_id of this RemoveLockDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this RemoveLockDetails.
+ The compartment ID of the lock.
+
+
+ :param compartment_id: The compartment_id of this RemoveLockDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def related_resource_id(self):
+ """
+ Gets the related_resource_id of this RemoveLockDetails.
+ The ID of the resource that is locking this resource. Indicates that deleting this resource will remove the lock.
+
+
+ :return: The related_resource_id of this RemoveLockDetails.
+ :rtype: str
+ """
+ return self._related_resource_id
+
+ @related_resource_id.setter
+ def related_resource_id(self, related_resource_id):
+ """
+ Sets the related_resource_id of this RemoveLockDetails.
+ The ID of the resource that is locking this resource. Indicates that deleting this resource will remove the lock.
+
+
+ :param related_resource_id: The related_resource_id of this RemoveLockDetails.
+ :type: str
+ """
+ self._related_resource_id = related_resource_id
+
+ @property
+ def message(self):
+ """
+ Gets the message of this RemoveLockDetails.
+ A message added by the creator of the lock. This is typically used to give an
+ indication of why the resource is locked.
+
+
+ :return: The message of this RemoveLockDetails.
+ :rtype: str
+ """
+ return self._message
+
+ @message.setter
+ def message(self, message):
+ """
+ Sets the message of this RemoveLockDetails.
+ A message added by the creator of the lock. This is typically used to give an
+ indication of why the resource is locked.
+
+
+ :param message: The message of this RemoveLockDetails.
+ :type: str
+ """
+ self._message = message
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this RemoveLockDetails.
+ When the lock was created.
+
+
+ :return: The time_created of this RemoveLockDetails.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this RemoveLockDetails.
+ When the lock was created.
+
+
+ :param time_created: The time_created of this RemoveLockDetails.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/media_services/models/resource_lock.py b/src/oci/media_services/models/resource_lock.py
new file mode 100644
index 0000000000..74b830ffd6
--- /dev/null
+++ b/src/oci/media_services/models/resource_lock.py
@@ -0,0 +1,216 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20211101
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ResourceLock(object):
+ """
+ Resource locks are used to prevent certain APIs from being called for the resource.
+ A full lock prevents both updating the resource and deleting the resource. A delete
+ lock prevents deleting the resource.
+ """
+
+ #: A constant which can be used with the type property of a ResourceLock.
+ #: This constant has a value of "FULL"
+ TYPE_FULL = "FULL"
+
+ #: A constant which can be used with the type property of a ResourceLock.
+ #: This constant has a value of "DELETE"
+ TYPE_DELETE = "DELETE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ResourceLock 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 ResourceLock.
+ Allowed values for this property are: "FULL", "DELETE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type type: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this ResourceLock.
+ :type compartment_id: str
+
+ :param related_resource_id:
+ The value to assign to the related_resource_id property of this ResourceLock.
+ :type related_resource_id: str
+
+ :param message:
+ The value to assign to the message property of this ResourceLock.
+ :type message: str
+
+ :param time_created:
+ The value to assign to the time_created property of this ResourceLock.
+ :type time_created: datetime
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'compartment_id': 'str',
+ 'related_resource_id': 'str',
+ 'message': 'str',
+ 'time_created': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'compartment_id': 'compartmentId',
+ 'related_resource_id': 'relatedResourceId',
+ 'message': 'message',
+ 'time_created': 'timeCreated'
+ }
+
+ self._type = None
+ self._compartment_id = None
+ self._related_resource_id = None
+ self._message = None
+ self._time_created = None
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this ResourceLock.
+ Type of the lock.
+
+ Allowed values for this property are: "FULL", "DELETE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The type of this ResourceLock.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this ResourceLock.
+ Type of the lock.
+
+
+ :param type: The type of this ResourceLock.
+ :type: str
+ """
+ allowed_values = ["FULL", "DELETE"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ type = 'UNKNOWN_ENUM_VALUE'
+ self._type = type
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this ResourceLock.
+ The compartment ID of the lock.
+
+
+ :return: The compartment_id of this ResourceLock.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ResourceLock.
+ The compartment ID of the lock.
+
+
+ :param compartment_id: The compartment_id of this ResourceLock.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def related_resource_id(self):
+ """
+ Gets the related_resource_id of this ResourceLock.
+ The ID of the resource that is locking this resource. Indicates that deleting this resource will remove the lock.
+
+
+ :return: The related_resource_id of this ResourceLock.
+ :rtype: str
+ """
+ return self._related_resource_id
+
+ @related_resource_id.setter
+ def related_resource_id(self, related_resource_id):
+ """
+ Sets the related_resource_id of this ResourceLock.
+ The ID of the resource that is locking this resource. Indicates that deleting this resource will remove the lock.
+
+
+ :param related_resource_id: The related_resource_id of this ResourceLock.
+ :type: str
+ """
+ self._related_resource_id = related_resource_id
+
+ @property
+ def message(self):
+ """
+ Gets the message of this ResourceLock.
+ A message added by the creator of the lock. This is typically used to give an
+ indication of why the resource is locked.
+
+
+ :return: The message of this ResourceLock.
+ :rtype: str
+ """
+ return self._message
+
+ @message.setter
+ def message(self, message):
+ """
+ Sets the message of this ResourceLock.
+ A message added by the creator of the lock. This is typically used to give an
+ indication of why the resource is locked.
+
+
+ :param message: The message of this ResourceLock.
+ :type: str
+ """
+ self._message = message
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this ResourceLock.
+ When the lock was created.
+
+
+ :return: The time_created of this ResourceLock.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this ResourceLock.
+ When the lock was created.
+
+
+ :param time_created: The time_created of this ResourceLock.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/media_services/models/stream_cdn_config.py b/src/oci/media_services/models/stream_cdn_config.py
index b2f3cd0f43..84873b47bd 100644
--- a/src/oci/media_services/models/stream_cdn_config.py
+++ b/src/oci/media_services/models/stream_cdn_config.py
@@ -86,6 +86,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this StreamCdnConfig.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this StreamCdnConfig.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -100,7 +104,8 @@ def __init__(self, **kwargs):
'lifecyle_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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -116,7 +121,8 @@ def __init__(self, **kwargs):
'lifecyle_details': 'lifecyleDetails',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -132,6 +138,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -453,6 +460,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this StreamCdnConfig.
+ Locks associated with this resource.
+
+
+ :return: The locks of this StreamCdnConfig.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this StreamCdnConfig.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this StreamCdnConfig.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/stream_cdn_config_summary.py b/src/oci/media_services/models/stream_cdn_config_summary.py
index 074d0ce99b..bf07d6521a 100644
--- a/src/oci/media_services/models/stream_cdn_config_summary.py
+++ b/src/oci/media_services/models/stream_cdn_config_summary.py
@@ -68,6 +68,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this StreamCdnConfigSummary.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this StreamCdnConfigSummary.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -81,7 +85,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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -96,7 +101,8 @@ def __init__(self, **kwargs):
'lifecycle_details': 'lifecycleDetails',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -111,6 +117,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -406,6 +413,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this StreamCdnConfigSummary.
+ Locks associated with this resource.
+
+
+ :return: The locks of this StreamCdnConfigSummary.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this StreamCdnConfigSummary.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this StreamCdnConfigSummary.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/stream_distribution_channel.py b/src/oci/media_services/models/stream_distribution_channel.py
index 585c95009d..2b5af0ce01 100644
--- a/src/oci/media_services/models/stream_distribution_channel.py
+++ b/src/oci/media_services/models/stream_distribution_channel.py
@@ -74,6 +74,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this StreamDistributionChannel.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this StreamDistributionChannel.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -85,7 +89,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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -98,7 +103,8 @@ def __init__(self, **kwargs):
'lifecycle_state': 'lifecycleState',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -111,6 +117,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -364,6 +371,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this StreamDistributionChannel.
+ Locks associated with this resource.
+
+
+ :return: The locks of this StreamDistributionChannel.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this StreamDistributionChannel.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this StreamDistributionChannel.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/stream_distribution_channel_summary.py b/src/oci/media_services/models/stream_distribution_channel_summary.py
index 5181afdcd3..cfdcd2ab24 100644
--- a/src/oci/media_services/models/stream_distribution_channel_summary.py
+++ b/src/oci/media_services/models/stream_distribution_channel_summary.py
@@ -60,6 +60,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this StreamDistributionChannelSummary.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this StreamDistributionChannelSummary.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -71,7 +75,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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -84,7 +89,8 @@ def __init__(self, **kwargs):
'lifecycle_state': 'lifecycleState',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -97,6 +103,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -344,6 +351,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this StreamDistributionChannelSummary.
+ Locks associated with this resource.
+
+
+ :return: The locks of this StreamDistributionChannelSummary.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this StreamDistributionChannelSummary.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this StreamDistributionChannelSummary.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/stream_packaging_config.py b/src/oci/media_services/models/stream_packaging_config.py
index b7c888063f..03ebdbfdde 100644
--- a/src/oci/media_services/models/stream_packaging_config.py
+++ b/src/oci/media_services/models/stream_packaging_config.py
@@ -101,6 +101,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this StreamPackagingConfig.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this StreamPackagingConfig.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -115,7 +119,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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -131,7 +136,8 @@ def __init__(self, **kwargs):
'lifecycle_state': 'lifecycleState',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -147,6 +153,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@staticmethod
def get_subtype(object_dictionary):
@@ -490,6 +497,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this StreamPackagingConfig.
+ Locks associated with this resource.
+
+
+ :return: The locks of this StreamPackagingConfig.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this StreamPackagingConfig.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this StreamPackagingConfig.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/stream_packaging_config_summary.py b/src/oci/media_services/models/stream_packaging_config_summary.py
index 501305b037..d7689d49cb 100644
--- a/src/oci/media_services/models/stream_packaging_config_summary.py
+++ b/src/oci/media_services/models/stream_packaging_config_summary.py
@@ -60,6 +60,10 @@ def __init__(self, **kwargs):
The value to assign to the system_tags property of this StreamPackagingConfigSummary.
:type system_tags: dict(str, dict(str, object))
+ :param locks:
+ The value to assign to the locks property of this StreamPackagingConfigSummary.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'id': 'str',
@@ -71,7 +75,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))',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
@@ -84,7 +89,8 @@ def __init__(self, **kwargs):
'lifecycle_state': 'lifecycleState',
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
- 'system_tags': 'systemTags'
+ 'system_tags': 'systemTags',
+ 'locks': 'locks'
}
self._id = None
@@ -97,6 +103,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._defined_tags = None
self._system_tags = None
+ self._locks = None
@property
def id(self):
@@ -344,6 +351,30 @@ def system_tags(self, system_tags):
"""
self._system_tags = system_tags
+ @property
+ def locks(self):
+ """
+ Gets the locks of this StreamPackagingConfigSummary.
+ Locks associated with this resource.
+
+
+ :return: The locks of this StreamPackagingConfigSummary.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this StreamPackagingConfigSummary.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this StreamPackagingConfigSummary.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/media_services/models/system_media_workflow.py b/src/oci/media_services/models/system_media_workflow.py
index bbdce57991..5fc211d859 100644
--- a/src/oci/media_services/models/system_media_workflow.py
+++ b/src/oci/media_services/models/system_media_workflow.py
@@ -36,25 +36,32 @@ def __init__(self, **kwargs):
The value to assign to the tasks property of this SystemMediaWorkflow.
:type tasks: list[oci.media_services.models.MediaWorkflowTask]
+ :param locks:
+ The value to assign to the locks property of this SystemMediaWorkflow.
+ :type locks: list[oci.media_services.models.ResourceLock]
+
"""
self.swagger_types = {
'name': 'str',
'description': 'str',
'parameters': 'dict(str, object)',
- 'tasks': 'list[MediaWorkflowTask]'
+ 'tasks': 'list[MediaWorkflowTask]',
+ 'locks': 'list[ResourceLock]'
}
self.attribute_map = {
'name': 'name',
'description': 'description',
'parameters': 'parameters',
- 'tasks': 'tasks'
+ 'tasks': 'tasks',
+ 'locks': 'locks'
}
self._name = None
self._description = None
self._parameters = None
self._tasks = None
+ self._locks = None
@property
def name(self):
@@ -162,6 +169,30 @@ def tasks(self, tasks):
"""
self._tasks = tasks
+ @property
+ def locks(self):
+ """
+ Gets the locks of this SystemMediaWorkflow.
+ Locks associated with this resource.
+
+
+ :return: The locks of this SystemMediaWorkflow.
+ :rtype: list[oci.media_services.models.ResourceLock]
+ """
+ return self._locks
+
+ @locks.setter
+ def locks(self, locks):
+ """
+ Sets the locks of this SystemMediaWorkflow.
+ Locks associated with this resource.
+
+
+ :param locks: The locks of this SystemMediaWorkflow.
+ :type: list[oci.media_services.models.ResourceLock]
+ """
+ self._locks = locks
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/mysql/models/__init__.py b/src/oci/mysql/models/__init__.py
index f4c5e9fd5b..b27ef48b2f 100644
--- a/src/oci/mysql/models/__init__.py
+++ b/src/oci/mysql/models/__init__.py
@@ -69,6 +69,7 @@
from .replica_overrides import ReplicaOverrides
from .replica_summary import ReplicaSummary
from .restart_db_system_details import RestartDbSystemDetails
+from .secure_connection_details import SecureConnectionDetails
from .shape_summary import ShapeSummary
from .stop_db_system_details import StopDbSystemDetails
from .update_backup_details import UpdateBackupDetails
@@ -157,6 +158,7 @@
"ReplicaOverrides": ReplicaOverrides,
"ReplicaSummary": ReplicaSummary,
"RestartDbSystemDetails": RestartDbSystemDetails,
+ "SecureConnectionDetails": SecureConnectionDetails,
"ShapeSummary": ShapeSummary,
"StopDbSystemDetails": StopDbSystemDetails,
"UpdateBackupDetails": UpdateBackupDetails,
diff --git a/src/oci/mysql/models/create_db_system_details.py b/src/oci/mysql/models/create_db_system_details.py
index 16c2821cfd..b1562c21f0 100644
--- a/src/oci/mysql/models/create_db_system_details.py
+++ b/src/oci/mysql/models/create_db_system_details.py
@@ -138,6 +138,10 @@ def __init__(self, **kwargs):
Allowed values for this property are: "ENABLED", "DISABLED"
:type database_management: str
+ :param secure_connections:
+ The value to assign to the secure_connections property of this CreateDbSystemDetails.
+ :type secure_connections: oci.mysql.models.SecureConnectionDetails
+
"""
self.swagger_types = {
'display_name': 'str',
@@ -164,7 +168,8 @@ def __init__(self, **kwargs):
'defined_tags': 'dict(str, dict(str, object))',
'deletion_policy': 'CreateDeletionPolicyDetails',
'crash_recovery': 'str',
- 'database_management': 'str'
+ 'database_management': 'str',
+ 'secure_connections': 'SecureConnectionDetails'
}
self.attribute_map = {
@@ -192,7 +197,8 @@ def __init__(self, **kwargs):
'defined_tags': 'definedTags',
'deletion_policy': 'deletionPolicy',
'crash_recovery': 'crashRecovery',
- 'database_management': 'databaseManagement'
+ 'database_management': 'databaseManagement',
+ 'secure_connections': 'secureConnections'
}
self._display_name = None
@@ -220,6 +226,7 @@ def __init__(self, **kwargs):
self._deletion_policy = None
self._crash_recovery = None
self._database_management = None
+ self._secure_connections = None
@property
def display_name(self):
@@ -895,6 +902,26 @@ def database_management(self, database_management):
)
self._database_management = database_management
+ @property
+ def secure_connections(self):
+ """
+ Gets the secure_connections of this CreateDbSystemDetails.
+
+ :return: The secure_connections of this CreateDbSystemDetails.
+ :rtype: oci.mysql.models.SecureConnectionDetails
+ """
+ return self._secure_connections
+
+ @secure_connections.setter
+ def secure_connections(self, secure_connections):
+ """
+ Sets the secure_connections of this CreateDbSystemDetails.
+
+ :param secure_connections: The secure_connections of this CreateDbSystemDetails.
+ :type: oci.mysql.models.SecureConnectionDetails
+ """
+ self._secure_connections = secure_connections
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/mysql/models/db_system.py b/src/oci/mysql/models/db_system.py
index 531d8c561a..5b51c9a6e4 100644
--- a/src/oci/mysql/models/db_system.py
+++ b/src/oci/mysql/models/db_system.py
@@ -206,6 +206,10 @@ def __init__(self, **kwargs):
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
:type database_management: str
+ :param secure_connections:
+ The value to assign to the secure_connections property of this DbSystem.
+ :type secure_connections: oci.mysql.models.SecureConnectionDetails
+
"""
self.swagger_types = {
'id': 'str',
@@ -241,7 +245,8 @@ def __init__(self, **kwargs):
'defined_tags': 'dict(str, dict(str, object))',
'crash_recovery': 'str',
'point_in_time_recovery_details': 'PointInTimeRecoveryDetails',
- 'database_management': 'str'
+ 'database_management': 'str',
+ 'secure_connections': 'SecureConnectionDetails'
}
self.attribute_map = {
@@ -278,7 +283,8 @@ def __init__(self, **kwargs):
'defined_tags': 'definedTags',
'crash_recovery': 'crashRecovery',
'point_in_time_recovery_details': 'pointInTimeRecoveryDetails',
- 'database_management': 'databaseManagement'
+ 'database_management': 'databaseManagement',
+ 'secure_connections': 'secureConnections'
}
self._id = None
@@ -315,6 +321,7 @@ def __init__(self, **kwargs):
self._crash_recovery = None
self._point_in_time_recovery_details = None
self._database_management = None
+ self._secure_connections = None
@property
def id(self):
@@ -1172,6 +1179,26 @@ def database_management(self, database_management):
database_management = 'UNKNOWN_ENUM_VALUE'
self._database_management = database_management
+ @property
+ def secure_connections(self):
+ """
+ Gets the secure_connections of this DbSystem.
+
+ :return: The secure_connections of this DbSystem.
+ :rtype: oci.mysql.models.SecureConnectionDetails
+ """
+ return self._secure_connections
+
+ @secure_connections.setter
+ def secure_connections(self, secure_connections):
+ """
+ Sets the secure_connections of this DbSystem.
+
+ :param secure_connections: The secure_connections of this DbSystem.
+ :type: oci.mysql.models.SecureConnectionDetails
+ """
+ self._secure_connections = secure_connections
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/mysql/models/db_system_snapshot.py b/src/oci/mysql/models/db_system_snapshot.py
index fabbb32b9c..a48fe3f4e5 100644
--- a/src/oci/mysql/models/db_system_snapshot.py
+++ b/src/oci/mysql/models/db_system_snapshot.py
@@ -140,6 +140,10 @@ def __init__(self, **kwargs):
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
:type database_management: str
+ :param secure_connections:
+ The value to assign to the secure_connections property of this DbSystemSnapshot.
+ :type secure_connections: oci.mysql.models.SecureConnectionDetails
+
"""
self.swagger_types = {
'id': 'str',
@@ -166,7 +170,8 @@ def __init__(self, **kwargs):
'freeform_tags': 'dict(str, str)',
'defined_tags': 'dict(str, dict(str, object))',
'crash_recovery': 'str',
- 'database_management': 'str'
+ 'database_management': 'str',
+ 'secure_connections': 'SecureConnectionDetails'
}
self.attribute_map = {
@@ -194,7 +199,8 @@ def __init__(self, **kwargs):
'freeform_tags': 'freeformTags',
'defined_tags': 'definedTags',
'crash_recovery': 'crashRecovery',
- 'database_management': 'databaseManagement'
+ 'database_management': 'databaseManagement',
+ 'secure_connections': 'secureConnections'
}
self._id = None
@@ -222,6 +228,7 @@ def __init__(self, **kwargs):
self._defined_tags = None
self._crash_recovery = None
self._database_management = None
+ self._secure_connections = None
@property
def id(self):
@@ -849,6 +856,26 @@ def database_management(self, database_management):
database_management = 'UNKNOWN_ENUM_VALUE'
self._database_management = database_management
+ @property
+ def secure_connections(self):
+ """
+ Gets the secure_connections of this DbSystemSnapshot.
+
+ :return: The secure_connections of this DbSystemSnapshot.
+ :rtype: oci.mysql.models.SecureConnectionDetails
+ """
+ return self._secure_connections
+
+ @secure_connections.setter
+ def secure_connections(self, secure_connections):
+ """
+ Sets the secure_connections of this DbSystemSnapshot.
+
+ :param secure_connections: The secure_connections of this DbSystemSnapshot.
+ :type: oci.mysql.models.SecureConnectionDetails
+ """
+ self._secure_connections = secure_connections
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/mysql/models/replica.py b/src/oci/mysql/models/replica.py
index 9f044dfced..898bbed5e0 100644
--- a/src/oci/mysql/models/replica.py
+++ b/src/oci/mysql/models/replica.py
@@ -52,6 +52,10 @@ def __init__(self, **kwargs):
Initializes a new Replica object with values from keyword arguments.
The following keyword arguments are supported (corresponding to the getters/setters of this class):
+ :param secure_connections:
+ The value to assign to the secure_connections property of this Replica.
+ :type secure_connections: oci.mysql.models.SecureConnectionDetails
+
:param id:
The value to assign to the id property of this Replica.
:type id: str
@@ -140,6 +144,7 @@ def __init__(self, **kwargs):
"""
self.swagger_types = {
+ 'secure_connections': 'SecureConnectionDetails',
'id': 'str',
'db_system_id': 'str',
'compartment_id': 'str',
@@ -164,6 +169,7 @@ def __init__(self, **kwargs):
}
self.attribute_map = {
+ 'secure_connections': 'secureConnections',
'id': 'id',
'db_system_id': 'dbSystemId',
'compartment_id': 'compartmentId',
@@ -187,6 +193,7 @@ def __init__(self, **kwargs):
'replica_overrides': 'replicaOverrides'
}
+ self._secure_connections = None
self._id = None
self._db_system_id = None
self._compartment_id = None
@@ -209,6 +216,26 @@ def __init__(self, **kwargs):
self._configuration_id = None
self._replica_overrides = None
+ @property
+ def secure_connections(self):
+ """
+ Gets the secure_connections of this Replica.
+
+ :return: The secure_connections of this Replica.
+ :rtype: oci.mysql.models.SecureConnectionDetails
+ """
+ return self._secure_connections
+
+ @secure_connections.setter
+ def secure_connections(self, secure_connections):
+ """
+ Sets the secure_connections of this Replica.
+
+ :param secure_connections: The secure_connections of this Replica.
+ :type: oci.mysql.models.SecureConnectionDetails
+ """
+ self._secure_connections = secure_connections
+
@property
def id(self):
"""
diff --git a/src/oci/mysql/models/secure_connection_details.py b/src/oci/mysql/models/secure_connection_details.py
new file mode 100644
index 0000000000..355263e026
--- /dev/null
+++ b/src/oci/mysql/models/secure_connection_details.py
@@ -0,0 +1,119 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.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 SecureConnectionDetails(object):
+ """
+ Secure connection configuration details.
+ """
+
+ #: A constant which can be used with the certificate_generation_type property of a SecureConnectionDetails.
+ #: This constant has a value of "SYSTEM"
+ CERTIFICATE_GENERATION_TYPE_SYSTEM = "SYSTEM"
+
+ #: A constant which can be used with the certificate_generation_type property of a SecureConnectionDetails.
+ #: This constant has a value of "BYOC"
+ CERTIFICATE_GENERATION_TYPE_BYOC = "BYOC"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SecureConnectionDetails 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 SecureConnectionDetails.
+ :type certificate_id: str
+
+ :param certificate_generation_type:
+ The value to assign to the certificate_generation_type property of this SecureConnectionDetails.
+ Allowed values for this property are: "SYSTEM", "BYOC", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type certificate_generation_type: str
+
+ """
+ self.swagger_types = {
+ 'certificate_id': 'str',
+ 'certificate_generation_type': 'str'
+ }
+
+ self.attribute_map = {
+ 'certificate_id': 'certificateId',
+ 'certificate_generation_type': 'certificateGenerationType'
+ }
+
+ self._certificate_id = None
+ self._certificate_generation_type = None
+
+ @property
+ def certificate_id(self):
+ """
+ Gets the certificate_id of this SecureConnectionDetails.
+ The OCID of the certificate to use.
+
+
+ :return: The certificate_id of this SecureConnectionDetails.
+ :rtype: str
+ """
+ return self._certificate_id
+
+ @certificate_id.setter
+ def certificate_id(self, certificate_id):
+ """
+ Sets the certificate_id of this SecureConnectionDetails.
+ The OCID of the certificate to use.
+
+
+ :param certificate_id: The certificate_id of this SecureConnectionDetails.
+ :type: str
+ """
+ self._certificate_id = certificate_id
+
+ @property
+ def certificate_generation_type(self):
+ """
+ **[Required]** Gets the certificate_generation_type of this SecureConnectionDetails.
+ Select whether to use MySQL Database Service-managed certificate (SYSTEM) or your own certificate (BYOC).
+
+ Allowed values for this property are: "SYSTEM", "BYOC", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The certificate_generation_type of this SecureConnectionDetails.
+ :rtype: str
+ """
+ return self._certificate_generation_type
+
+ @certificate_generation_type.setter
+ def certificate_generation_type(self, certificate_generation_type):
+ """
+ Sets the certificate_generation_type of this SecureConnectionDetails.
+ Select whether to use MySQL Database Service-managed certificate (SYSTEM) or your own certificate (BYOC).
+
+
+ :param certificate_generation_type: The certificate_generation_type of this SecureConnectionDetails.
+ :type: str
+ """
+ allowed_values = ["SYSTEM", "BYOC"]
+ if not value_allowed_none_or_none_sentinel(certificate_generation_type, allowed_values):
+ certificate_generation_type = 'UNKNOWN_ENUM_VALUE'
+ self._certificate_generation_type = certificate_generation_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/mysql/models/update_db_system_details.py b/src/oci/mysql/models/update_db_system_details.py
index 4ef4f8e72b..137d727131 100644
--- a/src/oci/mysql/models/update_db_system_details.py
+++ b/src/oci/mysql/models/update_db_system_details.py
@@ -130,6 +130,10 @@ def __init__(self, **kwargs):
Allowed values for this property are: "ENABLED", "DISABLED"
:type database_management: str
+ :param secure_connections:
+ The value to assign to the secure_connections property of this UpdateDbSystemDetails.
+ :type secure_connections: oci.mysql.models.SecureConnectionDetails
+
"""
self.swagger_types = {
'display_name': 'str',
@@ -154,7 +158,8 @@ def __init__(self, **kwargs):
'defined_tags': 'dict(str, dict(str, object))',
'deletion_policy': 'UpdateDeletionPolicyDetails',
'crash_recovery': 'str',
- 'database_management': 'str'
+ 'database_management': 'str',
+ 'secure_connections': 'SecureConnectionDetails'
}
self.attribute_map = {
@@ -180,7 +185,8 @@ def __init__(self, **kwargs):
'defined_tags': 'definedTags',
'deletion_policy': 'deletionPolicy',
'crash_recovery': 'crashRecovery',
- 'database_management': 'databaseManagement'
+ 'database_management': 'databaseManagement',
+ 'secure_connections': 'secureConnections'
}
self._display_name = None
@@ -206,6 +212,7 @@ def __init__(self, **kwargs):
self._deletion_policy = None
self._crash_recovery = None
self._database_management = None
+ self._secure_connections = None
@property
def display_name(self):
@@ -851,6 +858,26 @@ def database_management(self, database_management):
)
self._database_management = database_management
+ @property
+ def secure_connections(self):
+ """
+ Gets the secure_connections of this UpdateDbSystemDetails.
+
+ :return: The secure_connections of this UpdateDbSystemDetails.
+ :rtype: oci.mysql.models.SecureConnectionDetails
+ """
+ return self._secure_connections
+
+ @secure_connections.setter
+ def secure_connections(self, secure_connections):
+ """
+ Sets the secure_connections of this UpdateDbSystemDetails.
+
+ :param secure_connections: The secure_connections of this UpdateDbSystemDetails.
+ :type: oci.mysql.models.SecureConnectionDetails
+ """
+ self._secure_connections = secure_connections
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/service_endpoints.py b/src/oci/service_endpoints.py
index 8774f6962b..01986aadd1 100644
--- a/src/oci/service_endpoints.py
+++ b/src/oci/service_endpoints.py
@@ -21,6 +21,7 @@
"health_checks": "https://healthchecks.{domain}",
"identity": "https://identity.{domain}",
"kms_crypto": "https://kms.{domain}",
+ "kms_hsm_cluster": "https://kms.{domain}",
"kms_management": "https://kms.{domain}",
"kms_vault": "https://kms.{domain}",
"load_balancer": "https://iaas.{domain}",
diff --git a/src/oci/vault/models/__init__.py b/src/oci/vault/models/__init__.py
index 4402a81930..e8ae97639a 100644
--- a/src/oci/vault/models/__init__.py
+++ b/src/oci/vault/models/__init__.py
@@ -6,9 +6,12 @@
from __future__ import absolute_import
+from .adb_target_system_details import AdbTargetSystemDetails
from .base64_secret_content_details import Base64SecretContentDetails
from .change_secret_compartment_details import ChangeSecretCompartmentDetails
from .create_secret_details import CreateSecretDetails
+from .function_target_system_details import FunctionTargetSystemDetails
+from .rotation_config import RotationConfig
from .schedule_secret_deletion_details import ScheduleSecretDeletionDetails
from .schedule_secret_version_deletion_details import ScheduleSecretVersionDeletionDetails
from .secret import Secret
@@ -19,13 +22,17 @@
from .secret_summary import SecretSummary
from .secret_version import SecretVersion
from .secret_version_summary import SecretVersionSummary
+from .target_system_details import TargetSystemDetails
from .update_secret_details import UpdateSecretDetails
# Maps type names to classes for vault services.
vault_type_mapping = {
+ "AdbTargetSystemDetails": AdbTargetSystemDetails,
"Base64SecretContentDetails": Base64SecretContentDetails,
"ChangeSecretCompartmentDetails": ChangeSecretCompartmentDetails,
"CreateSecretDetails": CreateSecretDetails,
+ "FunctionTargetSystemDetails": FunctionTargetSystemDetails,
+ "RotationConfig": RotationConfig,
"ScheduleSecretDeletionDetails": ScheduleSecretDeletionDetails,
"ScheduleSecretVersionDeletionDetails": ScheduleSecretVersionDeletionDetails,
"Secret": Secret,
@@ -36,5 +43,6 @@
"SecretSummary": SecretSummary,
"SecretVersion": SecretVersion,
"SecretVersionSummary": SecretVersionSummary,
+ "TargetSystemDetails": TargetSystemDetails,
"UpdateSecretDetails": UpdateSecretDetails
}
diff --git a/src/oci/vault/models/adb_target_system_details.py b/src/oci/vault/models/adb_target_system_details.py
new file mode 100644
index 0000000000..efd8587199
--- /dev/null
+++ b/src/oci/vault/models/adb_target_system_details.py
@@ -0,0 +1,82 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180608
+
+from .target_system_details import TargetSystemDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class AdbTargetSystemDetails(TargetSystemDetails):
+ """
+ Target System type and id for an autonomous database target system
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new AdbTargetSystemDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.vault.models.AdbTargetSystemDetails.target_system_type` attribute
+ of this class is ``ADB`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param target_system_type:
+ The value to assign to the target_system_type property of this AdbTargetSystemDetails.
+ Allowed values for this property are: "ADB", "FUNCTION"
+ :type target_system_type: str
+
+ :param adb_id:
+ The value to assign to the adb_id property of this AdbTargetSystemDetails.
+ :type adb_id: str
+
+ """
+ self.swagger_types = {
+ 'target_system_type': 'str',
+ 'adb_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'target_system_type': 'targetSystemType',
+ 'adb_id': 'adbId'
+ }
+
+ self._target_system_type = None
+ self._adb_id = None
+ self._target_system_type = 'ADB'
+
+ @property
+ def adb_id(self):
+ """
+ **[Required]** Gets the adb_id of this AdbTargetSystemDetails.
+ The unique identifier (OCID) for the autonomous database that Vault Secret connects to.
+
+
+ :return: The adb_id of this AdbTargetSystemDetails.
+ :rtype: str
+ """
+ return self._adb_id
+
+ @adb_id.setter
+ def adb_id(self, adb_id):
+ """
+ Sets the adb_id of this AdbTargetSystemDetails.
+ The unique identifier (OCID) for the autonomous database that Vault Secret connects to.
+
+
+ :param adb_id: The adb_id of this AdbTargetSystemDetails.
+ :type: str
+ """
+ self._adb_id = adb_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/vault/models/create_secret_details.py b/src/oci/vault/models/create_secret_details.py
index 60d88d7ccd..5101188747 100644
--- a/src/oci/vault/models/create_secret_details.py
+++ b/src/oci/vault/models/create_secret_details.py
@@ -48,6 +48,10 @@ def __init__(self, **kwargs):
The value to assign to the secret_content property of this CreateSecretDetails.
:type secret_content: oci.vault.models.SecretContentDetails
+ :param rotation_config:
+ The value to assign to the rotation_config property of this CreateSecretDetails.
+ :type rotation_config: oci.vault.models.RotationConfig
+
:param secret_name:
The value to assign to the secret_name property of this CreateSecretDetails.
:type secret_name: str
@@ -69,6 +73,7 @@ def __init__(self, **kwargs):
'key_id': 'str',
'metadata': 'dict(str, object)',
'secret_content': 'SecretContentDetails',
+ 'rotation_config': 'RotationConfig',
'secret_name': 'str',
'secret_rules': 'list[SecretRule]',
'vault_id': 'str'
@@ -82,6 +87,7 @@ def __init__(self, **kwargs):
'key_id': 'keyId',
'metadata': 'metadata',
'secret_content': 'secretContent',
+ 'rotation_config': 'rotationConfig',
'secret_name': 'secretName',
'secret_rules': 'secretRules',
'vault_id': 'vaultId'
@@ -94,6 +100,7 @@ def __init__(self, **kwargs):
self._key_id = None
self._metadata = None
self._secret_content = None
+ self._rotation_config = None
self._secret_name = None
self._secret_rules = None
self._vault_id = None
@@ -265,7 +272,7 @@ def metadata(self, metadata):
@property
def secret_content(self):
"""
- **[Required]** Gets the secret_content of this CreateSecretDetails.
+ Gets the secret_content of this CreateSecretDetails.
:return: The secret_content of this CreateSecretDetails.
:rtype: oci.vault.models.SecretContentDetails
@@ -282,6 +289,26 @@ def secret_content(self, secret_content):
"""
self._secret_content = secret_content
+ @property
+ def rotation_config(self):
+ """
+ Gets the rotation_config of this CreateSecretDetails.
+
+ :return: The rotation_config of this CreateSecretDetails.
+ :rtype: oci.vault.models.RotationConfig
+ """
+ return self._rotation_config
+
+ @rotation_config.setter
+ def rotation_config(self, rotation_config):
+ """
+ Sets the rotation_config of this CreateSecretDetails.
+
+ :param rotation_config: The rotation_config of this CreateSecretDetails.
+ :type: oci.vault.models.RotationConfig
+ """
+ self._rotation_config = rotation_config
+
@property
def secret_name(self):
"""
diff --git a/src/oci/vault/models/function_target_system_details.py b/src/oci/vault/models/function_target_system_details.py
new file mode 100644
index 0000000000..d343306986
--- /dev/null
+++ b/src/oci/vault/models/function_target_system_details.py
@@ -0,0 +1,82 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180608
+
+from .target_system_details import TargetSystemDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class FunctionTargetSystemDetails(TargetSystemDetails):
+ """
+ Details of the OCI function that vault secret connects to.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new FunctionTargetSystemDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.vault.models.FunctionTargetSystemDetails.target_system_type` attribute
+ of this class is ``FUNCTION`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param target_system_type:
+ The value to assign to the target_system_type property of this FunctionTargetSystemDetails.
+ Allowed values for this property are: "ADB", "FUNCTION"
+ :type target_system_type: str
+
+ :param function_id:
+ The value to assign to the function_id property of this FunctionTargetSystemDetails.
+ :type function_id: str
+
+ """
+ self.swagger_types = {
+ 'target_system_type': 'str',
+ 'function_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'target_system_type': 'targetSystemType',
+ 'function_id': 'functionId'
+ }
+
+ self._target_system_type = None
+ self._function_id = None
+ self._target_system_type = 'FUNCTION'
+
+ @property
+ def function_id(self):
+ """
+ **[Required]** Gets the function_id of this FunctionTargetSystemDetails.
+ The unique identifier (OCID) of the OCI Functions that vault secret connects to.
+
+
+ :return: The function_id of this FunctionTargetSystemDetails.
+ :rtype: str
+ """
+ return self._function_id
+
+ @function_id.setter
+ def function_id(self, function_id):
+ """
+ Sets the function_id of this FunctionTargetSystemDetails.
+ The unique identifier (OCID) of the OCI Functions that vault secret connects to.
+
+
+ :param function_id: The function_id of this FunctionTargetSystemDetails.
+ :type: str
+ """
+ self._function_id = function_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/vault/models/rotation_config.py b/src/oci/vault/models/rotation_config.py
new file mode 100644
index 0000000000..4e61bcc518
--- /dev/null
+++ b/src/oci/vault/models/rotation_config.py
@@ -0,0 +1,134 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180608
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class RotationConfig(object):
+ """
+ Defines the frequency of the rotation and the information about the target system
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new RotationConfig object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param rotation_interval:
+ The value to assign to the rotation_interval property of this RotationConfig.
+ :type rotation_interval: str
+
+ :param target_system_details:
+ The value to assign to the target_system_details property of this RotationConfig.
+ :type target_system_details: oci.vault.models.TargetSystemDetails
+
+ :param is_scheduled_rotation_enabled:
+ The value to assign to the is_scheduled_rotation_enabled property of this RotationConfig.
+ :type is_scheduled_rotation_enabled: bool
+
+ """
+ self.swagger_types = {
+ 'rotation_interval': 'str',
+ 'target_system_details': 'TargetSystemDetails',
+ 'is_scheduled_rotation_enabled': 'bool'
+ }
+
+ self.attribute_map = {
+ 'rotation_interval': 'rotationInterval',
+ 'target_system_details': 'targetSystemDetails',
+ 'is_scheduled_rotation_enabled': 'isScheduledRotationEnabled'
+ }
+
+ self._rotation_interval = None
+ self._target_system_details = None
+ self._is_scheduled_rotation_enabled = None
+
+ @property
+ def rotation_interval(self):
+ """
+ Gets the rotation_interval of this RotationConfig.
+ The time interval that indicates the frequency for rotating secret data, as described in ISO 8601 format.
+ The minimum value is 1 day and maximum value is 360 days.
+ For example, if you want to set the time interval for rotating a secret data as 30 days, the duration is expressed as \"P30D.\"
+
+
+ :return: The rotation_interval of this RotationConfig.
+ :rtype: str
+ """
+ return self._rotation_interval
+
+ @rotation_interval.setter
+ def rotation_interval(self, rotation_interval):
+ """
+ Sets the rotation_interval of this RotationConfig.
+ The time interval that indicates the frequency for rotating secret data, as described in ISO 8601 format.
+ The minimum value is 1 day and maximum value is 360 days.
+ For example, if you want to set the time interval for rotating a secret data as 30 days, the duration is expressed as \"P30D.\"
+
+
+ :param rotation_interval: The rotation_interval of this RotationConfig.
+ :type: str
+ """
+ self._rotation_interval = rotation_interval
+
+ @property
+ def target_system_details(self):
+ """
+ **[Required]** Gets the target_system_details of this RotationConfig.
+
+ :return: The target_system_details of this RotationConfig.
+ :rtype: oci.vault.models.TargetSystemDetails
+ """
+ return self._target_system_details
+
+ @target_system_details.setter
+ def target_system_details(self, target_system_details):
+ """
+ Sets the target_system_details of this RotationConfig.
+
+ :param target_system_details: The target_system_details of this RotationConfig.
+ :type: oci.vault.models.TargetSystemDetails
+ """
+ self._target_system_details = target_system_details
+
+ @property
+ def is_scheduled_rotation_enabled(self):
+ """
+ Gets the is_scheduled_rotation_enabled of this RotationConfig.
+ Enables auto rotation, when set to true rotationInterval must be set.
+
+
+ :return: The is_scheduled_rotation_enabled of this RotationConfig.
+ :rtype: bool
+ """
+ return self._is_scheduled_rotation_enabled
+
+ @is_scheduled_rotation_enabled.setter
+ def is_scheduled_rotation_enabled(self, is_scheduled_rotation_enabled):
+ """
+ Sets the is_scheduled_rotation_enabled of this RotationConfig.
+ Enables auto rotation, when set to true rotationInterval must be set.
+
+
+ :param is_scheduled_rotation_enabled: The is_scheduled_rotation_enabled of this RotationConfig.
+ :type: bool
+ """
+ self._is_scheduled_rotation_enabled = is_scheduled_rotation_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/vault/models/secret.py b/src/oci/vault/models/secret.py
index f93f353941..6f63b24bde 100644
--- a/src/oci/vault/models/secret.py
+++ b/src/oci/vault/models/secret.py
@@ -51,6 +51,22 @@ class Secret(object):
#: This constant has a value of "FAILED"
LIFECYCLE_STATE_FAILED = "FAILED"
+ #: A constant which can be used with the rotation_status property of a Secret.
+ #: This constant has a value of "IN_PROGRESS"
+ ROTATION_STATUS_IN_PROGRESS = "IN_PROGRESS"
+
+ #: A constant which can be used with the rotation_status property of a Secret.
+ #: This constant has a value of "SCHEDULED"
+ ROTATION_STATUS_SCHEDULED = "SCHEDULED"
+
+ #: A constant which can be used with the rotation_status property of a Secret.
+ #: This constant has a value of "NOT_ENABLED"
+ ROTATION_STATUS_NOT_ENABLED = "NOT_ENABLED"
+
+ #: A constant which can be used with the rotation_status property of a Secret.
+ #: This constant has a value of "CANCELLING"
+ ROTATION_STATUS_CANCELLING = "CANCELLING"
+
def __init__(self, **kwargs):
"""
Initializes a new Secret object with values from keyword arguments.
@@ -98,6 +114,24 @@ def __init__(self, **kwargs):
The value to assign to the metadata property of this Secret.
:type metadata: dict(str, object)
+ :param rotation_config:
+ The value to assign to the rotation_config property of this Secret.
+ :type rotation_config: oci.vault.models.RotationConfig
+
+ :param rotation_status:
+ The value to assign to the rotation_status property of this Secret.
+ Allowed values for this property are: "IN_PROGRESS", "SCHEDULED", "NOT_ENABLED", "CANCELLING", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type rotation_status: str
+
+ :param last_rotation_time:
+ The value to assign to the last_rotation_time property of this Secret.
+ :type last_rotation_time: datetime
+
+ :param next_rotation_time:
+ The value to assign to the next_rotation_time property of this Secret.
+ :type next_rotation_time: datetime
+
:param secret_name:
The value to assign to the secret_name property of this Secret.
:type secret_name: str
@@ -134,6 +168,10 @@ def __init__(self, **kwargs):
'lifecycle_details': 'str',
'lifecycle_state': 'str',
'metadata': 'dict(str, object)',
+ 'rotation_config': 'RotationConfig',
+ 'rotation_status': 'str',
+ 'last_rotation_time': 'datetime',
+ 'next_rotation_time': 'datetime',
'secret_name': 'str',
'secret_rules': 'list[SecretRule]',
'time_created': 'datetime',
@@ -153,6 +191,10 @@ def __init__(self, **kwargs):
'lifecycle_details': 'lifecycleDetails',
'lifecycle_state': 'lifecycleState',
'metadata': 'metadata',
+ 'rotation_config': 'rotationConfig',
+ 'rotation_status': 'rotationStatus',
+ 'last_rotation_time': 'lastRotationTime',
+ 'next_rotation_time': 'nextRotationTime',
'secret_name': 'secretName',
'secret_rules': 'secretRules',
'time_created': 'timeCreated',
@@ -171,6 +213,10 @@ def __init__(self, **kwargs):
self._lifecycle_details = None
self._lifecycle_state = None
self._metadata = None
+ self._rotation_config = None
+ self._rotation_status = None
+ self._last_rotation_time = None
+ self._next_rotation_time = None
self._secret_name = None
self._secret_rules = None
self._time_created = None
@@ -444,6 +490,116 @@ def metadata(self, metadata):
"""
self._metadata = metadata
+ @property
+ def rotation_config(self):
+ """
+ Gets the rotation_config of this Secret.
+
+ :return: The rotation_config of this Secret.
+ :rtype: oci.vault.models.RotationConfig
+ """
+ return self._rotation_config
+
+ @rotation_config.setter
+ def rotation_config(self, rotation_config):
+ """
+ Sets the rotation_config of this Secret.
+
+ :param rotation_config: The rotation_config of this Secret.
+ :type: oci.vault.models.RotationConfig
+ """
+ self._rotation_config = rotation_config
+
+ @property
+ def rotation_status(self):
+ """
+ Gets the rotation_status of this Secret.
+ Additional information about the status of the secret rotation
+
+ Allowed values for this property are: "IN_PROGRESS", "SCHEDULED", "NOT_ENABLED", "CANCELLING", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The rotation_status of this Secret.
+ :rtype: str
+ """
+ return self._rotation_status
+
+ @rotation_status.setter
+ def rotation_status(self, rotation_status):
+ """
+ Sets the rotation_status of this Secret.
+ Additional information about the status of the secret rotation
+
+
+ :param rotation_status: The rotation_status of this Secret.
+ :type: str
+ """
+ allowed_values = ["IN_PROGRESS", "SCHEDULED", "NOT_ENABLED", "CANCELLING"]
+ if not value_allowed_none_or_none_sentinel(rotation_status, allowed_values):
+ rotation_status = 'UNKNOWN_ENUM_VALUE'
+ self._rotation_status = rotation_status
+
+ @property
+ def last_rotation_time(self):
+ """
+ Gets the last_rotation_time of this Secret.
+ A property indicating when the secret was last rotated successfully, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The last_rotation_time of this Secret.
+ :rtype: datetime
+ """
+ return self._last_rotation_time
+
+ @last_rotation_time.setter
+ def last_rotation_time(self, last_rotation_time):
+ """
+ Sets the last_rotation_time of this Secret.
+ A property indicating when the secret was last rotated successfully, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param last_rotation_time: The last_rotation_time of this Secret.
+ :type: datetime
+ """
+ self._last_rotation_time = last_rotation_time
+
+ @property
+ def next_rotation_time(self):
+ """
+ Gets the next_rotation_time of this Secret.
+ A property indicating when the secret is scheduled to be rotated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The next_rotation_time of this Secret.
+ :rtype: datetime
+ """
+ return self._next_rotation_time
+
+ @next_rotation_time.setter
+ def next_rotation_time(self, next_rotation_time):
+ """
+ Sets the next_rotation_time of this Secret.
+ A property indicating when the secret is scheduled to be rotated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param next_rotation_time: The next_rotation_time of this Secret.
+ :type: datetime
+ """
+ self._next_rotation_time = next_rotation_time
+
@property
def secret_name(self):
"""
diff --git a/src/oci/vault/models/secret_summary.py b/src/oci/vault/models/secret_summary.py
index 5921b23e34..cba92e8aa4 100644
--- a/src/oci/vault/models/secret_summary.py
+++ b/src/oci/vault/models/secret_summary.py
@@ -72,6 +72,10 @@ def __init__(self, **kwargs):
The value to assign to the freeform_tags property of this SecretSummary.
:type freeform_tags: dict(str, str)
+ :param system_tags:
+ The value to assign to the system_tags property of this SecretSummary.
+ :type system_tags: dict(str, dict(str, object))
+
:param key_id:
The value to assign to the key_id property of this SecretSummary.
:type key_id: str
@@ -90,6 +94,22 @@ def __init__(self, **kwargs):
Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
:type lifecycle_state: str
+ :param rotation_config:
+ The value to assign to the rotation_config property of this SecretSummary.
+ :type rotation_config: oci.vault.models.RotationConfig
+
+ :param rotation_status:
+ The value to assign to the rotation_status property of this SecretSummary.
+ :type rotation_status: str
+
+ :param last_rotation_time:
+ The value to assign to the last_rotation_time property of this SecretSummary.
+ :type last_rotation_time: datetime
+
+ :param next_rotation_time:
+ The value to assign to the next_rotation_time property of this SecretSummary.
+ :type next_rotation_time: datetime
+
:param secret_name:
The value to assign to the secret_name property of this SecretSummary.
:type secret_name: str
@@ -116,10 +136,15 @@ def __init__(self, **kwargs):
'defined_tags': 'dict(str, dict(str, object))',
'description': 'str',
'freeform_tags': 'dict(str, str)',
+ 'system_tags': 'dict(str, dict(str, object))',
'key_id': 'str',
'id': 'str',
'lifecycle_details': 'str',
'lifecycle_state': 'str',
+ 'rotation_config': 'RotationConfig',
+ 'rotation_status': 'str',
+ 'last_rotation_time': 'datetime',
+ 'next_rotation_time': 'datetime',
'secret_name': 'str',
'time_created': 'datetime',
'time_of_current_version_expiry': 'datetime',
@@ -132,10 +157,15 @@ def __init__(self, **kwargs):
'defined_tags': 'definedTags',
'description': 'description',
'freeform_tags': 'freeformTags',
+ 'system_tags': 'systemTags',
'key_id': 'keyId',
'id': 'id',
'lifecycle_details': 'lifecycleDetails',
'lifecycle_state': 'lifecycleState',
+ 'rotation_config': 'rotationConfig',
+ 'rotation_status': 'rotationStatus',
+ 'last_rotation_time': 'lastRotationTime',
+ 'next_rotation_time': 'nextRotationTime',
'secret_name': 'secretName',
'time_created': 'timeCreated',
'time_of_current_version_expiry': 'timeOfCurrentVersionExpiry',
@@ -147,10 +177,15 @@ def __init__(self, **kwargs):
self._defined_tags = None
self._description = None
self._freeform_tags = None
+ self._system_tags = None
self._key_id = None
self._id = None
self._lifecycle_details = None
self._lifecycle_state = None
+ self._rotation_config = None
+ self._rotation_status = None
+ self._last_rotation_time = None
+ self._next_rotation_time = None
self._secret_name = None
self._time_created = None
self._time_of_current_version_expiry = None
@@ -269,6 +304,34 @@ def freeform_tags(self, freeform_tags):
"""
self._freeform_tags = freeform_tags
+ @property
+ def system_tags(self):
+ """
+ Gets the system_tags of this SecretSummary.
+ 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 SecretSummary.
+ :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 SecretSummary.
+ 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 SecretSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._system_tags = system_tags
+
@property
def key_id(self):
"""
@@ -371,6 +434,110 @@ def lifecycle_state(self, lifecycle_state):
lifecycle_state = 'UNKNOWN_ENUM_VALUE'
self._lifecycle_state = lifecycle_state
+ @property
+ def rotation_config(self):
+ """
+ Gets the rotation_config of this SecretSummary.
+
+ :return: The rotation_config of this SecretSummary.
+ :rtype: oci.vault.models.RotationConfig
+ """
+ return self._rotation_config
+
+ @rotation_config.setter
+ def rotation_config(self, rotation_config):
+ """
+ Sets the rotation_config of this SecretSummary.
+
+ :param rotation_config: The rotation_config of this SecretSummary.
+ :type: oci.vault.models.RotationConfig
+ """
+ self._rotation_config = rotation_config
+
+ @property
+ def rotation_status(self):
+ """
+ Gets the rotation_status of this SecretSummary.
+ Additional information about the status of the secret rotation
+
+
+ :return: The rotation_status of this SecretSummary.
+ :rtype: str
+ """
+ return self._rotation_status
+
+ @rotation_status.setter
+ def rotation_status(self, rotation_status):
+ """
+ Sets the rotation_status of this SecretSummary.
+ Additional information about the status of the secret rotation
+
+
+ :param rotation_status: The rotation_status of this SecretSummary.
+ :type: str
+ """
+ self._rotation_status = rotation_status
+
+ @property
+ def last_rotation_time(self):
+ """
+ Gets the last_rotation_time of this SecretSummary.
+ A property indicating when the secret was last rotated successfully, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The last_rotation_time of this SecretSummary.
+ :rtype: datetime
+ """
+ return self._last_rotation_time
+
+ @last_rotation_time.setter
+ def last_rotation_time(self, last_rotation_time):
+ """
+ Sets the last_rotation_time of this SecretSummary.
+ A property indicating when the secret was last rotated successfully, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param last_rotation_time: The last_rotation_time of this SecretSummary.
+ :type: datetime
+ """
+ self._last_rotation_time = last_rotation_time
+
+ @property
+ def next_rotation_time(self):
+ """
+ Gets the next_rotation_time of this SecretSummary.
+ A property indicating when the secret is scheduled to be rotated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The next_rotation_time of this SecretSummary.
+ :rtype: datetime
+ """
+ return self._next_rotation_time
+
+ @next_rotation_time.setter
+ def next_rotation_time(self, next_rotation_time):
+ """
+ Sets the next_rotation_time of this SecretSummary.
+ A property indicating when the secret is scheduled to be rotated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2019-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param next_rotation_time: The next_rotation_time of this SecretSummary.
+ :type: datetime
+ """
+ self._next_rotation_time = next_rotation_time
+
@property
def secret_name(self):
"""
diff --git a/src/oci/vault/models/secret_version_summary.py b/src/oci/vault/models/secret_version_summary.py
index dfc5425c00..61a7767fff 100644
--- a/src/oci/vault/models/secret_version_summary.py
+++ b/src/oci/vault/models/secret_version_summary.py
@@ -80,6 +80,10 @@ def __init__(self, **kwargs):
The value to assign to the version_number property of this SecretVersionSummary.
:type version_number: int
+ :param system_tags:
+ The value to assign to the system_tags property of this SecretVersionSummary.
+ :type system_tags: dict(str, dict(str, object))
+
"""
self.swagger_types = {
'content_type': 'str',
@@ -89,7 +93,8 @@ def __init__(self, **kwargs):
'time_created': 'datetime',
'time_of_deletion': 'datetime',
'time_of_expiry': 'datetime',
- 'version_number': 'int'
+ 'version_number': 'int',
+ 'system_tags': 'dict(str, dict(str, object))'
}
self.attribute_map = {
@@ -100,7 +105,8 @@ def __init__(self, **kwargs):
'time_created': 'timeCreated',
'time_of_deletion': 'timeOfDeletion',
'time_of_expiry': 'timeOfExpiry',
- 'version_number': 'versionNumber'
+ 'version_number': 'versionNumber',
+ 'system_tags': 'systemTags'
}
self._content_type = None
@@ -111,6 +117,7 @@ def __init__(self, **kwargs):
self._time_of_deletion = None
self._time_of_expiry = None
self._version_number = None
+ self._system_tags = None
@property
def content_type(self):
@@ -344,6 +351,34 @@ def version_number(self, version_number):
"""
self._version_number = version_number
+ @property
+ def system_tags(self):
+ """
+ Gets the system_tags of this SecretVersionSummary.
+ 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 SecretVersionSummary.
+ :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 SecretVersionSummary.
+ 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 SecretVersionSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._system_tags = system_tags
+
def __repr__(self):
return formatted_flat_dict(self)
diff --git a/src/oci/vault/models/target_system_details.py b/src/oci/vault/models/target_system_details.py
new file mode 100644
index 0000000000..c24f6c2ad4
--- /dev/null
+++ b/src/oci/vault/models/target_system_details.py
@@ -0,0 +1,109 @@
+# coding: utf-8
+# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
+# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
+
+# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180608
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class TargetSystemDetails(object):
+ """
+ The TargetSystemDetails provides the targetSystem type and type-specific connection metadata
+ """
+
+ #: A constant which can be used with the target_system_type property of a TargetSystemDetails.
+ #: This constant has a value of "ADB"
+ TARGET_SYSTEM_TYPE_ADB = "ADB"
+
+ #: A constant which can be used with the target_system_type property of a TargetSystemDetails.
+ #: This constant has a value of "FUNCTION"
+ TARGET_SYSTEM_TYPE_FUNCTION = "FUNCTION"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new TargetSystemDetails 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.vault.models.AdbTargetSystemDetails`
+ * :class:`~oci.vault.models.FunctionTargetSystemDetails`
+
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param target_system_type:
+ The value to assign to the target_system_type property of this TargetSystemDetails.
+ Allowed values for this property are: "ADB", "FUNCTION", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type target_system_type: str
+
+ """
+ self.swagger_types = {
+ 'target_system_type': 'str'
+ }
+
+ self.attribute_map = {
+ 'target_system_type': 'targetSystemType'
+ }
+
+ self._target_system_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['targetSystemType']
+
+ if type == 'ADB':
+ return 'AdbTargetSystemDetails'
+
+ if type == 'FUNCTION':
+ return 'FunctionTargetSystemDetails'
+ else:
+ return 'TargetSystemDetails'
+
+ @property
+ def target_system_type(self):
+ """
+ **[Required]** Gets the target_system_type of this TargetSystemDetails.
+ Unique identifier of the target system that Vault Secret connects to.
+
+ Allowed values for this property are: "ADB", "FUNCTION", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The target_system_type of this TargetSystemDetails.
+ :rtype: str
+ """
+ return self._target_system_type
+
+ @target_system_type.setter
+ def target_system_type(self, target_system_type):
+ """
+ Sets the target_system_type of this TargetSystemDetails.
+ Unique identifier of the target system that Vault Secret connects to.
+
+
+ :param target_system_type: The target_system_type of this TargetSystemDetails.
+ :type: str
+ """
+ allowed_values = ["ADB", "FUNCTION"]
+ if not value_allowed_none_or_none_sentinel(target_system_type, allowed_values):
+ target_system_type = 'UNKNOWN_ENUM_VALUE'
+ self._target_system_type = target_system_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/vault/models/update_secret_details.py b/src/oci/vault/models/update_secret_details.py
index 400fb84ee5..1069c4c81e 100644
--- a/src/oci/vault/models/update_secret_details.py
+++ b/src/oci/vault/models/update_secret_details.py
@@ -44,6 +44,10 @@ def __init__(self, **kwargs):
The value to assign to the secret_content property of this UpdateSecretDetails.
:type secret_content: oci.vault.models.SecretContentDetails
+ :param rotation_config:
+ The value to assign to the rotation_config property of this UpdateSecretDetails.
+ :type rotation_config: oci.vault.models.RotationConfig
+
:param secret_rules:
The value to assign to the secret_rules property of this UpdateSecretDetails.
:type secret_rules: list[oci.vault.models.SecretRule]
@@ -56,6 +60,7 @@ def __init__(self, **kwargs):
'freeform_tags': 'dict(str, str)',
'metadata': 'dict(str, object)',
'secret_content': 'SecretContentDetails',
+ 'rotation_config': 'RotationConfig',
'secret_rules': 'list[SecretRule]'
}
@@ -66,6 +71,7 @@ def __init__(self, **kwargs):
'freeform_tags': 'freeformTags',
'metadata': 'metadata',
'secret_content': 'secretContent',
+ 'rotation_config': 'rotationConfig',
'secret_rules': 'secretRules'
}
@@ -75,6 +81,7 @@ def __init__(self, **kwargs):
self._freeform_tags = None
self._metadata = None
self._secret_content = None
+ self._rotation_config = None
self._secret_rules = None
@property
@@ -241,6 +248,26 @@ def secret_content(self, secret_content):
"""
self._secret_content = secret_content
+ @property
+ def rotation_config(self):
+ """
+ Gets the rotation_config of this UpdateSecretDetails.
+
+ :return: The rotation_config of this UpdateSecretDetails.
+ :rtype: oci.vault.models.RotationConfig
+ """
+ return self._rotation_config
+
+ @rotation_config.setter
+ def rotation_config(self, rotation_config):
+ """
+ Sets the rotation_config of this UpdateSecretDetails.
+
+ :param rotation_config: The rotation_config of this UpdateSecretDetails.
+ :type: oci.vault.models.RotationConfig
+ """
+ self._rotation_config = rotation_config
+
@property
def secret_rules(self):
"""
diff --git a/src/oci/vault/vaults_client.py b/src/oci/vault/vaults_client.py
index c822274338..6579055ef6 100644
--- a/src/oci/vault/vaults_client.py
+++ b/src/oci/vault/vaults_client.py
@@ -223,6 +223,115 @@ def cancel_secret_deletion(self, secret_id, **kwargs):
api_reference_link=api_reference_link,
required_arguments=required_arguments)
+ def cancel_secret_rotation(self, secret_id, **kwargs):
+ """
+ Cancels the ongoing secret rotation. The cancellation is contingent on how
+ far the rotation process has progressed. Upon cancelling a rotation, all
+ future rotations are also disabled.
+
+
+ :param str secret_id: (required)
+ The OCID of the secret.
+
+ :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 provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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
+
+ :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_secret_rotation API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['secretId']
+ resource_path = "/secrets/{secretId}/actions/cancelRotation"
+ method = "POST"
+ operation_name = "cancel_secret_rotation"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/secretmgmt/20180608/Secret/CancelSecretRotation"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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_secret_rotation got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "secretId": secret_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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
def cancel_secret_version_deletion(self, secret_id, secret_version_number, **kwargs):
"""
Cancels the scheduled deletion of a secret version.
@@ -1069,6 +1178,124 @@ def list_secrets(self, compartment_id, **kwargs):
api_reference_link=api_reference_link,
required_arguments=required_arguments)
+ def rotate_secret(self, secret_id, **kwargs):
+ """
+ API to force rotation of an existing secret in Vault and the specified target system; expects secret to have a valid Target System Details object
+
+
+ :param str secret_id: (required)
+ The OCID of the secret.
+
+ :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 provided, the returned request ID
+ will include this value. Otherwise, a random request ID will be
+ generated by the service.
+
+ :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 (e.g., 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
+
+ :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_secret API.
+ """
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
+ required_arguments = ['secretId']
+ resource_path = "/secrets/{secretId}/actions/rotate"
+ method = "POST"
+ operation_name = "rotate_secret"
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/secretmgmt/20180608/Secret/RotateSecret"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "allow_control_chars",
+ "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"rotate_secret got unknown kwargs: {extra_kwargs!r}")
+
+ path_params = {
+ "secretId": secret_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'),
+ 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'),
+ operation_name=operation_name,
+ api_reference_link=api_reference_link,
+ required_arguments=required_arguments)
+
def schedule_secret_deletion(self, secret_id, schedule_secret_deletion_details, **kwargs):
"""
Schedules the deletion of the specified secret. This sets the lifecycle state of the secret
diff --git a/src/oci/vault/vaults_client_composite_operations.py b/src/oci/vault/vaults_client_composite_operations.py
index c9413f542b..9daf36f59b 100644
--- a/src/oci/vault/vaults_client_composite_operations.py
+++ b/src/oci/vault/vaults_client_composite_operations.py
@@ -67,6 +67,42 @@ def create_secret_and_wait_for_state(self, create_secret_details, wait_for_state
except Exception as e:
raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+ def rotate_secret_and_wait_for_work_request(self, secret_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.vault.VaultsClient.rotate_secret` and waits for the oci.work_requests.models.WorkRequest
+ to enter the given state(s).
+
+ :param str secret_id: (required)
+ The OCID of the secret.
+
+ :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.vault.VaultsClient.rotate_secret`
+
+ :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_secret(secret_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 update_secret_and_wait_for_state(self, secret_id, update_secret_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
"""
Calls :py:func:`~oci.vault.VaultsClient.update_secret` and waits for the :py:class:`~oci.vault.models.Secret` acted upon
diff --git a/src/oci/version.py b/src/oci/version.py
index a033d53ea4..dcba4e7311 100644
--- a/src/oci/version.py
+++ b/src/oci/version.py
@@ -2,4 +2,4 @@
# Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.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.120.0"
+__version__ = "2.121.0"