From d2c2bfc0bb6df791a2283821e2b84e4aa437cb70 Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 1 Oct 2024 06:11:00 +0000 Subject: [PATCH] Releasing version 2.135.1 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 15 + docs/api/integration.rst | 2 + ....CrossRegionIntegrationInstanceDetails.rst | 11 + ...gration.models.DisasterRecoveryDetails.rst | 11 + docs/api/landing.rst | 4 + docs/api/security_attribute.rst | 41 + ...rity_attribute.SecurityAttributeClient.rst | 8 + ...rityAttributeClientCompositeOperations.rst | 8 + ....models.BaseSecurityAttributeValidator.rst | 11 + ...ls.BulkDeleteSecurityAttributesDetails.rst | 11 + ...rity_attribute.models.BulkEditResource.rst | 11 + ...odels.BulkEditSecurityAttributeDetails.rst | 11 + ...kEditSecurityAttributeOperationDetails.rst | 11 + ...tyAttributeNamespaceCompartmentDetails.rst | 11 + ....models.CreateSecurityAttributeDetails.rst | 11 + ...reateSecurityAttributeNamespaceDetails.rst | 11 + ...dels.DefaultSecurityAttributeValidator.rst | 11 + ....models.EnumSecurityAttributeValidator.rst | 11 + ...ity_attribute.models.SecurityAttribute.rst | 11 + ...bute.models.SecurityAttributeNamespace.rst | 11 + ...dels.SecurityAttributeNamespaceSummary.rst | 11 + ...ribute.models.SecurityAttributeSummary.rst | 11 + ...te.models.SecurityAttributeWorkRequest.rst | 11 + ...curityAttributeWorkRequestErrorSummary.rst | 11 + ...SecurityAttributeWorkRequestLogSummary.rst | 11 + ...ls.SecurityAttributeWorkRequestSummary.rst | 11 + ....models.UpdateSecurityAttributeDetails.rst | 11 + ...pdateSecurityAttributeNamespaceDetails.rst | 11 + ...y_attribute.models.WorkRequestResource.rst | 11 + docs/api/zpr.rst | 35 + docs/api/zpr/client/oci.zpr.ZprClient.rst | 8 + .../oci.zpr.ZprClientCompositeOperations.rst | 8 + .../models/oci.zpr.models.Configuration.rst | 11 + ....zpr.models.CreateConfigurationDetails.rst | 11 + .../oci.zpr.models.CreateZprPolicyDetails.rst | 11 + .../oci.zpr.models.UpdateZprPolicyDetails.rst | 11 + .../zpr/models/oci.zpr.models.WorkRequest.rst | 11 + .../oci.zpr.models.WorkRequestError.rst | 11 + ....zpr.models.WorkRequestErrorCollection.rst | 11 + .../oci.zpr.models.WorkRequestLogEntry.rst | 11 + ...r.models.WorkRequestLogEntryCollection.rst | 11 + .../oci.zpr.models.WorkRequestResource.rst | 11 + .../oci.zpr.models.WorkRequestSummary.rst | 11 + ...pr.models.WorkRequestSummaryCollection.rst | 11 + .../zpr/models/oci.zpr.models.ZprPolicy.rst | 11 + .../oci.zpr.models.ZprPolicyCollection.rst | 11 + .../oci.zpr.models.ZprPolicySummary.rst | 11 + src/oci/__init__.py | 4 +- src/oci/core/compute_client.py | 6 + ...k_security_group_security_rules_details.py | 8 +- .../models/create_service_gateway_details.py | 4 +- src/oci/core/models/create_vcn_details.py | 35 + src/oci/core/models/create_vnic_details.py | 35 + src/oci/core/models/instance.py | 82 + ...tance_configuration_create_vnic_details.py | 35 + ...e_configuration_launch_instance_details.py | 35 + .../core/models/launch_instance_details.py | 35 + src/oci/core/models/service_gateway.py | 8 +- .../core/models/update_instance_details.py | 35 + src/oci/core/models/update_vcn_details.py | 39 +- src/oci/core/models/update_vnic_details.py | 35 + src/oci/core/models/vcn.py | 35 + src/oci/core/models/vnic.py | 35 + src/oci/core/virtual_network_client.py | 9 +- .../database/models/autonomous_database.py | 39 + .../models/autonomous_database_summary.py | 39 + .../models/cloud_autonomous_vm_cluster.py | 39 + .../cloud_autonomous_vm_cluster_summary.py | 39 + src/oci/database/models/cloud_vm_cluster.py | 39 + .../models/cloud_vm_cluster_summary.py | 39 + .../models/create_autonomous_database_base.py | 39 + ...reate_autonomous_database_clone_details.py | 7 + .../create_autonomous_database_details.py | 7 + ...autonomous_database_from_backup_details.py | 7 + ..._database_from_backup_timestamp_details.py | 7 + ...ate_cloud_autonomous_vm_cluster_details.py | 43 +- .../models/create_cloud_vm_cluster_details.py | 39 + ..._autonomous_database_data_guard_details.py | 7 + ..._cross_region_disaster_recovery_details.py | 7 + ...cross_tenancy_disaster_recovery_details.py | 7 + ..._association_with_new_db_system_details.py | 39 + .../models/create_exadb_vm_cluster_details.py | 39 + ...hable_autonomous_database_clone_details.py | 7 + src/oci/database/models/db_system.py | 39 + src/oci/database/models/db_system_summary.py | 39 + src/oci/database/models/exadb_vm_cluster.py | 39 + .../models/exadb_vm_cluster_summary.py | 39 + .../database/models/launch_db_system_base.py | 39 + .../models/launch_db_system_details.py | 7 + .../launch_db_system_from_backup_details.py | 7 + .../launch_db_system_from_database_details.py | 7 + ...launch_db_system_from_db_system_details.py | 7 + .../undelete_autonomous_database_details.py | 7 + .../update_autonomous_database_details.py | 39 + ...ate_cloud_autonomous_vm_cluster_details.py | 43 +- .../models/update_cloud_vm_cluster_details.py | 39 + .../models/update_db_system_details.py | 39 + .../models/update_exadb_vm_cluster_details.py | 39 + .../integration_instance_client.py | 119 + ...on_instance_client_composite_operations.py | 39 + src/oci/integration/models/__init__.py | 4 + .../create_integration_instance_details.py | 31 + ...oss_region_integration_instance_details.py | 185 ++ .../models/disaster_recovery_details.py | 150 ++ .../models/integration_instance.py | 89 + .../models/integration_instance_summary.py | 62 + src/oci/integration/models/work_request.py | 10 +- .../models/work_request_summary.py | 10 +- .../models/create_load_balancer_details.py | 35 + src/oci/load_balancer/models/load_balancer.py | 35 + .../models/update_load_balancer_details.py | 39 +- .../create_network_load_balancer_details.py | 45 +- .../models/network_load_balancer.py | 41 + .../models/network_load_balancer_summary.py | 41 + .../update_network_load_balancer_details.py | 45 +- src/oci/regions_definitions.py | 8 + src/oci/security_attribute/__init__.py | 14 + src/oci/security_attribute/models/__init__.py | 54 + .../base_security_attribute_validator.py | 122 + ...bulk_delete_security_attributes_details.py | 72 + .../models/bulk_edit_resource.py | 134 + .../bulk_edit_security_attribute_details.py | 134 + ...it_security_attribute_operation_details.py | 147 ++ ...attribute_namespace_compartment_details.py | 72 + .../create_security_attribute_details.py | 132 + ...te_security_attribute_namespace_details.py | 216 ++ .../default_security_attribute_validator.py | 53 + .../enum_security_attribute_validator.py | 85 + .../models/security_attribute.py | 421 +++ .../models/security_attribute_namespace.py | 446 ++++ .../security_attribute_namespace_summary.py | 410 +++ .../models/security_attribute_summary.py | 361 +++ .../models/security_attribute_work_request.py | 387 +++ ...ty_attribute_work_request_error_summary.py | 136 + ...rity_attribute_work_request_log_summary.py | 105 + ...security_attribute_work_request_summary.py | 386 +++ .../update_security_attribute_details.py | 136 + ...te_security_attribute_namespace_details.py | 191 ++ .../models/work_request_resource.py | 197 ++ .../security_attribute_client.py | 2321 +++++++++++++++++ ...y_attribute_client_composite_operations.py | 265 ++ src/oci/version.py | 2 +- src/oci/zpr/__init__.py | 14 + src/oci/zpr/models/__init__.py | 42 + src/oci/zpr/models/configuration.py | 449 ++++ .../models/create_configuration_details.py | 189 ++ .../zpr/models/create_zpr_policy_details.py | 251 ++ .../zpr/models/update_zpr_policy_details.py | 185 ++ src/oci/zpr/models/work_request.py | 459 ++++ src/oci/zpr/models/work_request_error.py | 146 ++ .../models/work_request_error_collection.py | 72 + src/oci/zpr/models/work_request_log_entry.py | 109 + .../work_request_log_entry_collection.py | 72 + src/oci/zpr/models/work_request_resource.py | 238 ++ src/oci/zpr/models/work_request_summary.py | 457 ++++ .../models/work_request_summary_collection.py | 72 + src/oci/zpr/models/zpr_policy.py | 505 ++++ src/oci/zpr/models/zpr_policy_collection.py | 72 + src/oci/zpr/models/zpr_policy_summary.py | 463 ++++ src/oci/zpr/zpr_client.py | 2124 +++++++++++++++ .../zpr/zpr_client_composite_operations.py | 197 ++ 161 files changed, 16011 insertions(+), 32 deletions(-) create mode 100644 docs/api/integration/models/oci.integration.models.CrossRegionIntegrationInstanceDetails.rst create mode 100644 docs/api/integration/models/oci.integration.models.DisasterRecoveryDetails.rst create mode 100644 docs/api/security_attribute.rst create mode 100644 docs/api/security_attribute/client/oci.security_attribute.SecurityAttributeClient.rst create mode 100644 docs/api/security_attribute/client/oci.security_attribute.SecurityAttributeClientCompositeOperations.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.BaseSecurityAttributeValidator.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.BulkDeleteSecurityAttributesDetails.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.BulkEditResource.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.BulkEditSecurityAttributeDetails.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.BulkEditSecurityAttributeOperationDetails.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.ChangeSecurityAttributeNamespaceCompartmentDetails.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.CreateSecurityAttributeDetails.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.CreateSecurityAttributeNamespaceDetails.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.DefaultSecurityAttributeValidator.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.EnumSecurityAttributeValidator.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttribute.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeNamespace.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeNamespaceSummary.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeSummary.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequest.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestErrorSummary.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestLogSummary.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestSummary.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.UpdateSecurityAttributeDetails.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.UpdateSecurityAttributeNamespaceDetails.rst create mode 100644 docs/api/security_attribute/models/oci.security_attribute.models.WorkRequestResource.rst create mode 100644 docs/api/zpr.rst create mode 100644 docs/api/zpr/client/oci.zpr.ZprClient.rst create mode 100644 docs/api/zpr/client/oci.zpr.ZprClientCompositeOperations.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.Configuration.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.CreateConfigurationDetails.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.CreateZprPolicyDetails.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.UpdateZprPolicyDetails.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.WorkRequest.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.WorkRequestError.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.WorkRequestErrorCollection.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.WorkRequestLogEntry.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.WorkRequestLogEntryCollection.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.WorkRequestResource.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.WorkRequestSummary.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.WorkRequestSummaryCollection.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.ZprPolicy.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.ZprPolicyCollection.rst create mode 100644 docs/api/zpr/models/oci.zpr.models.ZprPolicySummary.rst create mode 100644 src/oci/integration/models/cross_region_integration_instance_details.py create mode 100644 src/oci/integration/models/disaster_recovery_details.py create mode 100644 src/oci/security_attribute/__init__.py create mode 100644 src/oci/security_attribute/models/__init__.py create mode 100644 src/oci/security_attribute/models/base_security_attribute_validator.py create mode 100644 src/oci/security_attribute/models/bulk_delete_security_attributes_details.py create mode 100644 src/oci/security_attribute/models/bulk_edit_resource.py create mode 100644 src/oci/security_attribute/models/bulk_edit_security_attribute_details.py create mode 100644 src/oci/security_attribute/models/bulk_edit_security_attribute_operation_details.py create mode 100644 src/oci/security_attribute/models/change_security_attribute_namespace_compartment_details.py create mode 100644 src/oci/security_attribute/models/create_security_attribute_details.py create mode 100644 src/oci/security_attribute/models/create_security_attribute_namespace_details.py create mode 100644 src/oci/security_attribute/models/default_security_attribute_validator.py create mode 100644 src/oci/security_attribute/models/enum_security_attribute_validator.py create mode 100644 src/oci/security_attribute/models/security_attribute.py create mode 100644 src/oci/security_attribute/models/security_attribute_namespace.py create mode 100644 src/oci/security_attribute/models/security_attribute_namespace_summary.py create mode 100644 src/oci/security_attribute/models/security_attribute_summary.py create mode 100644 src/oci/security_attribute/models/security_attribute_work_request.py create mode 100644 src/oci/security_attribute/models/security_attribute_work_request_error_summary.py create mode 100644 src/oci/security_attribute/models/security_attribute_work_request_log_summary.py create mode 100644 src/oci/security_attribute/models/security_attribute_work_request_summary.py create mode 100644 src/oci/security_attribute/models/update_security_attribute_details.py create mode 100644 src/oci/security_attribute/models/update_security_attribute_namespace_details.py create mode 100644 src/oci/security_attribute/models/work_request_resource.py create mode 100644 src/oci/security_attribute/security_attribute_client.py create mode 100644 src/oci/security_attribute/security_attribute_client_composite_operations.py create mode 100644 src/oci/zpr/__init__.py create mode 100644 src/oci/zpr/models/__init__.py create mode 100644 src/oci/zpr/models/configuration.py create mode 100644 src/oci/zpr/models/create_configuration_details.py create mode 100644 src/oci/zpr/models/create_zpr_policy_details.py create mode 100644 src/oci/zpr/models/update_zpr_policy_details.py create mode 100644 src/oci/zpr/models/work_request.py create mode 100644 src/oci/zpr/models/work_request_error.py create mode 100644 src/oci/zpr/models/work_request_error_collection.py create mode 100644 src/oci/zpr/models/work_request_log_entry.py create mode 100644 src/oci/zpr/models/work_request_log_entry_collection.py create mode 100644 src/oci/zpr/models/work_request_resource.py create mode 100644 src/oci/zpr/models/work_request_summary.py create mode 100644 src/oci/zpr/models/work_request_summary_collection.py create mode 100644 src/oci/zpr/models/zpr_policy.py create mode 100644 src/oci/zpr/models/zpr_policy_collection.py create mode 100644 src/oci/zpr/models/zpr_policy_summary.py create mode 100644 src/oci/zpr/zpr_client.py create mode 100644 src/oci/zpr/zpr_client_composite_operations.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 39f819989..fcd435ef6 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -3,6 +3,21 @@ Change Log All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.135.1 - 2024-10-01 +==================== + +Added +----- +* Support for calling Oracle Cloud Infrastructure services in the us-somerset-1 region +* Support for calling Oracle Cloud Infrastructure services in the us-thames-1 region +* Support for Security Attribute service +* Support for Zero Trust Packet Routing service +* Support for zero trust packet routing security attributes in the Database service +* Support for zero trust packet routing security attributes in the Networking service +* Support for zero trust packet routing security attributes in the Network Load Balancer service +* Support for disaster recovery failover in the Integration Cloud service + ==================== 2.135.0 - 2024-09-24 ==================== diff --git a/docs/api/integration.rst b/docs/api/integration.rst index 114e8d2ba..286e185e8 100644 --- a/docs/api/integration.rst +++ b/docs/api/integration.rst @@ -25,7 +25,9 @@ Integration oci.integration.models.ChangePrivateEndpointOutboundConnectionDetails oci.integration.models.CreateCustomEndpointDetails oci.integration.models.CreateIntegrationInstanceDetails + oci.integration.models.CrossRegionIntegrationInstanceDetails oci.integration.models.CustomEndpointDetails + oci.integration.models.DisasterRecoveryDetails oci.integration.models.ExtendDataRetentionDetails oci.integration.models.IdcsInfoDetails oci.integration.models.IntegrationInstance diff --git a/docs/api/integration/models/oci.integration.models.CrossRegionIntegrationInstanceDetails.rst b/docs/api/integration/models/oci.integration.models.CrossRegionIntegrationInstanceDetails.rst new file mode 100644 index 000000000..2bad93225 --- /dev/null +++ b/docs/api/integration/models/oci.integration.models.CrossRegionIntegrationInstanceDetails.rst @@ -0,0 +1,11 @@ +CrossRegionIntegrationInstanceDetails +===================================== + +.. currentmodule:: oci.integration.models + +.. autoclass:: CrossRegionIntegrationInstanceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/integration/models/oci.integration.models.DisasterRecoveryDetails.rst b/docs/api/integration/models/oci.integration.models.DisasterRecoveryDetails.rst new file mode 100644 index 000000000..bf5153ca3 --- /dev/null +++ b/docs/api/integration/models/oci.integration.models.DisasterRecoveryDetails.rst @@ -0,0 +1,11 @@ +DisasterRecoveryDetails +======================= + +.. currentmodule:: oci.integration.models + +.. autoclass:: DisasterRecoveryDetails + :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 f37b14e4c..235f5f8dc 100644 --- a/docs/api/landing.rst +++ b/docs/api/landing.rst @@ -203,6 +203,7 @@ API Reference * :doc:`Scheduled Job ` * :doc:`Sddc ` * :doc:`Secrets ` +* :doc:`Security Attribute ` * :doc:`Sender Invitation ` * :doc:`Service ` * :doc:`Service Catalog ` @@ -252,6 +253,7 @@ API Reference * :doc:`Work Requests ` * :doc:`Work Requests ` * :doc:`Work Requests ` +* :doc:`Zpr ` .. rubric:: Other Modules @@ -398,6 +400,7 @@ API Reference rover sch secrets + security_attribute service_catalog service_manager_proxy service_mesh @@ -416,6 +419,7 @@ API Reference waas waf work_requests + zpr config circuit_breaker exceptions diff --git a/docs/api/security_attribute.rst b/docs/api/security_attribute.rst new file mode 100644 index 000000000..5a9b0c5e2 --- /dev/null +++ b/docs/api/security_attribute.rst @@ -0,0 +1,41 @@ +Security Attribute +================== + +.. autosummary:: + :toctree: security_attribute/client + :nosignatures: + :template: autosummary/service_client.rst + + oci.security_attribute.SecurityAttributeClient + oci.security_attribute.SecurityAttributeClientCompositeOperations + +-------- + Models +-------- + +.. autosummary:: + :toctree: security_attribute/models + :nosignatures: + :template: autosummary/model_class.rst + + oci.security_attribute.models.BaseSecurityAttributeValidator + oci.security_attribute.models.BulkDeleteSecurityAttributesDetails + oci.security_attribute.models.BulkEditResource + oci.security_attribute.models.BulkEditSecurityAttributeDetails + oci.security_attribute.models.BulkEditSecurityAttributeOperationDetails + oci.security_attribute.models.ChangeSecurityAttributeNamespaceCompartmentDetails + oci.security_attribute.models.CreateSecurityAttributeDetails + oci.security_attribute.models.CreateSecurityAttributeNamespaceDetails + oci.security_attribute.models.DefaultSecurityAttributeValidator + oci.security_attribute.models.EnumSecurityAttributeValidator + oci.security_attribute.models.SecurityAttribute + oci.security_attribute.models.SecurityAttributeNamespace + oci.security_attribute.models.SecurityAttributeNamespaceSummary + oci.security_attribute.models.SecurityAttributeSummary + oci.security_attribute.models.SecurityAttributeWorkRequest + oci.security_attribute.models.SecurityAttributeWorkRequestErrorSummary + oci.security_attribute.models.SecurityAttributeWorkRequestLogSummary + oci.security_attribute.models.SecurityAttributeWorkRequestSummary + oci.security_attribute.models.UpdateSecurityAttributeDetails + oci.security_attribute.models.UpdateSecurityAttributeNamespaceDetails + oci.security_attribute.models.WorkRequestResource diff --git a/docs/api/security_attribute/client/oci.security_attribute.SecurityAttributeClient.rst b/docs/api/security_attribute/client/oci.security_attribute.SecurityAttributeClient.rst new file mode 100644 index 000000000..5adffbf81 --- /dev/null +++ b/docs/api/security_attribute/client/oci.security_attribute.SecurityAttributeClient.rst @@ -0,0 +1,8 @@ +SecurityAttributeClient +======================= + +.. currentmodule:: oci.security_attribute + +.. autoclass:: SecurityAttributeClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/security_attribute/client/oci.security_attribute.SecurityAttributeClientCompositeOperations.rst b/docs/api/security_attribute/client/oci.security_attribute.SecurityAttributeClientCompositeOperations.rst new file mode 100644 index 000000000..348725f2b --- /dev/null +++ b/docs/api/security_attribute/client/oci.security_attribute.SecurityAttributeClientCompositeOperations.rst @@ -0,0 +1,8 @@ +SecurityAttributeClientCompositeOperations +========================================== + +.. currentmodule:: oci.security_attribute + +.. autoclass:: SecurityAttributeClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.BaseSecurityAttributeValidator.rst b/docs/api/security_attribute/models/oci.security_attribute.models.BaseSecurityAttributeValidator.rst new file mode 100644 index 000000000..dcd9e64bc --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.BaseSecurityAttributeValidator.rst @@ -0,0 +1,11 @@ +BaseSecurityAttributeValidator +============================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: BaseSecurityAttributeValidator + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.BulkDeleteSecurityAttributesDetails.rst b/docs/api/security_attribute/models/oci.security_attribute.models.BulkDeleteSecurityAttributesDetails.rst new file mode 100644 index 000000000..288ea2c84 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.BulkDeleteSecurityAttributesDetails.rst @@ -0,0 +1,11 @@ +BulkDeleteSecurityAttributesDetails +=================================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: BulkDeleteSecurityAttributesDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.BulkEditResource.rst b/docs/api/security_attribute/models/oci.security_attribute.models.BulkEditResource.rst new file mode 100644 index 000000000..a95672081 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.BulkEditResource.rst @@ -0,0 +1,11 @@ +BulkEditResource +================ + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: BulkEditResource + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.BulkEditSecurityAttributeDetails.rst b/docs/api/security_attribute/models/oci.security_attribute.models.BulkEditSecurityAttributeDetails.rst new file mode 100644 index 000000000..3d29d05bc --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.BulkEditSecurityAttributeDetails.rst @@ -0,0 +1,11 @@ +BulkEditSecurityAttributeDetails +================================ + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: BulkEditSecurityAttributeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.BulkEditSecurityAttributeOperationDetails.rst b/docs/api/security_attribute/models/oci.security_attribute.models.BulkEditSecurityAttributeOperationDetails.rst new file mode 100644 index 000000000..05767b546 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.BulkEditSecurityAttributeOperationDetails.rst @@ -0,0 +1,11 @@ +BulkEditSecurityAttributeOperationDetails +========================================= + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: BulkEditSecurityAttributeOperationDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.ChangeSecurityAttributeNamespaceCompartmentDetails.rst b/docs/api/security_attribute/models/oci.security_attribute.models.ChangeSecurityAttributeNamespaceCompartmentDetails.rst new file mode 100644 index 000000000..91aa18bf9 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.ChangeSecurityAttributeNamespaceCompartmentDetails.rst @@ -0,0 +1,11 @@ +ChangeSecurityAttributeNamespaceCompartmentDetails +================================================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: ChangeSecurityAttributeNamespaceCompartmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.CreateSecurityAttributeDetails.rst b/docs/api/security_attribute/models/oci.security_attribute.models.CreateSecurityAttributeDetails.rst new file mode 100644 index 000000000..d593d1f33 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.CreateSecurityAttributeDetails.rst @@ -0,0 +1,11 @@ +CreateSecurityAttributeDetails +============================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: CreateSecurityAttributeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.CreateSecurityAttributeNamespaceDetails.rst b/docs/api/security_attribute/models/oci.security_attribute.models.CreateSecurityAttributeNamespaceDetails.rst new file mode 100644 index 000000000..ada7cc0ad --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.CreateSecurityAttributeNamespaceDetails.rst @@ -0,0 +1,11 @@ +CreateSecurityAttributeNamespaceDetails +======================================= + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: CreateSecurityAttributeNamespaceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.DefaultSecurityAttributeValidator.rst b/docs/api/security_attribute/models/oci.security_attribute.models.DefaultSecurityAttributeValidator.rst new file mode 100644 index 000000000..f882be399 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.DefaultSecurityAttributeValidator.rst @@ -0,0 +1,11 @@ +DefaultSecurityAttributeValidator +================================= + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: DefaultSecurityAttributeValidator + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.EnumSecurityAttributeValidator.rst b/docs/api/security_attribute/models/oci.security_attribute.models.EnumSecurityAttributeValidator.rst new file mode 100644 index 000000000..31c240d42 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.EnumSecurityAttributeValidator.rst @@ -0,0 +1,11 @@ +EnumSecurityAttributeValidator +============================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: EnumSecurityAttributeValidator + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttribute.rst b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttribute.rst new file mode 100644 index 000000000..54ff9ee8d --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttribute.rst @@ -0,0 +1,11 @@ +SecurityAttribute +================= + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: SecurityAttribute + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeNamespace.rst b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeNamespace.rst new file mode 100644 index 000000000..6eb73aa3c --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeNamespace.rst @@ -0,0 +1,11 @@ +SecurityAttributeNamespace +========================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: SecurityAttributeNamespace + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeNamespaceSummary.rst b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeNamespaceSummary.rst new file mode 100644 index 000000000..acb475fb0 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeNamespaceSummary.rst @@ -0,0 +1,11 @@ +SecurityAttributeNamespaceSummary +================================= + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: SecurityAttributeNamespaceSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeSummary.rst b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeSummary.rst new file mode 100644 index 000000000..a146772b9 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeSummary.rst @@ -0,0 +1,11 @@ +SecurityAttributeSummary +======================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: SecurityAttributeSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequest.rst b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequest.rst new file mode 100644 index 000000000..40bf5f1e3 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequest.rst @@ -0,0 +1,11 @@ +SecurityAttributeWorkRequest +============================ + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: SecurityAttributeWorkRequest + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestErrorSummary.rst b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestErrorSummary.rst new file mode 100644 index 000000000..61dac237f --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestErrorSummary.rst @@ -0,0 +1,11 @@ +SecurityAttributeWorkRequestErrorSummary +======================================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: SecurityAttributeWorkRequestErrorSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestLogSummary.rst b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestLogSummary.rst new file mode 100644 index 000000000..cb54a80e7 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestLogSummary.rst @@ -0,0 +1,11 @@ +SecurityAttributeWorkRequestLogSummary +====================================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: SecurityAttributeWorkRequestLogSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestSummary.rst b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestSummary.rst new file mode 100644 index 000000000..72d4fcd7d --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.SecurityAttributeWorkRequestSummary.rst @@ -0,0 +1,11 @@ +SecurityAttributeWorkRequestSummary +=================================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: SecurityAttributeWorkRequestSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.UpdateSecurityAttributeDetails.rst b/docs/api/security_attribute/models/oci.security_attribute.models.UpdateSecurityAttributeDetails.rst new file mode 100644 index 000000000..793957c08 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.UpdateSecurityAttributeDetails.rst @@ -0,0 +1,11 @@ +UpdateSecurityAttributeDetails +============================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: UpdateSecurityAttributeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.UpdateSecurityAttributeNamespaceDetails.rst b/docs/api/security_attribute/models/oci.security_attribute.models.UpdateSecurityAttributeNamespaceDetails.rst new file mode 100644 index 000000000..947aee3ec --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.UpdateSecurityAttributeNamespaceDetails.rst @@ -0,0 +1,11 @@ +UpdateSecurityAttributeNamespaceDetails +======================================= + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: UpdateSecurityAttributeNamespaceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/security_attribute/models/oci.security_attribute.models.WorkRequestResource.rst b/docs/api/security_attribute/models/oci.security_attribute.models.WorkRequestResource.rst new file mode 100644 index 000000000..85ab473d8 --- /dev/null +++ b/docs/api/security_attribute/models/oci.security_attribute.models.WorkRequestResource.rst @@ -0,0 +1,11 @@ +WorkRequestResource +=================== + +.. currentmodule:: oci.security_attribute.models + +.. autoclass:: WorkRequestResource + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr.rst b/docs/api/zpr.rst new file mode 100644 index 000000000..4d96f32ec --- /dev/null +++ b/docs/api/zpr.rst @@ -0,0 +1,35 @@ +Zpr +=== + +.. autosummary:: + :toctree: zpr/client + :nosignatures: + :template: autosummary/service_client.rst + + oci.zpr.ZprClient + oci.zpr.ZprClientCompositeOperations + +-------- + Models +-------- + +.. autosummary:: + :toctree: zpr/models + :nosignatures: + :template: autosummary/model_class.rst + + oci.zpr.models.Configuration + oci.zpr.models.CreateConfigurationDetails + oci.zpr.models.CreateZprPolicyDetails + oci.zpr.models.UpdateZprPolicyDetails + oci.zpr.models.WorkRequest + oci.zpr.models.WorkRequestError + oci.zpr.models.WorkRequestErrorCollection + oci.zpr.models.WorkRequestLogEntry + oci.zpr.models.WorkRequestLogEntryCollection + oci.zpr.models.WorkRequestResource + oci.zpr.models.WorkRequestSummary + oci.zpr.models.WorkRequestSummaryCollection + oci.zpr.models.ZprPolicy + oci.zpr.models.ZprPolicyCollection + oci.zpr.models.ZprPolicySummary diff --git a/docs/api/zpr/client/oci.zpr.ZprClient.rst b/docs/api/zpr/client/oci.zpr.ZprClient.rst new file mode 100644 index 000000000..0f081b288 --- /dev/null +++ b/docs/api/zpr/client/oci.zpr.ZprClient.rst @@ -0,0 +1,8 @@ +ZprClient +========= + +.. currentmodule:: oci.zpr + +.. autoclass:: ZprClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/zpr/client/oci.zpr.ZprClientCompositeOperations.rst b/docs/api/zpr/client/oci.zpr.ZprClientCompositeOperations.rst new file mode 100644 index 000000000..ea51c5408 --- /dev/null +++ b/docs/api/zpr/client/oci.zpr.ZprClientCompositeOperations.rst @@ -0,0 +1,8 @@ +ZprClientCompositeOperations +============================ + +.. currentmodule:: oci.zpr + +.. autoclass:: ZprClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.Configuration.rst b/docs/api/zpr/models/oci.zpr.models.Configuration.rst new file mode 100644 index 000000000..e1d241e5e --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.Configuration.rst @@ -0,0 +1,11 @@ +Configuration +============= + +.. currentmodule:: oci.zpr.models + +.. autoclass:: Configuration + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.CreateConfigurationDetails.rst b/docs/api/zpr/models/oci.zpr.models.CreateConfigurationDetails.rst new file mode 100644 index 000000000..2a93ce2da --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.CreateConfigurationDetails.rst @@ -0,0 +1,11 @@ +CreateConfigurationDetails +========================== + +.. currentmodule:: oci.zpr.models + +.. autoclass:: CreateConfigurationDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.CreateZprPolicyDetails.rst b/docs/api/zpr/models/oci.zpr.models.CreateZprPolicyDetails.rst new file mode 100644 index 000000000..abce2b8b1 --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.CreateZprPolicyDetails.rst @@ -0,0 +1,11 @@ +CreateZprPolicyDetails +====================== + +.. currentmodule:: oci.zpr.models + +.. autoclass:: CreateZprPolicyDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.UpdateZprPolicyDetails.rst b/docs/api/zpr/models/oci.zpr.models.UpdateZprPolicyDetails.rst new file mode 100644 index 000000000..0ce4f9353 --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.UpdateZprPolicyDetails.rst @@ -0,0 +1,11 @@ +UpdateZprPolicyDetails +====================== + +.. currentmodule:: oci.zpr.models + +.. autoclass:: UpdateZprPolicyDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.WorkRequest.rst b/docs/api/zpr/models/oci.zpr.models.WorkRequest.rst new file mode 100644 index 000000000..286b32a5f --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.WorkRequest.rst @@ -0,0 +1,11 @@ +WorkRequest +=========== + +.. currentmodule:: oci.zpr.models + +.. autoclass:: WorkRequest + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.WorkRequestError.rst b/docs/api/zpr/models/oci.zpr.models.WorkRequestError.rst new file mode 100644 index 000000000..04360f8cb --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.WorkRequestError.rst @@ -0,0 +1,11 @@ +WorkRequestError +================ + +.. currentmodule:: oci.zpr.models + +.. autoclass:: WorkRequestError + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.WorkRequestErrorCollection.rst b/docs/api/zpr/models/oci.zpr.models.WorkRequestErrorCollection.rst new file mode 100644 index 000000000..17d6f1250 --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.WorkRequestErrorCollection.rst @@ -0,0 +1,11 @@ +WorkRequestErrorCollection +========================== + +.. currentmodule:: oci.zpr.models + +.. autoclass:: WorkRequestErrorCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.WorkRequestLogEntry.rst b/docs/api/zpr/models/oci.zpr.models.WorkRequestLogEntry.rst new file mode 100644 index 000000000..48158985c --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.WorkRequestLogEntry.rst @@ -0,0 +1,11 @@ +WorkRequestLogEntry +=================== + +.. currentmodule:: oci.zpr.models + +.. autoclass:: WorkRequestLogEntry + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.WorkRequestLogEntryCollection.rst b/docs/api/zpr/models/oci.zpr.models.WorkRequestLogEntryCollection.rst new file mode 100644 index 000000000..d74e1efc8 --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.WorkRequestLogEntryCollection.rst @@ -0,0 +1,11 @@ +WorkRequestLogEntryCollection +============================= + +.. currentmodule:: oci.zpr.models + +.. autoclass:: WorkRequestLogEntryCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.WorkRequestResource.rst b/docs/api/zpr/models/oci.zpr.models.WorkRequestResource.rst new file mode 100644 index 000000000..2c5df5f9c --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.WorkRequestResource.rst @@ -0,0 +1,11 @@ +WorkRequestResource +=================== + +.. currentmodule:: oci.zpr.models + +.. autoclass:: WorkRequestResource + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.WorkRequestSummary.rst b/docs/api/zpr/models/oci.zpr.models.WorkRequestSummary.rst new file mode 100644 index 000000000..bfe462c26 --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.WorkRequestSummary.rst @@ -0,0 +1,11 @@ +WorkRequestSummary +================== + +.. currentmodule:: oci.zpr.models + +.. autoclass:: WorkRequestSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.WorkRequestSummaryCollection.rst b/docs/api/zpr/models/oci.zpr.models.WorkRequestSummaryCollection.rst new file mode 100644 index 000000000..fee879038 --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.WorkRequestSummaryCollection.rst @@ -0,0 +1,11 @@ +WorkRequestSummaryCollection +============================ + +.. currentmodule:: oci.zpr.models + +.. autoclass:: WorkRequestSummaryCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.ZprPolicy.rst b/docs/api/zpr/models/oci.zpr.models.ZprPolicy.rst new file mode 100644 index 000000000..632ebc282 --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.ZprPolicy.rst @@ -0,0 +1,11 @@ +ZprPolicy +========= + +.. currentmodule:: oci.zpr.models + +.. autoclass:: ZprPolicy + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.ZprPolicyCollection.rst b/docs/api/zpr/models/oci.zpr.models.ZprPolicyCollection.rst new file mode 100644 index 000000000..a5fa4046c --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.ZprPolicyCollection.rst @@ -0,0 +1,11 @@ +ZprPolicyCollection +=================== + +.. currentmodule:: oci.zpr.models + +.. autoclass:: ZprPolicyCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/zpr/models/oci.zpr.models.ZprPolicySummary.rst b/docs/api/zpr/models/oci.zpr.models.ZprPolicySummary.rst new file mode 100644 index 000000000..f1e7d3116 --- /dev/null +++ b/docs/api/zpr/models/oci.zpr.models.ZprPolicySummary.rst @@ -0,0 +1,11 @@ +ZprPolicySummary +================ + +.. currentmodule:: oci.zpr.models + +.. autoclass:: ZprPolicySummary + :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 f69fed018..3733b330b 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", "appmgmt_control", "artifacts", "audit", "autoscaling", "bastion", "bds", "blockchain", "budget", "capacity_management", "certificates", "certificates_management", "cims", "cloud_bridge", "cloud_guard", "cloud_migrations", "cluster_placement_groups", "compute_cloud_at_customer", "compute_instance_agent", "container_engine", "container_instances", "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", "delegate_access_control", "demand_signal", "desktops", "devops", "disaster_recovery", "dns", "dts", "em_warehouse", "email", "email_data_plane", "events", "file_storage", "fleet_apps_management", "fleet_software_update", "functions", "fusion_apps", "generative_ai", "generative_ai_agent", "generative_ai_agent_runtime", "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_private_offer", "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_scheduler", "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", "appmgmt_control", "artifacts", "audit", "autoscaling", "bastion", "bds", "blockchain", "budget", "capacity_management", "certificates", "certificates_management", "cims", "cloud_bridge", "cloud_guard", "cloud_migrations", "cluster_placement_groups", "compute_cloud_at_customer", "compute_instance_agent", "container_engine", "container_instances", "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", "delegate_access_control", "demand_signal", "desktops", "devops", "disaster_recovery", "dns", "dts", "em_warehouse", "email", "email_data_plane", "events", "file_storage", "fleet_apps_management", "fleet_software_update", "functions", "fusion_apps", "generative_ai", "generative_ai_agent", "generative_ai_agent_runtime", "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_private_offer", "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_scheduler", "resource_search", "rover", "sch", "secrets", "security_attribute", "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", "zpr" ] if sys.version_info >= (3, 7) and os.getenv("OCI_PYTHON_SDK_LAZY_IMPORTS_DISABLED", "False").lower() != "true": def __getattr__(x): @@ -30,4 +30,4 @@ def __getattr__(x): return importlib.import_module(__name__ + "." + x) raise AttributeError("module " + __name__ + " has no attribute" + x) else: - from . import access_governance_cp, adm, ai_anomaly_detection, ai_document, ai_language, ai_speech, ai_vision, analytics, announcements_service, apigateway, apm_config, apm_control_plane, apm_synthetics, apm_traces, appmgmt_control, artifacts, audit, autoscaling, bastion, bds, blockchain, budget, capacity_management, certificates, certificates_management, cims, cloud_bridge, cloud_guard, cloud_migrations, cluster_placement_groups, compute_cloud_at_customer, compute_instance_agent, container_engine, container_instances, 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, delegate_access_control, demand_signal, desktops, devops, disaster_recovery, dns, dts, em_warehouse, email, email_data_plane, events, file_storage, fleet_apps_management, fleet_software_update, functions, fusion_apps, generative_ai, generative_ai_agent, generative_ai_agent_runtime, 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_private_offer, 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_scheduler, 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, appmgmt_control, artifacts, audit, autoscaling, bastion, bds, blockchain, budget, capacity_management, certificates, certificates_management, cims, cloud_bridge, cloud_guard, cloud_migrations, cluster_placement_groups, compute_cloud_at_customer, compute_instance_agent, container_engine, container_instances, 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, delegate_access_control, demand_signal, desktops, devops, disaster_recovery, dns, dts, em_warehouse, email, email_data_plane, events, file_storage, fleet_apps_management, fleet_software_update, functions, fusion_apps, generative_ai, generative_ai_agent, generative_ai_agent_runtime, 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_private_offer, 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_scheduler, resource_search, rover, sch, secrets, security_attribute, 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, zpr diff --git a/src/oci/core/compute_client.py b/src/oci/core/compute_client.py index d29d75147..7a6b34c67 100644 --- a/src/oci/core/compute_client.py +++ b/src/oci/core/compute_client.py @@ -6245,6 +6245,12 @@ def launch_instance(self, launch_instance_details, **kwargs): with the signature. To get the image ID for the LaunchInstance operation, call :func:`get_app_catalog_listing_resource_version`. + When launching an instance, you may provide the `securityAttributes` parameter in + :class:`LaunchInstanceDetails` to manage security attributes via the instance, + or in the embedded :class:`CreateVnicDetails` to manage security attributes + via the VNIC directly, but not both. Providing `securityAttributes` in both locations will return a + 400 Bad Request response. + To determine whether capacity is available for a specific shape before you create an instance, use the :func:`create_compute_capacity_report` operation. diff --git a/src/oci/core/models/add_network_security_group_security_rules_details.py b/src/oci/core/models/add_network_security_group_security_rules_details.py index 15dd2175b..6366c0503 100644 --- a/src/oci/core/models/add_network_security_group_security_rules_details.py +++ b/src/oci/core/models/add_network_security_group_security_rules_details.py @@ -39,7 +39,9 @@ def __init__(self, **kwargs): def security_rules(self): """ Gets the security_rules of this AddNetworkSecurityGroupSecurityRulesDetails. - The NSG security rules to add. + An array of security rules to add to the NSG. You can add up to 25 rules in a single + `AddNetworkSecurityGroupSecurityRules` operation. + Adding more than 25 rules requires multiple operations. :return: The security_rules of this AddNetworkSecurityGroupSecurityRulesDetails. @@ -51,7 +53,9 @@ def security_rules(self): def security_rules(self, security_rules): """ Sets the security_rules of this AddNetworkSecurityGroupSecurityRulesDetails. - The NSG security rules to add. + An array of security rules to add to the NSG. You can add up to 25 rules in a single + `AddNetworkSecurityGroupSecurityRules` operation. + Adding more than 25 rules requires multiple operations. :param security_rules: The security_rules of this AddNetworkSecurityGroupSecurityRulesDetails. diff --git a/src/oci/core/models/create_service_gateway_details.py b/src/oci/core/models/create_service_gateway_details.py index f4e38d972..46c15dba2 100644 --- a/src/oci/core/models/create_service_gateway_details.py +++ b/src/oci/core/models/create_service_gateway_details.py @@ -81,7 +81,7 @@ def __init__(self, **kwargs): def compartment_id(self): """ **[Required]** Gets the compartment_id of this CreateServiceGatewayDetails. - The `OCID]`__ of the compartment to contain the service gateway. + The `OCID`__ of the compartment to contain the service gateway. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm @@ -95,7 +95,7 @@ def compartment_id(self): def compartment_id(self, compartment_id): """ Sets the compartment_id of this CreateServiceGatewayDetails. - The `OCID]`__ of the compartment to contain the service gateway. + The `OCID`__ of the compartment to contain the service gateway. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm diff --git a/src/oci/core/models/create_vcn_details.py b/src/oci/core/models/create_vcn_details.py index 84d583db6..0c726f46d 100644 --- a/src/oci/core/models/create_vcn_details.py +++ b/src/oci/core/models/create_vcn_details.py @@ -60,6 +60,10 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this CreateVcnDetails. :type freeform_tags: dict(str, str) + :param security_attributes: + The value to assign to the security_attributes property of this CreateVcnDetails. + :type security_attributes: dict(str, dict(str, object)) + :param is_ipv6_enabled: The value to assign to the is_ipv6_enabled property of this CreateVcnDetails. :type is_ipv6_enabled: bool @@ -76,6 +80,7 @@ def __init__(self, **kwargs): 'display_name': 'str', 'dns_label': 'str', 'freeform_tags': 'dict(str, str)', + 'security_attributes': 'dict(str, dict(str, object))', 'is_ipv6_enabled': 'bool' } @@ -90,6 +95,7 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'dns_label': 'dnsLabel', 'freeform_tags': 'freeformTags', + 'security_attributes': 'securityAttributes', 'is_ipv6_enabled': 'isIpv6Enabled' } @@ -103,6 +109,7 @@ def __init__(self, **kwargs): self._display_name = None self._dns_label = None self._freeform_tags = None + self._security_attributes = None self._is_ipv6_enabled = None @property @@ -427,6 +434,34 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateVcnDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this CreateVcnDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateVcnDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this CreateVcnDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def is_ipv6_enabled(self): """ diff --git a/src/oci/core/models/create_vnic_details.py b/src/oci/core/models/create_vnic_details.py index e7c5f8b90..8b8c0621e 100644 --- a/src/oci/core/models/create_vnic_details.py +++ b/src/oci/core/models/create_vnic_details.py @@ -49,6 +49,10 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this CreateVnicDetails. :type freeform_tags: dict(str, str) + :param security_attributes: + The value to assign to the security_attributes property of this CreateVnicDetails. + :type security_attributes: dict(str, dict(str, object)) + :param hostname_label: The value to assign to the hostname_label property of this CreateVnicDetails. :type hostname_label: str @@ -85,6 +89,7 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', 'freeform_tags': 'dict(str, str)', + 'security_attributes': 'dict(str, dict(str, object))', 'hostname_label': 'str', 'ipv6_address_ipv6_subnet_cidr_pair_details': 'list[Ipv6AddressIpv6SubnetCidrPairDetails]', 'nsg_ids': 'list[str]', @@ -101,6 +106,7 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'display_name': 'displayName', 'freeform_tags': 'freeformTags', + 'security_attributes': 'securityAttributes', 'hostname_label': 'hostnameLabel', 'ipv6_address_ipv6_subnet_cidr_pair_details': 'ipv6AddressIpv6SubnetCidrPairDetails', 'nsg_ids': 'nsgIds', @@ -116,6 +122,7 @@ def __init__(self, **kwargs): self._defined_tags = None self._display_name = None self._freeform_tags = None + self._security_attributes = None self._hostname_label = None self._ipv6_address_ipv6_subnet_cidr_pair_details = None self._nsg_ids = None @@ -356,6 +363,34 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateVnicDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this CreateVnicDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateVnicDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this CreateVnicDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def hostname_label(self): """ diff --git a/src/oci/core/models/instance.py b/src/oci/core/models/instance.py index 73fc4a68d..80f8b9a4d 100644 --- a/src/oci/core/models/instance.py +++ b/src/oci/core/models/instance.py @@ -39,6 +39,14 @@ class Instance(object): __ https://docs.cloud.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm """ + #: A constant which can be used with the security_attributes_state property of a Instance. + #: This constant has a value of "STABLE" + SECURITY_ATTRIBUTES_STATE_STABLE = "STABLE" + + #: A constant which can be used with the security_attributes_state property of a Instance. + #: This constant has a value of "UPDATING" + SECURITY_ATTRIBUTES_STATE_UPDATING = "UPDATING" + #: A constant which can be used with the launch_mode property of a Instance. #: This constant has a value of "NATIVE" LAUNCH_MODE_NATIVE = "NATIVE" @@ -120,6 +128,16 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this Instance. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this Instance. + :type security_attributes: dict(str, dict(str, object)) + + :param security_attributes_state: + The value to assign to the security_attributes_state property of this Instance. + Allowed values for this property are: "STABLE", "UPDATING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type security_attributes_state: str + :param display_name: The value to assign to the display_name property of this Instance. :type display_name: str @@ -232,6 +250,8 @@ def __init__(self, **kwargs): 'cluster_placement_group_id': 'str', 'dedicated_vm_host_id': 'str', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', + 'security_attributes_state': 'str', 'display_name': 'str', 'extended_metadata': 'dict(str, object)', 'fault_domain': 'str', @@ -266,6 +286,8 @@ def __init__(self, **kwargs): 'cluster_placement_group_id': 'clusterPlacementGroupId', 'dedicated_vm_host_id': 'dedicatedVmHostId', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', + 'security_attributes_state': 'securityAttributesState', 'display_name': 'displayName', 'extended_metadata': 'extendedMetadata', 'fault_domain': 'faultDomain', @@ -299,6 +321,8 @@ def __init__(self, **kwargs): self._cluster_placement_group_id = None self._dedicated_vm_host_id = None self._defined_tags = None + self._security_attributes = None + self._security_attributes_state = None self._display_name = None self._extended_metadata = None self._fault_domain = None @@ -491,6 +515,64 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this Instance. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this Instance. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this Instance. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this Instance. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + + @property + def security_attributes_state(self): + """ + Gets the security_attributes_state of this Instance. + The lifecycle state of the `securityAttributes` + + Allowed values for this property are: "STABLE", "UPDATING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The security_attributes_state of this Instance. + :rtype: str + """ + return self._security_attributes_state + + @security_attributes_state.setter + def security_attributes_state(self, security_attributes_state): + """ + Sets the security_attributes_state of this Instance. + The lifecycle state of the `securityAttributes` + + + :param security_attributes_state: The security_attributes_state of this Instance. + :type: str + """ + allowed_values = ["STABLE", "UPDATING"] + if not value_allowed_none_or_none_sentinel(security_attributes_state, allowed_values): + security_attributes_state = 'UNKNOWN_ENUM_VALUE' + self._security_attributes_state = security_attributes_state + @property def display_name(self): """ diff --git a/src/oci/core/models/instance_configuration_create_vnic_details.py b/src/oci/core/models/instance_configuration_create_vnic_details.py index 0f552a6b3..a2f530fd2 100644 --- a/src/oci/core/models/instance_configuration_create_vnic_details.py +++ b/src/oci/core/models/instance_configuration_create_vnic_details.py @@ -47,6 +47,10 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this InstanceConfigurationCreateVnicDetails. :type freeform_tags: dict(str, str) + :param security_attributes: + The value to assign to the security_attributes property of this InstanceConfigurationCreateVnicDetails. + :type security_attributes: dict(str, dict(str, object)) + :param ipv6_address_ipv6_subnet_cidr_pair_details: The value to assign to the ipv6_address_ipv6_subnet_cidr_pair_details property of this InstanceConfigurationCreateVnicDetails. :type ipv6_address_ipv6_subnet_cidr_pair_details: list[oci.core.models.InstanceConfigurationIpv6AddressIpv6SubnetCidrPairDetails] @@ -79,6 +83,7 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', 'freeform_tags': 'dict(str, str)', + 'security_attributes': 'dict(str, dict(str, object))', 'ipv6_address_ipv6_subnet_cidr_pair_details': 'list[InstanceConfigurationIpv6AddressIpv6SubnetCidrPairDetails]', 'hostname_label': 'str', 'nsg_ids': 'list[str]', @@ -94,6 +99,7 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'display_name': 'displayName', 'freeform_tags': 'freeformTags', + 'security_attributes': 'securityAttributes', 'ipv6_address_ipv6_subnet_cidr_pair_details': 'ipv6AddressIpv6SubnetCidrPairDetails', 'hostname_label': 'hostnameLabel', 'nsg_ids': 'nsgIds', @@ -108,6 +114,7 @@ def __init__(self, **kwargs): self._defined_tags = None self._display_name = None self._freeform_tags = None + self._security_attributes = None self._ipv6_address_ipv6_subnet_cidr_pair_details = None self._hostname_label = None self._nsg_ids = None @@ -293,6 +300,34 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this InstanceConfigurationCreateVnicDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this InstanceConfigurationCreateVnicDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this InstanceConfigurationCreateVnicDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this InstanceConfigurationCreateVnicDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def ipv6_address_ipv6_subnet_cidr_pair_details(self): """ diff --git a/src/oci/core/models/instance_configuration_launch_instance_details.py b/src/oci/core/models/instance_configuration_launch_instance_details.py index 5a2245024..63b6e4355 100644 --- a/src/oci/core/models/instance_configuration_launch_instance_details.py +++ b/src/oci/core/models/instance_configuration_launch_instance_details.py @@ -71,6 +71,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this InstanceConfigurationLaunchInstanceDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this InstanceConfigurationLaunchInstanceDetails. + :type security_attributes: dict(str, dict(str, object)) + :param display_name: The value to assign to the display_name property of this InstanceConfigurationLaunchInstanceDetails. :type display_name: str @@ -159,6 +163,7 @@ def __init__(self, **kwargs): 'cluster_placement_group_id': 'str', 'create_vnic_details': 'InstanceConfigurationCreateVnicDetails', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'display_name': 'str', 'extended_metadata': 'dict(str, object)', 'freeform_tags': 'dict(str, str)', @@ -187,6 +192,7 @@ def __init__(self, **kwargs): 'cluster_placement_group_id': 'clusterPlacementGroupId', 'create_vnic_details': 'createVnicDetails', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'display_name': 'displayName', 'extended_metadata': 'extendedMetadata', 'freeform_tags': 'freeformTags', @@ -214,6 +220,7 @@ def __init__(self, **kwargs): self._cluster_placement_group_id = None self._create_vnic_details = None self._defined_tags = None + self._security_attributes = None self._display_name = None self._extended_metadata = None self._freeform_tags = None @@ -392,6 +399,34 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this InstanceConfigurationLaunchInstanceDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this InstanceConfigurationLaunchInstanceDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this InstanceConfigurationLaunchInstanceDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this InstanceConfigurationLaunchInstanceDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def display_name(self): """ diff --git a/src/oci/core/models/launch_instance_details.py b/src/oci/core/models/launch_instance_details.py index 5e4df60f5..8f65e7aa0 100644 --- a/src/oci/core/models/launch_instance_details.py +++ b/src/oci/core/models/launch_instance_details.py @@ -45,6 +45,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this LaunchInstanceDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this LaunchInstanceDetails. + :type security_attributes: dict(str, dict(str, object)) + :param display_name: The value to assign to the display_name property of this LaunchInstanceDetails. :type display_name: str @@ -145,6 +149,7 @@ def __init__(self, **kwargs): 'create_vnic_details': 'CreateVnicDetails', 'dedicated_vm_host_id': 'str', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'display_name': 'str', 'extended_metadata': 'dict(str, object)', 'fault_domain': 'str', @@ -177,6 +182,7 @@ def __init__(self, **kwargs): 'create_vnic_details': 'createVnicDetails', 'dedicated_vm_host_id': 'dedicatedVmHostId', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'display_name': 'displayName', 'extended_metadata': 'extendedMetadata', 'fault_domain': 'faultDomain', @@ -208,6 +214,7 @@ def __init__(self, **kwargs): self._create_vnic_details = None self._dedicated_vm_host_id = None self._defined_tags = None + self._security_attributes = None self._display_name = None self._extended_metadata = None self._fault_domain = None @@ -394,6 +401,34 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this LaunchInstanceDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this LaunchInstanceDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this LaunchInstanceDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this LaunchInstanceDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def display_name(self): """ diff --git a/src/oci/core/models/service_gateway.py b/src/oci/core/models/service_gateway.py index 18142fe86..4db282037 100644 --- a/src/oci/core/models/service_gateway.py +++ b/src/oci/core/models/service_gateway.py @@ -14,10 +14,10 @@ class ServiceGateway(object): """ Represents a router that lets your VCN privately access specific Oracle services such as Object Storage without exposing the VCN to the public internet. Traffic leaving the VCN and destined - for a supported Oracle service (see :func:`list_services`) is - routed through the service gateway and does not traverse the internet. The instances in the VCN - do not need to have public IP addresses nor be in a public subnet. The VCN does not need an internet gateway - for this traffic. For more information, see + for a supported Oracle service (use the :func:`list_services` operation to + find available service CIDR labels) is routed through the service gateway and does not traverse the internet. + The instances in the VCN do not need to have public IP addresses nor be in a public subnet. The VCN does not + need an internet gateway for this traffic. For more information, see `Access to Oracle Services: Service Gateway`__. To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, diff --git a/src/oci/core/models/update_instance_details.py b/src/oci/core/models/update_instance_details.py index ecc8a1be6..cff594fb7 100644 --- a/src/oci/core/models/update_instance_details.py +++ b/src/oci/core/models/update_instance_details.py @@ -36,6 +36,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateInstanceDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateInstanceDetails. + :type security_attributes: dict(str, dict(str, object)) + :param display_name: The value to assign to the display_name property of this UpdateInstanceDetails. :type display_name: str @@ -105,6 +109,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'capacity_reservation_id': 'str', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'display_name': 'str', 'freeform_tags': 'dict(str, str)', 'agent_config': 'UpdateInstanceAgentConfigDetails', @@ -126,6 +131,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'capacity_reservation_id': 'capacityReservationId', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'display_name': 'displayName', 'freeform_tags': 'freeformTags', 'agent_config': 'agentConfig', @@ -146,6 +152,7 @@ def __init__(self, **kwargs): self._capacity_reservation_id = None self._defined_tags = None + self._security_attributes = None self._display_name = None self._freeform_tags = None self._agent_config = None @@ -229,6 +236,34 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateInstanceDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this UpdateInstanceDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateInstanceDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this UpdateInstanceDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def display_name(self): """ diff --git a/src/oci/core/models/update_vcn_details.py b/src/oci/core/models/update_vcn_details.py index 268b52143..2ec5b4d0d 100644 --- a/src/oci/core/models/update_vcn_details.py +++ b/src/oci/core/models/update_vcn_details.py @@ -32,22 +32,29 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this UpdateVcnDetails. :type freeform_tags: dict(str, str) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateVcnDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', - 'freeform_tags': 'dict(str, str)' + 'freeform_tags': 'dict(str, str)', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'defined_tags': 'definedTags', 'display_name': 'displayName', - 'freeform_tags': 'freeformTags' + 'freeform_tags': 'freeformTags', + 'security_attributes': 'securityAttributes' } self._defined_tags = None self._display_name = None self._freeform_tags = None + self._security_attributes = None @property def defined_tags(self): @@ -143,6 +150,34 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateVcnDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this UpdateVcnDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateVcnDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this UpdateVcnDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/update_vnic_details.py b/src/oci/core/models/update_vnic_details.py index 722eff84e..cbed405b7 100644 --- a/src/oci/core/models/update_vnic_details.py +++ b/src/oci/core/models/update_vnic_details.py @@ -32,6 +32,10 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this UpdateVnicDetails. :type freeform_tags: dict(str, str) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateVnicDetails. + :type security_attributes: dict(str, dict(str, object)) + :param hostname_label: The value to assign to the hostname_label property of this UpdateVnicDetails. :type hostname_label: str @@ -49,6 +53,7 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', 'freeform_tags': 'dict(str, str)', + 'security_attributes': 'dict(str, dict(str, object))', 'hostname_label': 'str', 'nsg_ids': 'list[str]', 'skip_source_dest_check': 'bool' @@ -58,6 +63,7 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'display_name': 'displayName', 'freeform_tags': 'freeformTags', + 'security_attributes': 'securityAttributes', 'hostname_label': 'hostnameLabel', 'nsg_ids': 'nsgIds', 'skip_source_dest_check': 'skipSourceDestCheck' @@ -66,6 +72,7 @@ def __init__(self, **kwargs): self._defined_tags = None self._display_name = None self._freeform_tags = None + self._security_attributes = None self._hostname_label = None self._nsg_ids = None self._skip_source_dest_check = None @@ -164,6 +171,34 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateVnicDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this UpdateVnicDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateVnicDetails. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this UpdateVnicDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def hostname_label(self): """ diff --git a/src/oci/core/models/vcn.py b/src/oci/core/models/vcn.py index 9f3524920..8d0515129 100644 --- a/src/oci/core/models/vcn.py +++ b/src/oci/core/models/vcn.py @@ -96,6 +96,10 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this Vcn. :type freeform_tags: dict(str, str) + :param security_attributes: + The value to assign to the security_attributes property of this Vcn. + :type security_attributes: dict(str, dict(str, object)) + :param id: The value to assign to the id property of this Vcn. :type id: str @@ -132,6 +136,7 @@ def __init__(self, **kwargs): 'display_name': 'str', 'dns_label': 'str', 'freeform_tags': 'dict(str, str)', + 'security_attributes': 'dict(str, dict(str, object))', 'id': 'str', 'ipv6_cidr_blocks': 'list[str]', 'lifecycle_state': 'str', @@ -152,6 +157,7 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'dns_label': 'dnsLabel', 'freeform_tags': 'freeformTags', + 'security_attributes': 'securityAttributes', 'id': 'id', 'ipv6_cidr_blocks': 'ipv6CidrBlocks', 'lifecycle_state': 'lifecycleState', @@ -171,6 +177,7 @@ def __init__(self, **kwargs): self._display_name = None self._dns_label = None self._freeform_tags = None + self._security_attributes = None self._id = None self._ipv6_cidr_blocks = None self._lifecycle_state = None @@ -535,6 +542,34 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this Vcn. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this Vcn. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this Vcn. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this Vcn. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def id(self): """ diff --git a/src/oci/core/models/vnic.py b/src/oci/core/models/vnic.py index 09c8241ba..978ac5a9c 100644 --- a/src/oci/core/models/vnic.py +++ b/src/oci/core/models/vnic.py @@ -76,6 +76,10 @@ def __init__(self, **kwargs): The value to assign to the display_name property of this Vnic. :type display_name: str + :param security_attributes: + The value to assign to the security_attributes property of this Vnic. + :type security_attributes: dict(str, dict(str, object)) + :param freeform_tags: The value to assign to the freeform_tags property of this Vnic. :type freeform_tags: dict(str, str) @@ -140,6 +144,7 @@ def __init__(self, **kwargs): 'compartment_id': 'str', 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', + 'security_attributes': 'dict(str, dict(str, object))', 'freeform_tags': 'dict(str, str)', 'hostname_label': 'str', 'id': 'str', @@ -161,6 +166,7 @@ def __init__(self, **kwargs): 'compartment_id': 'compartmentId', 'defined_tags': 'definedTags', 'display_name': 'displayName', + 'security_attributes': 'securityAttributes', 'freeform_tags': 'freeformTags', 'hostname_label': 'hostnameLabel', 'id': 'id', @@ -181,6 +187,7 @@ def __init__(self, **kwargs): self._compartment_id = None self._defined_tags = None self._display_name = None + self._security_attributes = None self._freeform_tags = None self._hostname_label = None self._id = None @@ -312,6 +319,34 @@ def display_name(self, display_name): """ self._display_name = display_name + @property + def security_attributes(self): + """ + Gets the security_attributes of this Vnic. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :return: The security_attributes of this Vnic. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this Vnic. + Security Attributes for this resource. This is unique to ZPR, and helps identify which resources are allowed to be accessed by what permission controls. + + Example: `{\"Oracle-DataSecurity-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\"}}}` + + + :param security_attributes: The security_attributes of this Vnic. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def freeform_tags(self): """ diff --git a/src/oci/core/virtual_network_client.py b/src/oci/core/virtual_network_client.py index e1f4f75a5..c31381557 100644 --- a/src/oci/core/virtual_network_client.py +++ b/src/oci/core/virtual_network_client.py @@ -567,7 +567,7 @@ def add_ipv6_vcn_cidr(self, vcn_id, **kwargs): def add_network_security_group_security_rules(self, network_security_group_id, add_network_security_group_security_rules_details, **kwargs): """ - Adds one or more security rules to the specified network security group. + Adds up to 25 security rules to the specified network security group. Adding more than 25 rules requires multiple operations. :param str network_security_group_id: (required) @@ -6501,6 +6501,9 @@ def create_service_gateway(self, create_service_gateway_details, **kwargs): You may optionally specify a *display name* for the service gateway, otherwise a default is provided. It does not have to be unique, and you can change it. Avoid entering confidential information. + Use the :func:`list_services` operation to find service CIDR labels + available in the region. + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm __ https://docs.cloud.oracle.com/iaas/Content/Identity/Concepts/overview.htm __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -18926,7 +18929,7 @@ def list_ip_inventory(self, list_ip_inventory_details, **kwargs): resource_path = "/ipInventory" method = "POST" operation_name = "list_ip_inventory" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/iaas/20160918/Vcn/ListIpInventory" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/iaas/20160918/IpInventoryCollection/ListIpInventory" # Don't accept unknown kwargs expected_kwargs = [ @@ -22068,7 +22071,7 @@ def list_virtual_circuit_associated_tunnels(self, virtual_circuit_id, **kwargs): def list_virtual_circuit_bandwidth_shapes(self, compartment_id, **kwargs): """ - The deprecated operation lists available bandwidth levels for virtual circuits. For the compartment ID, provide the `OCID`__ of your tenancy (the root compartment). + The operation lists available bandwidth levels for virtual circuits. For the compartment ID, provide the `OCID`__ of your tenancy (the root compartment). __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm diff --git a/src/oci/database/models/autonomous_database.py b/src/oci/database/models/autonomous_database.py index 498a9b84b..7a80b2f23 100644 --- a/src/oci/database/models/autonomous_database.py +++ b/src/oci/database/models/autonomous_database.py @@ -508,6 +508,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this AutonomousDatabase. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this AutonomousDatabase. + :type security_attributes: dict(str, dict(str, object)) + :param subnet_id: The value to assign to the subnet_id property of this AutonomousDatabase. :type subnet_id: str @@ -871,6 +875,7 @@ def __init__(self, **kwargs): 'used_data_storage_size_in_tbs': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'subnet_id': 'str', 'nsg_ids': 'list[str]', 'private_endpoint': 'str', @@ -994,6 +999,7 @@ def __init__(self, **kwargs): 'used_data_storage_size_in_tbs': 'usedDataStorageSizeInTBs', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'subnet_id': 'subnetId', 'nsg_ids': 'nsgIds', 'private_endpoint': 'privateEndpoint', @@ -1116,6 +1122,7 @@ def __init__(self, **kwargs): self._used_data_storage_size_in_tbs = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._subnet_id = None self._nsg_ids = None self._private_endpoint = None @@ -2494,6 +2501,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this AutonomousDatabase. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this AutonomousDatabase. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this AutonomousDatabase. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this AutonomousDatabase. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def subnet_id(self): """ diff --git a/src/oci/database/models/autonomous_database_summary.py b/src/oci/database/models/autonomous_database_summary.py index ee961e257..4a9302c7a 100644 --- a/src/oci/database/models/autonomous_database_summary.py +++ b/src/oci/database/models/autonomous_database_summary.py @@ -510,6 +510,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this AutonomousDatabaseSummary. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this AutonomousDatabaseSummary. + :type security_attributes: dict(str, dict(str, object)) + :param subnet_id: The value to assign to the subnet_id property of this AutonomousDatabaseSummary. :type subnet_id: str @@ -873,6 +877,7 @@ def __init__(self, **kwargs): 'used_data_storage_size_in_tbs': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'subnet_id': 'str', 'nsg_ids': 'list[str]', 'private_endpoint': 'str', @@ -996,6 +1001,7 @@ def __init__(self, **kwargs): 'used_data_storage_size_in_tbs': 'usedDataStorageSizeInTBs', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'subnet_id': 'subnetId', 'nsg_ids': 'nsgIds', 'private_endpoint': 'privateEndpoint', @@ -1118,6 +1124,7 @@ def __init__(self, **kwargs): self._used_data_storage_size_in_tbs = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._subnet_id = None self._nsg_ids = None self._private_endpoint = None @@ -2496,6 +2503,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this AutonomousDatabaseSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this AutonomousDatabaseSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this AutonomousDatabaseSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this AutonomousDatabaseSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def subnet_id(self): """ diff --git a/src/oci/database/models/cloud_autonomous_vm_cluster.py b/src/oci/database/models/cloud_autonomous_vm_cluster.py index 02a605934..afc140237 100644 --- a/src/oci/database/models/cloud_autonomous_vm_cluster.py +++ b/src/oci/database/models/cloud_autonomous_vm_cluster.py @@ -206,6 +206,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CloudAutonomousVmCluster. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CloudAutonomousVmCluster. + :type security_attributes: dict(str, dict(str, object)) + :param time_database_ssl_certificate_expires: The value to assign to the time_database_ssl_certificate_expires property of this CloudAutonomousVmCluster. :type time_database_ssl_certificate_expires: datetime @@ -334,6 +338,7 @@ def __init__(self, **kwargs): 'scan_listener_port_non_tls': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'time_database_ssl_certificate_expires': 'datetime', 'time_ords_certificate_expires': 'datetime', 'available_cpus': 'float', @@ -394,6 +399,7 @@ def __init__(self, **kwargs): 'scan_listener_port_non_tls': 'scanListenerPortNonTls', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'time_database_ssl_certificate_expires': 'timeDatabaseSslCertificateExpires', 'time_ords_certificate_expires': 'timeOrdsCertificateExpires', 'available_cpus': 'availableCpus', @@ -453,6 +459,7 @@ def __init__(self, **kwargs): self._scan_listener_port_non_tls = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._time_database_ssl_certificate_expires = None self._time_ords_certificate_expires = None self._available_cpus = None @@ -1395,6 +1402,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CloudAutonomousVmCluster. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CloudAutonomousVmCluster. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CloudAutonomousVmCluster. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CloudAutonomousVmCluster. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def time_database_ssl_certificate_expires(self): """ diff --git a/src/oci/database/models/cloud_autonomous_vm_cluster_summary.py b/src/oci/database/models/cloud_autonomous_vm_cluster_summary.py index a4cb34a02..b2a271e00 100644 --- a/src/oci/database/models/cloud_autonomous_vm_cluster_summary.py +++ b/src/oci/database/models/cloud_autonomous_vm_cluster_summary.py @@ -206,6 +206,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CloudAutonomousVmClusterSummary. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CloudAutonomousVmClusterSummary. + :type security_attributes: dict(str, dict(str, object)) + :param time_database_ssl_certificate_expires: The value to assign to the time_database_ssl_certificate_expires property of this CloudAutonomousVmClusterSummary. :type time_database_ssl_certificate_expires: datetime @@ -334,6 +338,7 @@ def __init__(self, **kwargs): 'scan_listener_port_non_tls': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'time_database_ssl_certificate_expires': 'datetime', 'time_ords_certificate_expires': 'datetime', 'available_cpus': 'float', @@ -394,6 +399,7 @@ def __init__(self, **kwargs): 'scan_listener_port_non_tls': 'scanListenerPortNonTls', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'time_database_ssl_certificate_expires': 'timeDatabaseSslCertificateExpires', 'time_ords_certificate_expires': 'timeOrdsCertificateExpires', 'available_cpus': 'availableCpus', @@ -453,6 +459,7 @@ def __init__(self, **kwargs): self._scan_listener_port_non_tls = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._time_database_ssl_certificate_expires = None self._time_ords_certificate_expires = None self._available_cpus = None @@ -1395,6 +1402,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CloudAutonomousVmClusterSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CloudAutonomousVmClusterSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CloudAutonomousVmClusterSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CloudAutonomousVmClusterSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def time_database_ssl_certificate_expires(self): """ diff --git a/src/oci/database/models/cloud_vm_cluster.py b/src/oci/database/models/cloud_vm_cluster.py index be2d72fb1..4dc055b31 100644 --- a/src/oci/database/models/cloud_vm_cluster.py +++ b/src/oci/database/models/cloud_vm_cluster.py @@ -238,6 +238,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CloudVmCluster. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CloudVmCluster. + :type security_attributes: dict(str, dict(str, object)) + :param system_tags: The value to assign to the system_tags property of this CloudVmCluster. :type system_tags: dict(str, dict(str, object)) @@ -314,6 +318,7 @@ def __init__(self, **kwargs): 'scan_dns_record_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'scan_dns_name': 'str', 'zone_id': 'str', @@ -367,6 +372,7 @@ def __init__(self, **kwargs): 'scan_dns_record_id': 'scanDnsRecordId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'system_tags': 'systemTags', 'scan_dns_name': 'scanDnsName', 'zone_id': 'zoneId', @@ -419,6 +425,7 @@ def __init__(self, **kwargs): self._scan_dns_record_id = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._system_tags = None self._scan_dns_name = None self._zone_id = None @@ -1570,6 +1577,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CloudVmCluster. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CloudVmCluster. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CloudVmCluster. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CloudVmCluster. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def system_tags(self): """ diff --git a/src/oci/database/models/cloud_vm_cluster_summary.py b/src/oci/database/models/cloud_vm_cluster_summary.py index 4f02a6bc5..3849d68b6 100644 --- a/src/oci/database/models/cloud_vm_cluster_summary.py +++ b/src/oci/database/models/cloud_vm_cluster_summary.py @@ -234,6 +234,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CloudVmClusterSummary. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CloudVmClusterSummary. + :type security_attributes: dict(str, dict(str, object)) + :param system_tags: The value to assign to the system_tags property of this CloudVmClusterSummary. :type system_tags: dict(str, dict(str, object)) @@ -309,6 +313,7 @@ def __init__(self, **kwargs): 'scan_dns_record_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'scan_dns_name': 'str', 'zone_id': 'str', @@ -361,6 +366,7 @@ def __init__(self, **kwargs): 'scan_dns_record_id': 'scanDnsRecordId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'system_tags': 'systemTags', 'scan_dns_name': 'scanDnsName', 'zone_id': 'zoneId', @@ -412,6 +418,7 @@ def __init__(self, **kwargs): self._scan_dns_record_id = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._system_tags = None self._scan_dns_name = None self._zone_id = None @@ -1543,6 +1550,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CloudVmClusterSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CloudVmClusterSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CloudVmClusterSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CloudVmClusterSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def system_tags(self): """ diff --git a/src/oci/database/models/create_autonomous_database_base.py b/src/oci/database/models/create_autonomous_database_base.py index 5f09f9b91..b09c70cd8 100644 --- a/src/oci/database/models/create_autonomous_database_base.py +++ b/src/oci/database/models/create_autonomous_database_base.py @@ -262,6 +262,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateAutonomousDatabaseBase. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateAutonomousDatabaseBase. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this CreateAutonomousDatabaseBase. :type private_endpoint_ip: str @@ -359,6 +363,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -413,6 +418,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -466,6 +472,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None @@ -1691,6 +1698,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateAutonomousDatabaseBase. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CreateAutonomousDatabaseBase. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateAutonomousDatabaseBase. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CreateAutonomousDatabaseBase. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def private_endpoint_ip(self): """ diff --git a/src/oci/database/models/create_autonomous_database_clone_details.py b/src/oci/database/models/create_autonomous_database_clone_details.py index 1c291a122..bc9ed84a4 100644 --- a/src/oci/database/models/create_autonomous_database_clone_details.py +++ b/src/oci/database/models/create_autonomous_database_clone_details.py @@ -180,6 +180,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateAutonomousDatabaseCloneDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateAutonomousDatabaseCloneDetails. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this CreateAutonomousDatabaseCloneDetails. :type private_endpoint_ip: str @@ -286,6 +290,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -342,6 +347,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -397,6 +403,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None diff --git a/src/oci/database/models/create_autonomous_database_details.py b/src/oci/database/models/create_autonomous_database_details.py index ff26276bc..9a9551384 100644 --- a/src/oci/database/models/create_autonomous_database_details.py +++ b/src/oci/database/models/create_autonomous_database_details.py @@ -172,6 +172,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateAutonomousDatabaseDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateAutonomousDatabaseDetails. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this CreateAutonomousDatabaseDetails. :type private_endpoint_ip: str @@ -269,6 +273,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -323,6 +328,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -376,6 +382,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None diff --git a/src/oci/database/models/create_autonomous_database_from_backup_details.py b/src/oci/database/models/create_autonomous_database_from_backup_details.py index b9ba2ef4e..e07ff8e7e 100644 --- a/src/oci/database/models/create_autonomous_database_from_backup_details.py +++ b/src/oci/database/models/create_autonomous_database_from_backup_details.py @@ -180,6 +180,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateAutonomousDatabaseFromBackupDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateAutonomousDatabaseFromBackupDetails. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this CreateAutonomousDatabaseFromBackupDetails. :type private_endpoint_ip: str @@ -286,6 +290,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -342,6 +347,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -397,6 +403,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None diff --git a/src/oci/database/models/create_autonomous_database_from_backup_timestamp_details.py b/src/oci/database/models/create_autonomous_database_from_backup_timestamp_details.py index bd4f4bc66..e96210998 100644 --- a/src/oci/database/models/create_autonomous_database_from_backup_timestamp_details.py +++ b/src/oci/database/models/create_autonomous_database_from_backup_timestamp_details.py @@ -180,6 +180,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateAutonomousDatabaseFromBackupTimestampDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateAutonomousDatabaseFromBackupTimestampDetails. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this CreateAutonomousDatabaseFromBackupTimestampDetails. :type private_endpoint_ip: str @@ -294,6 +298,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -352,6 +357,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -409,6 +415,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None diff --git a/src/oci/database/models/create_cloud_autonomous_vm_cluster_details.py b/src/oci/database/models/create_cloud_autonomous_vm_cluster_details.py index 01a6ab83b..79a461a30 100644 --- a/src/oci/database/models/create_cloud_autonomous_vm_cluster_details.py +++ b/src/oci/database/models/create_cloud_autonomous_vm_cluster_details.py @@ -118,6 +118,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateCloudAutonomousVmClusterDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateCloudAutonomousVmClusterDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'compartment_id': 'str', @@ -139,7 +143,8 @@ def __init__(self, **kwargs): 'license_model': 'str', 'nsg_ids': 'list[str]', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { @@ -162,7 +167,8 @@ def __init__(self, **kwargs): 'license_model': 'licenseModel', 'nsg_ids': 'nsgIds', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._compartment_id = None @@ -185,6 +191,7 @@ def __init__(self, **kwargs): self._nsg_ids = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def compartment_id(self): @@ -734,6 +741,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateCloudAutonomousVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CreateCloudAutonomousVmClusterDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateCloudAutonomousVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CreateCloudAutonomousVmClusterDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/create_cloud_vm_cluster_details.py b/src/oci/database/models/create_cloud_vm_cluster_details.py index c30fc8929..49c358413 100644 --- a/src/oci/database/models/create_cloud_vm_cluster_details.py +++ b/src/oci/database/models/create_cloud_vm_cluster_details.py @@ -145,6 +145,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateCloudVmClusterDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateCloudVmClusterDetails. + :type security_attributes: dict(str, dict(str, object)) + :param data_collection_options: The value to assign to the data_collection_options property of this CreateCloudVmClusterDetails. :type data_collection_options: oci.database.models.DataCollectionOptions @@ -188,6 +192,7 @@ def __init__(self, **kwargs): 'gi_version': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'data_collection_options': 'DataCollectionOptions', 'system_version': 'str', 'file_system_configuration_details': 'list[FileSystemConfigurationDetail]' @@ -223,6 +228,7 @@ def __init__(self, **kwargs): 'gi_version': 'giVersion', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'data_collection_options': 'dataCollectionOptions', 'system_version': 'systemVersion', 'file_system_configuration_details': 'fileSystemConfigurationDetails' @@ -257,6 +263,7 @@ def __init__(self, **kwargs): self._gi_version = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._data_collection_options = None self._system_version = None self._file_system_configuration_details = None @@ -1060,6 +1067,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateCloudVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CreateCloudVmClusterDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateCloudVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CreateCloudVmClusterDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def data_collection_options(self): """ diff --git a/src/oci/database/models/create_cross_region_autonomous_database_data_guard_details.py b/src/oci/database/models/create_cross_region_autonomous_database_data_guard_details.py index ec7f39c53..7441edd4e 100644 --- a/src/oci/database/models/create_cross_region_autonomous_database_data_guard_details.py +++ b/src/oci/database/models/create_cross_region_autonomous_database_data_guard_details.py @@ -192,6 +192,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateCrossRegionAutonomousDatabaseDataGuardDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateCrossRegionAutonomousDatabaseDataGuardDetails. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this CreateCrossRegionAutonomousDatabaseDataGuardDetails. :type private_endpoint_ip: str @@ -293,6 +297,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -348,6 +353,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -402,6 +408,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None diff --git a/src/oci/database/models/create_cross_region_disaster_recovery_details.py b/src/oci/database/models/create_cross_region_disaster_recovery_details.py index cac2e80f9..c12fd9229 100644 --- a/src/oci/database/models/create_cross_region_disaster_recovery_details.py +++ b/src/oci/database/models/create_cross_region_disaster_recovery_details.py @@ -191,6 +191,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateCrossRegionDisasterRecoveryDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateCrossRegionDisasterRecoveryDetails. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this CreateCrossRegionDisasterRecoveryDetails. :type private_endpoint_ip: str @@ -300,6 +304,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -357,6 +362,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -413,6 +419,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None diff --git a/src/oci/database/models/create_cross_tenancy_disaster_recovery_details.py b/src/oci/database/models/create_cross_tenancy_disaster_recovery_details.py index 31b64bcf8..9913a5b98 100644 --- a/src/oci/database/models/create_cross_tenancy_disaster_recovery_details.py +++ b/src/oci/database/models/create_cross_tenancy_disaster_recovery_details.py @@ -192,6 +192,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateCrossTenancyDisasterRecoveryDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateCrossTenancyDisasterRecoveryDetails. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this CreateCrossTenancyDisasterRecoveryDetails. :type private_endpoint_ip: str @@ -301,6 +305,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -358,6 +363,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -414,6 +420,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None diff --git a/src/oci/database/models/create_data_guard_association_with_new_db_system_details.py b/src/oci/database/models/create_data_guard_association_with_new_db_system_details.py index 9ec67370e..ad0be0daf 100644 --- a/src/oci/database/models/create_data_guard_association_with_new_db_system_details.py +++ b/src/oci/database/models/create_data_guard_association_with_new_db_system_details.py @@ -143,6 +143,10 @@ def __init__(self, **kwargs): The value to assign to the db_system_defined_tags property of this CreateDataGuardAssociationWithNewDbSystemDetails. :type db_system_defined_tags: dict(str, dict(str, object)) + :param db_system_security_attributes: + The value to assign to the db_system_security_attributes property of this CreateDataGuardAssociationWithNewDbSystemDetails. + :type db_system_security_attributes: dict(str, dict(str, object)) + :param database_freeform_tags: The value to assign to the database_freeform_tags property of this CreateDataGuardAssociationWithNewDbSystemDetails. :type database_freeform_tags: dict(str, str) @@ -182,6 +186,7 @@ def __init__(self, **kwargs): 'license_model': 'str', 'db_system_freeform_tags': 'dict(str, str)', 'db_system_defined_tags': 'dict(str, dict(str, object))', + 'db_system_security_attributes': 'dict(str, dict(str, object))', 'database_freeform_tags': 'dict(str, str)', 'database_defined_tags': 'dict(str, dict(str, object))', 'data_collection_options': 'DataCollectionOptions' @@ -213,6 +218,7 @@ def __init__(self, **kwargs): 'license_model': 'licenseModel', 'db_system_freeform_tags': 'dbSystemFreeformTags', 'db_system_defined_tags': 'dbSystemDefinedTags', + 'db_system_security_attributes': 'dbSystemSecurityAttributes', 'database_freeform_tags': 'databaseFreeformTags', 'database_defined_tags': 'databaseDefinedTags', 'data_collection_options': 'dataCollectionOptions' @@ -243,6 +249,7 @@ def __init__(self, **kwargs): self._license_model = None self._db_system_freeform_tags = None self._db_system_defined_tags = None + self._db_system_security_attributes = None self._database_freeform_tags = None self._database_defined_tags = None self._data_collection_options = None @@ -766,6 +773,38 @@ def db_system_defined_tags(self, db_system_defined_tags): """ self._db_system_defined_tags = db_system_defined_tags + @property + def db_system_security_attributes(self): + """ + Gets the db_system_security_attributes of this CreateDataGuardAssociationWithNewDbSystemDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The db_system_security_attributes of this CreateDataGuardAssociationWithNewDbSystemDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._db_system_security_attributes + + @db_system_security_attributes.setter + def db_system_security_attributes(self, db_system_security_attributes): + """ + Sets the db_system_security_attributes of this CreateDataGuardAssociationWithNewDbSystemDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param db_system_security_attributes: The db_system_security_attributes of this CreateDataGuardAssociationWithNewDbSystemDetails. + :type: dict(str, dict(str, object)) + """ + self._db_system_security_attributes = db_system_security_attributes + @property def database_freeform_tags(self): """ diff --git a/src/oci/database/models/create_exadb_vm_cluster_details.py b/src/oci/database/models/create_exadb_vm_cluster_details.py index 75199014f..de48dad15 100644 --- a/src/oci/database/models/create_exadb_vm_cluster_details.py +++ b/src/oci/database/models/create_exadb_vm_cluster_details.py @@ -133,6 +133,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateExadbVmClusterDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateExadbVmClusterDetails. + :type security_attributes: dict(str, dict(str, object)) + :param data_collection_options: The value to assign to the data_collection_options property of this CreateExadbVmClusterDetails. :type data_collection_options: oci.database.models.DataCollectionOptions @@ -165,6 +169,7 @@ def __init__(self, **kwargs): 'system_version': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'data_collection_options': 'DataCollectionOptions' } @@ -195,6 +200,7 @@ def __init__(self, **kwargs): 'system_version': 'systemVersion', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'data_collection_options': 'dataCollectionOptions' } @@ -224,6 +230,7 @@ def __init__(self, **kwargs): self._system_version = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._data_collection_options = None @property @@ -933,6 +940,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateExadbVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CreateExadbVmClusterDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateExadbVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CreateExadbVmClusterDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def data_collection_options(self): """ diff --git a/src/oci/database/models/create_refreshable_autonomous_database_clone_details.py b/src/oci/database/models/create_refreshable_autonomous_database_clone_details.py index 534af4fd9..abaf0a3e1 100644 --- a/src/oci/database/models/create_refreshable_autonomous_database_clone_details.py +++ b/src/oci/database/models/create_refreshable_autonomous_database_clone_details.py @@ -188,6 +188,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateRefreshableAutonomousDatabaseCloneDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateRefreshableAutonomousDatabaseCloneDetails. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this CreateRefreshableAutonomousDatabaseCloneDetails. :type private_endpoint_ip: str @@ -311,6 +315,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -371,6 +376,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -430,6 +436,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None diff --git a/src/oci/database/models/db_system.py b/src/oci/database/models/db_system.py index d86724e86..63b7b4381 100644 --- a/src/oci/database/models/db_system.py +++ b/src/oci/database/models/db_system.py @@ -298,6 +298,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this DbSystem. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this DbSystem. + :type security_attributes: dict(str, dict(str, object)) + :param source_db_system_id: The value to assign to the source_db_system_id property of this DbSystem. :type source_db_system_id: str @@ -359,6 +363,7 @@ def __init__(self, **kwargs): 'next_maintenance_run_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'source_db_system_id': 'str', 'point_in_time_data_disk_clone_timestamp': 'datetime', 'data_collection_options': 'DataCollectionOptions' @@ -412,6 +417,7 @@ def __init__(self, **kwargs): 'next_maintenance_run_id': 'nextMaintenanceRunId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'source_db_system_id': 'sourceDbSystemId', 'point_in_time_data_disk_clone_timestamp': 'pointInTimeDataDiskCloneTimestamp', 'data_collection_options': 'dataCollectionOptions' @@ -464,6 +470,7 @@ def __init__(self, **kwargs): self._next_maintenance_run_id = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._source_db_system_id = None self._point_in_time_data_disk_clone_timestamp = None self._data_collection_options = None @@ -1744,6 +1751,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this DbSystem. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this DbSystem. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this DbSystem. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this DbSystem. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def source_db_system_id(self): """ diff --git a/src/oci/database/models/db_system_summary.py b/src/oci/database/models/db_system_summary.py index ed74900fa..b6edb5826 100644 --- a/src/oci/database/models/db_system_summary.py +++ b/src/oci/database/models/db_system_summary.py @@ -323,6 +323,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this DbSystemSummary. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this DbSystemSummary. + :type security_attributes: dict(str, dict(str, object)) + :param source_db_system_id: The value to assign to the source_db_system_id property of this DbSystemSummary. :type source_db_system_id: str @@ -383,6 +387,7 @@ def __init__(self, **kwargs): 'next_maintenance_run_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'source_db_system_id': 'str', 'point_in_time_data_disk_clone_timestamp': 'datetime', 'data_collection_options': 'DataCollectionOptions' @@ -435,6 +440,7 @@ def __init__(self, **kwargs): 'next_maintenance_run_id': 'nextMaintenanceRunId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'source_db_system_id': 'sourceDbSystemId', 'point_in_time_data_disk_clone_timestamp': 'pointInTimeDataDiskCloneTimestamp', 'data_collection_options': 'dataCollectionOptions' @@ -486,6 +492,7 @@ def __init__(self, **kwargs): self._next_maintenance_run_id = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._source_db_system_id = None self._point_in_time_data_disk_clone_timestamp = None self._data_collection_options = None @@ -1746,6 +1753,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this DbSystemSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this DbSystemSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this DbSystemSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this DbSystemSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def source_db_system_id(self): """ diff --git a/src/oci/database/models/exadb_vm_cluster.py b/src/oci/database/models/exadb_vm_cluster.py index fe46e768c..cf08ca9aa 100644 --- a/src/oci/database/models/exadb_vm_cluster.py +++ b/src/oci/database/models/exadb_vm_cluster.py @@ -194,6 +194,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this ExadbVmCluster. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this ExadbVmCluster. + :type security_attributes: dict(str, dict(str, object)) + :param system_tags: The value to assign to the system_tags property of this ExadbVmCluster. :type system_tags: dict(str, dict(str, object)) @@ -283,6 +287,7 @@ def __init__(self, **kwargs): 'scan_dns_record_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'scan_dns_name': 'str', 'zone_id': 'str', @@ -331,6 +336,7 @@ def __init__(self, **kwargs): 'scan_dns_record_id': 'scanDnsRecordId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'system_tags': 'systemTags', 'scan_dns_name': 'scanDnsName', 'zone_id': 'zoneId', @@ -378,6 +384,7 @@ def __init__(self, **kwargs): self._scan_dns_record_id = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._system_tags = None self._scan_dns_name = None self._zone_id = None @@ -1259,6 +1266,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this ExadbVmCluster. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this ExadbVmCluster. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this ExadbVmCluster. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this ExadbVmCluster. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def system_tags(self): """ diff --git a/src/oci/database/models/exadb_vm_cluster_summary.py b/src/oci/database/models/exadb_vm_cluster_summary.py index 46d7faafc..d3f463f81 100644 --- a/src/oci/database/models/exadb_vm_cluster_summary.py +++ b/src/oci/database/models/exadb_vm_cluster_summary.py @@ -190,6 +190,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this ExadbVmClusterSummary. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this ExadbVmClusterSummary. + :type security_attributes: dict(str, dict(str, object)) + :param system_tags: The value to assign to the system_tags property of this ExadbVmClusterSummary. :type system_tags: dict(str, dict(str, object)) @@ -278,6 +282,7 @@ def __init__(self, **kwargs): 'scan_dns_record_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'scan_dns_name': 'str', 'zone_id': 'str', @@ -325,6 +330,7 @@ def __init__(self, **kwargs): 'scan_dns_record_id': 'scanDnsRecordId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'system_tags': 'systemTags', 'scan_dns_name': 'scanDnsName', 'zone_id': 'zoneId', @@ -371,6 +377,7 @@ def __init__(self, **kwargs): self._scan_dns_record_id = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._system_tags = None self._scan_dns_name = None self._zone_id = None @@ -1232,6 +1239,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this ExadbVmClusterSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this ExadbVmClusterSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this ExadbVmClusterSummary. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this ExadbVmClusterSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def system_tags(self): """ diff --git a/src/oci/database/models/launch_db_system_base.py b/src/oci/database/models/launch_db_system_base.py index cd1be1514..21da89635 100644 --- a/src/oci/database/models/launch_db_system_base.py +++ b/src/oci/database/models/launch_db_system_base.py @@ -154,6 +154,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this LaunchDbSystemBase. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this LaunchDbSystemBase. + :type security_attributes: dict(str, dict(str, object)) + :param source: The value to assign to the source property of this LaunchDbSystemBase. Allowed values for this property are: "NONE", "DB_BACKUP", "DATABASE", "DB_SYSTEM" @@ -194,6 +198,7 @@ def __init__(self, **kwargs): 'node_count': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'source': 'str', 'private_ip': 'str', 'data_collection_options': 'DataCollectionOptions' @@ -225,6 +230,7 @@ def __init__(self, **kwargs): 'node_count': 'nodeCount', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'source': 'source', 'private_ip': 'privateIp', 'data_collection_options': 'dataCollectionOptions' @@ -255,6 +261,7 @@ def __init__(self, **kwargs): self._node_count = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._source = None self._private_ip = None self._data_collection_options = None @@ -1048,6 +1055,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this LaunchDbSystemBase. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this LaunchDbSystemBase. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this LaunchDbSystemBase. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this LaunchDbSystemBase. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def source(self): """ diff --git a/src/oci/database/models/launch_db_system_details.py b/src/oci/database/models/launch_db_system_details.py index d9019a3cd..acab9b48b 100644 --- a/src/oci/database/models/launch_db_system_details.py +++ b/src/oci/database/models/launch_db_system_details.py @@ -154,6 +154,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this LaunchDbSystemDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this LaunchDbSystemDetails. + :type security_attributes: dict(str, dict(str, object)) + :param source: The value to assign to the source property of this LaunchDbSystemDetails. Allowed values for this property are: "NONE", "DB_BACKUP", "DATABASE", "DB_SYSTEM" @@ -217,6 +221,7 @@ def __init__(self, **kwargs): 'node_count': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'source': 'str', 'private_ip': 'str', 'data_collection_options': 'DataCollectionOptions', @@ -253,6 +258,7 @@ def __init__(self, **kwargs): 'node_count': 'nodeCount', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'source': 'source', 'private_ip': 'privateIp', 'data_collection_options': 'dataCollectionOptions', @@ -288,6 +294,7 @@ def __init__(self, **kwargs): self._node_count = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._source = None self._private_ip = None self._data_collection_options = None diff --git a/src/oci/database/models/launch_db_system_from_backup_details.py b/src/oci/database/models/launch_db_system_from_backup_details.py index d02e5b4fd..c35e33682 100644 --- a/src/oci/database/models/launch_db_system_from_backup_details.py +++ b/src/oci/database/models/launch_db_system_from_backup_details.py @@ -154,6 +154,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this LaunchDbSystemFromBackupDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this LaunchDbSystemFromBackupDetails. + :type security_attributes: dict(str, dict(str, object)) + :param source: The value to assign to the source property of this LaunchDbSystemFromBackupDetails. Allowed values for this property are: "NONE", "DB_BACKUP", "DATABASE", "DB_SYSTEM" @@ -213,6 +217,7 @@ def __init__(self, **kwargs): 'node_count': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'source': 'str', 'private_ip': 'str', 'data_collection_options': 'DataCollectionOptions', @@ -248,6 +253,7 @@ def __init__(self, **kwargs): 'node_count': 'nodeCount', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'source': 'source', 'private_ip': 'privateIp', 'data_collection_options': 'dataCollectionOptions', @@ -282,6 +288,7 @@ def __init__(self, **kwargs): self._node_count = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._source = None self._private_ip = None self._data_collection_options = None diff --git a/src/oci/database/models/launch_db_system_from_database_details.py b/src/oci/database/models/launch_db_system_from_database_details.py index b85ee78bd..cc6c78258 100644 --- a/src/oci/database/models/launch_db_system_from_database_details.py +++ b/src/oci/database/models/launch_db_system_from_database_details.py @@ -154,6 +154,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this LaunchDbSystemFromDatabaseDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this LaunchDbSystemFromDatabaseDetails. + :type security_attributes: dict(str, dict(str, object)) + :param source: The value to assign to the source property of this LaunchDbSystemFromDatabaseDetails. Allowed values for this property are: "NONE", "DB_BACKUP", "DATABASE", "DB_SYSTEM" @@ -213,6 +217,7 @@ def __init__(self, **kwargs): 'node_count': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'source': 'str', 'private_ip': 'str', 'data_collection_options': 'DataCollectionOptions', @@ -248,6 +253,7 @@ def __init__(self, **kwargs): 'node_count': 'nodeCount', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'source': 'source', 'private_ip': 'privateIp', 'data_collection_options': 'dataCollectionOptions', @@ -282,6 +288,7 @@ def __init__(self, **kwargs): self._node_count = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._source = None self._private_ip = None self._data_collection_options = None diff --git a/src/oci/database/models/launch_db_system_from_db_system_details.py b/src/oci/database/models/launch_db_system_from_db_system_details.py index f8b213aae..e6e8beab5 100644 --- a/src/oci/database/models/launch_db_system_from_db_system_details.py +++ b/src/oci/database/models/launch_db_system_from_db_system_details.py @@ -130,6 +130,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this LaunchDbSystemFromDbSystemDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this LaunchDbSystemFromDbSystemDetails. + :type security_attributes: dict(str, dict(str, object)) + :param source: The value to assign to the source property of this LaunchDbSystemFromDbSystemDetails. Allowed values for this property are: "NONE", "DB_BACKUP", "DATABASE", "DB_SYSTEM" @@ -183,6 +187,7 @@ def __init__(self, **kwargs): 'node_count': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'source': 'str', 'private_ip': 'str', 'data_collection_options': 'DataCollectionOptions', @@ -217,6 +222,7 @@ def __init__(self, **kwargs): 'node_count': 'nodeCount', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'source': 'source', 'private_ip': 'privateIp', 'data_collection_options': 'dataCollectionOptions', @@ -250,6 +256,7 @@ def __init__(self, **kwargs): self._node_count = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._source = None self._private_ip = None self._data_collection_options = None diff --git a/src/oci/database/models/undelete_autonomous_database_details.py b/src/oci/database/models/undelete_autonomous_database_details.py index 7291ef67d..b071ee61c 100644 --- a/src/oci/database/models/undelete_autonomous_database_details.py +++ b/src/oci/database/models/undelete_autonomous_database_details.py @@ -172,6 +172,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UndeleteAutonomousDatabaseDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UndeleteAutonomousDatabaseDetails. + :type security_attributes: dict(str, dict(str, object)) + :param private_endpoint_ip: The value to assign to the private_endpoint_ip property of this UndeleteAutonomousDatabaseDetails. :type private_endpoint_ip: str @@ -273,6 +277,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'private_endpoint_ip': 'str', 'db_version': 'str', 'source': 'str', @@ -328,6 +333,7 @@ def __init__(self, **kwargs): 'private_endpoint_label': 'privateEndpointLabel', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'private_endpoint_ip': 'privateEndpointIp', 'db_version': 'dbVersion', 'source': 'source', @@ -382,6 +388,7 @@ def __init__(self, **kwargs): self._private_endpoint_label = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._private_endpoint_ip = None self._db_version = None self._source = None diff --git a/src/oci/database/models/update_autonomous_database_details.py b/src/oci/database/models/update_autonomous_database_details.py index dbbe883a8..c69a8c4ad 100644 --- a/src/oci/database/models/update_autonomous_database_details.py +++ b/src/oci/database/models/update_autonomous_database_details.py @@ -151,6 +151,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateAutonomousDatabaseDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateAutonomousDatabaseDetails. + :type security_attributes: dict(str, dict(str, object)) + :param db_workload: The value to assign to the db_workload property of this UpdateAutonomousDatabaseDetails. Allowed values for this property are: "OLTP", "DW", "AJD", "APEX" @@ -307,6 +311,7 @@ def __init__(self, **kwargs): 'db_name': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'db_workload': 'str', 'license_model': 'str', 'byol_compute_count_limit': 'float', @@ -360,6 +365,7 @@ def __init__(self, **kwargs): 'db_name': 'dbName', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'db_workload': 'dbWorkload', 'license_model': 'licenseModel', 'byol_compute_count_limit': 'byolComputeCountLimit', @@ -412,6 +418,7 @@ def __init__(self, **kwargs): self._db_name = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._db_workload = None self._license_model = None self._byol_compute_count_limit = None @@ -957,6 +964,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateAutonomousDatabaseDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdateAutonomousDatabaseDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateAutonomousDatabaseDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdateAutonomousDatabaseDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def db_workload(self): """ diff --git a/src/oci/database/models/update_cloud_autonomous_vm_cluster_details.py b/src/oci/database/models/update_cloud_autonomous_vm_cluster_details.py index ca883ad22..828d20489 100644 --- a/src/oci/database/models/update_cloud_autonomous_vm_cluster_details.py +++ b/src/oci/database/models/update_cloud_autonomous_vm_cluster_details.py @@ -69,6 +69,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateCloudAutonomousVmClusterDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateCloudAutonomousVmClusterDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'description': 'str', @@ -80,7 +84,8 @@ def __init__(self, **kwargs): 'license_model': 'str', 'nsg_ids': 'list[str]', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { @@ -93,7 +98,8 @@ def __init__(self, **kwargs): 'license_model': 'licenseModel', 'nsg_ids': 'nsgIds', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._description = None @@ -106,6 +112,7 @@ def __init__(self, **kwargs): self._nsg_ids = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def description(self): @@ -392,6 +399,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateCloudAutonomousVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdateCloudAutonomousVmClusterDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateCloudAutonomousVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdateCloudAutonomousVmClusterDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/update_cloud_vm_cluster_details.py b/src/oci/database/models/update_cloud_vm_cluster_details.py index 122fad796..a4b66dd9f 100644 --- a/src/oci/database/models/update_cloud_vm_cluster_details.py +++ b/src/oci/database/models/update_cloud_vm_cluster_details.py @@ -89,6 +89,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateCloudVmClusterDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateCloudVmClusterDetails. + :type security_attributes: dict(str, dict(str, object)) + :param data_collection_options: The value to assign to the data_collection_options property of this UpdateCloudVmClusterDetails. :type data_collection_options: oci.database.models.DataCollectionOptions @@ -114,6 +118,7 @@ def __init__(self, **kwargs): 'storage_size_in_gbs': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'data_collection_options': 'DataCollectionOptions', 'file_system_configuration_details': 'list[FileSystemConfigurationDetail]' } @@ -134,6 +139,7 @@ def __init__(self, **kwargs): 'storage_size_in_gbs': 'storageSizeInGBs', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'data_collection_options': 'dataCollectionOptions', 'file_system_configuration_details': 'fileSystemConfigurationDetails' } @@ -153,6 +159,7 @@ def __init__(self, **kwargs): self._storage_size_in_gbs = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._data_collection_options = None self._file_system_configuration_details = None @@ -551,6 +558,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateCloudVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdateCloudVmClusterDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateCloudVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdateCloudVmClusterDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def data_collection_options(self): """ diff --git a/src/oci/database/models/update_db_system_details.py b/src/oci/database/models/update_db_system_details.py index a0d0208a7..e4c9ddad7 100644 --- a/src/oci/database/models/update_db_system_details.py +++ b/src/oci/database/models/update_db_system_details.py @@ -58,6 +58,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateDbSystemDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateDbSystemDetails. + :type security_attributes: dict(str, dict(str, object)) + :param shape: The value to assign to the shape property of this UpdateDbSystemDetails. :type shape: str @@ -92,6 +96,7 @@ def __init__(self, **kwargs): 'reco_storage_size_in_gbs': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'shape': 'str', 'nsg_ids': 'list[str]', 'backup_network_nsg_ids': 'list[str]', @@ -108,6 +113,7 @@ def __init__(self, **kwargs): 'reco_storage_size_in_gbs': 'recoStorageSizeInGBs', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'shape': 'shape', 'nsg_ids': 'nsgIds', 'backup_network_nsg_ids': 'backupNetworkNsgIds', @@ -123,6 +129,7 @@ def __init__(self, **kwargs): self._reco_storage_size_in_gbs = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._shape = None self._nsg_ids = None self._backup_network_nsg_ids = None @@ -310,6 +317,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateDbSystemDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdateDbSystemDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateDbSystemDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdateDbSystemDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def shape(self): """ diff --git a/src/oci/database/models/update_exadb_vm_cluster_details.py b/src/oci/database/models/update_exadb_vm_cluster_details.py index 58ea6f0d6..6b8293c8d 100644 --- a/src/oci/database/models/update_exadb_vm_cluster_details.py +++ b/src/oci/database/models/update_exadb_vm_cluster_details.py @@ -89,6 +89,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateExadbVmClusterDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateExadbVmClusterDetails. + :type security_attributes: dict(str, dict(str, object)) + :param data_collection_options: The value to assign to the data_collection_options property of this UpdateExadbVmClusterDetails. :type data_collection_options: oci.database.models.DataCollectionOptions @@ -119,6 +123,7 @@ def __init__(self, **kwargs): 'backup_network_nsg_ids': 'list[str]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'data_collection_options': 'DataCollectionOptions', 'system_version': 'str', 'grid_image_id': 'str', @@ -137,6 +142,7 @@ def __init__(self, **kwargs): 'backup_network_nsg_ids': 'backupNetworkNsgIds', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'data_collection_options': 'dataCollectionOptions', 'system_version': 'systemVersion', 'grid_image_id': 'gridImageId', @@ -154,6 +160,7 @@ def __init__(self, **kwargs): self._backup_network_nsg_ids = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._data_collection_options = None self._system_version = None self._grid_image_id = None @@ -458,6 +465,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateExadbVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdateExadbVmClusterDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateExadbVmClusterDetails. + Security Attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdateExadbVmClusterDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def data_collection_options(self): """ diff --git a/src/oci/integration/integration_instance_client.py b/src/oci/integration/integration_instance_client.py index 8841a38d5..d1893de50 100644 --- a/src/oci/integration/integration_instance_client.py +++ b/src/oci/integration/integration_instance_client.py @@ -796,6 +796,125 @@ def delete_integration_instance(self, integration_instance_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def disaster_recovery_failover(self, integration_instance_id, **kwargs): + """ + Allows failover for disaster recovery. Called in the context of integration instance in that region. + Upon calling the failover api in the region where given instance was created, + the intigration instance if primary will be switched to standby and crossRegion integration instance + will be switched to primary and vice-versa. + + + :param str integration_instance_id: (required) + Unique Integration Instance identifier. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case + of a timeout or server error without risk of executing that same action + again. Retry tokens expire after 24 hours, but can be invalidated before + then due to conflicting operations. For example, if a resource has been + deleted and purged from the system, then a retry of the original creation + request might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :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 disaster_recovery_failover API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['integrationInstanceId'] + resource_path = "/integrationInstances/{integrationInstanceId}/actions/failover" + method = "POST" + operation_name = "disaster_recovery_failover" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/integration/20190131/IntegrationInstance/DisasterRecoveryFailover" + + # 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"disaster_recovery_failover got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "integrationInstanceId": integration_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "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 enable_process_automation(self, integration_instance_id, **kwargs): """ Enable Process Automation for given Integration Instance diff --git a/src/oci/integration/integration_instance_client_composite_operations.py b/src/oci/integration/integration_instance_client_composite_operations.py index ee9a71252..aca52e202 100644 --- a/src/oci/integration/integration_instance_client_composite_operations.py +++ b/src/oci/integration/integration_instance_client_composite_operations.py @@ -279,6 +279,45 @@ def delete_integration_instance_and_wait_for_state(self, integration_instance_id except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def disaster_recovery_failover_and_wait_for_state(self, integration_instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.integration.IntegrationInstanceClient.disaster_recovery_failover` and waits for the :py:class:`~oci.integration.models.WorkRequest` + to enter the given state(s). + + :param str integration_instance_id: (required) + Unique Integration Instance identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.integration.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.integration.IntegrationInstanceClient.disaster_recovery_failover` + + :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.disaster_recovery_failover(integration_instance_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def enable_process_automation_and_wait_for_state(self, integration_instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.integration.IntegrationInstanceClient.enable_process_automation` and waits for the :py:class:`~oci.integration.models.WorkRequest` diff --git a/src/oci/integration/models/__init__.py b/src/oci/integration/models/__init__.py index ec4fd2180..b59e9a494 100644 --- a/src/oci/integration/models/__init__.py +++ b/src/oci/integration/models/__init__.py @@ -13,7 +13,9 @@ from .change_private_endpoint_outbound_connection_details import ChangePrivateEndpointOutboundConnectionDetails from .create_custom_endpoint_details import CreateCustomEndpointDetails from .create_integration_instance_details import CreateIntegrationInstanceDetails +from .cross_region_integration_instance_details import CrossRegionIntegrationInstanceDetails from .custom_endpoint_details import CustomEndpointDetails +from .disaster_recovery_details import DisasterRecoveryDetails from .extend_data_retention_details import ExtendDataRetentionDetails from .idcs_info_details import IdcsInfoDetails from .integration_instance import IntegrationInstance @@ -41,7 +43,9 @@ "ChangePrivateEndpointOutboundConnectionDetails": ChangePrivateEndpointOutboundConnectionDetails, "CreateCustomEndpointDetails": CreateCustomEndpointDetails, "CreateIntegrationInstanceDetails": CreateIntegrationInstanceDetails, + "CrossRegionIntegrationInstanceDetails": CrossRegionIntegrationInstanceDetails, "CustomEndpointDetails": CustomEndpointDetails, + "DisasterRecoveryDetails": DisasterRecoveryDetails, "ExtendDataRetentionDetails": ExtendDataRetentionDetails, "IdcsInfoDetails": IdcsInfoDetails, "IntegrationInstance": IntegrationInstance, diff --git a/src/oci/integration/models/create_integration_instance_details.py b/src/oci/integration/models/create_integration_instance_details.py index 1d5024593..3f5cfa774 100644 --- a/src/oci/integration/models/create_integration_instance_details.py +++ b/src/oci/integration/models/create_integration_instance_details.py @@ -119,6 +119,10 @@ def __init__(self, **kwargs): The value to assign to the is_file_server_enabled property of this CreateIntegrationInstanceDetails. :type is_file_server_enabled: bool + :param is_disaster_recovery_enabled: + The value to assign to the is_disaster_recovery_enabled property of this CreateIntegrationInstanceDetails. + :type is_disaster_recovery_enabled: bool + :param network_endpoint_details: The value to assign to the network_endpoint_details property of this CreateIntegrationInstanceDetails. :type network_endpoint_details: oci.integration.models.NetworkEndpointDetails @@ -147,6 +151,7 @@ def __init__(self, **kwargs): 'alternate_custom_endpoints': 'list[CreateCustomEndpointDetails]', 'consumption_model': 'str', 'is_file_server_enabled': 'bool', + 'is_disaster_recovery_enabled': 'bool', 'network_endpoint_details': 'NetworkEndpointDetails', 'shape': 'str', 'domain_id': 'str' @@ -166,6 +171,7 @@ def __init__(self, **kwargs): 'alternate_custom_endpoints': 'alternateCustomEndpoints', 'consumption_model': 'consumptionModel', 'is_file_server_enabled': 'isFileServerEnabled', + 'is_disaster_recovery_enabled': 'isDisasterRecoveryEnabled', 'network_endpoint_details': 'networkEndpointDetails', 'shape': 'shape', 'domain_id': 'domainId' @@ -184,6 +190,7 @@ def __init__(self, **kwargs): self._alternate_custom_endpoints = None self._consumption_model = None self._is_file_server_enabled = None + self._is_disaster_recovery_enabled = None self._network_endpoint_details = None self._shape = None self._domain_id = None @@ -524,6 +531,30 @@ def is_file_server_enabled(self, is_file_server_enabled): """ self._is_file_server_enabled = is_file_server_enabled + @property + def is_disaster_recovery_enabled(self): + """ + Gets the is_disaster_recovery_enabled of this CreateIntegrationInstanceDetails. + Is Disaster Recovery enabled or not. + + + :return: The is_disaster_recovery_enabled of this CreateIntegrationInstanceDetails. + :rtype: bool + """ + return self._is_disaster_recovery_enabled + + @is_disaster_recovery_enabled.setter + def is_disaster_recovery_enabled(self, is_disaster_recovery_enabled): + """ + Sets the is_disaster_recovery_enabled of this CreateIntegrationInstanceDetails. + Is Disaster Recovery enabled or not. + + + :param is_disaster_recovery_enabled: The is_disaster_recovery_enabled of this CreateIntegrationInstanceDetails. + :type: bool + """ + self._is_disaster_recovery_enabled = is_disaster_recovery_enabled + @property def network_endpoint_details(self): """ diff --git a/src/oci/integration/models/cross_region_integration_instance_details.py b/src/oci/integration/models/cross_region_integration_instance_details.py new file mode 100644 index 000000000..c8672f5fb --- /dev/null +++ b/src/oci/integration/models/cross_region_integration_instance_details.py @@ -0,0 +1,185 @@ +# 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: 20190131 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CrossRegionIntegrationInstanceDetails(object): + """ + Details of integration instance created in cross region for disaster recovery. + """ + + #: A constant which can be used with the role property of a CrossRegionIntegrationInstanceDetails. + #: This constant has a value of "PRIMARY" + ROLE_PRIMARY = "PRIMARY" + + #: A constant which can be used with the role property of a CrossRegionIntegrationInstanceDetails. + #: This constant has a value of "SECONDARY" + ROLE_SECONDARY = "SECONDARY" + + #: A constant which can be used with the role property of a CrossRegionIntegrationInstanceDetails. + #: This constant has a value of "UNKNOWN" + ROLE_UNKNOWN = "UNKNOWN" + + def __init__(self, **kwargs): + """ + Initializes a new CrossRegionIntegrationInstanceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param role: + The value to assign to the role property of this CrossRegionIntegrationInstanceDetails. + Allowed values for this property are: "PRIMARY", "SECONDARY", "UNKNOWN", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type role: str + + :param id: + The value to assign to the id property of this CrossRegionIntegrationInstanceDetails. + :type id: str + + :param region: + The value to assign to the region property of this CrossRegionIntegrationInstanceDetails. + :type region: str + + :param time_role_changed: + The value to assign to the time_role_changed property of this CrossRegionIntegrationInstanceDetails. + :type time_role_changed: datetime + + """ + self.swagger_types = { + 'role': 'str', + 'id': 'str', + 'region': 'str', + 'time_role_changed': 'datetime' + } + + self.attribute_map = { + 'role': 'role', + 'id': 'id', + 'region': 'region', + 'time_role_changed': 'timeRoleChanged' + } + + self._role = None + self._id = None + self._region = None + self._time_role_changed = None + + @property + def role(self): + """ + Gets the role of this CrossRegionIntegrationInstanceDetails. + Role of the integration instance in the region + + Allowed values for this property are: "PRIMARY", "SECONDARY", "UNKNOWN", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The role of this CrossRegionIntegrationInstanceDetails. + :rtype: str + """ + return self._role + + @role.setter + def role(self, role): + """ + Sets the role of this CrossRegionIntegrationInstanceDetails. + Role of the integration instance in the region + + + :param role: The role of this CrossRegionIntegrationInstanceDetails. + :type: str + """ + allowed_values = ["PRIMARY", "SECONDARY", "UNKNOWN"] + if not value_allowed_none_or_none_sentinel(role, allowed_values): + role = 'UNKNOWN_ENUM_VALUE' + self._role = role + + @property + def id(self): + """ + Gets the id of this CrossRegionIntegrationInstanceDetails. + Cross region integration instance identifier + + + :return: The id of this CrossRegionIntegrationInstanceDetails. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this CrossRegionIntegrationInstanceDetails. + Cross region integration instance identifier + + + :param id: The id of this CrossRegionIntegrationInstanceDetails. + :type: str + """ + self._id = id + + @property + def region(self): + """ + Gets the region of this CrossRegionIntegrationInstanceDetails. + Cross region where integration instance is created + + + :return: The region of this CrossRegionIntegrationInstanceDetails. + :rtype: str + """ + return self._region + + @region.setter + def region(self, region): + """ + Sets the region of this CrossRegionIntegrationInstanceDetails. + Cross region where integration instance is created + + + :param region: The region of this CrossRegionIntegrationInstanceDetails. + :type: str + """ + self._region = region + + @property + def time_role_changed(self): + """ + Gets the time_role_changed of this CrossRegionIntegrationInstanceDetails. + Time when cross region integration instance role was changed + + + :return: The time_role_changed of this CrossRegionIntegrationInstanceDetails. + :rtype: datetime + """ + return self._time_role_changed + + @time_role_changed.setter + def time_role_changed(self, time_role_changed): + """ + Sets the time_role_changed of this CrossRegionIntegrationInstanceDetails. + Time when cross region integration instance role was changed + + + :param time_role_changed: The time_role_changed of this CrossRegionIntegrationInstanceDetails. + :type: datetime + """ + self._time_role_changed = time_role_changed + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/integration/models/disaster_recovery_details.py b/src/oci/integration/models/disaster_recovery_details.py new file mode 100644 index 000000000..53653e2ad --- /dev/null +++ b/src/oci/integration/models/disaster_recovery_details.py @@ -0,0 +1,150 @@ +# 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: 20190131 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DisasterRecoveryDetails(object): + """ + Disaster recovery details for the integration instance created in the region. + """ + + #: A constant which can be used with the role property of a DisasterRecoveryDetails. + #: This constant has a value of "PRIMARY" + ROLE_PRIMARY = "PRIMARY" + + #: A constant which can be used with the role property of a DisasterRecoveryDetails. + #: This constant has a value of "SECONDARY" + ROLE_SECONDARY = "SECONDARY" + + #: A constant which can be used with the role property of a DisasterRecoveryDetails. + #: This constant has a value of "UNKNOWN" + ROLE_UNKNOWN = "UNKNOWN" + + def __init__(self, **kwargs): + """ + Initializes a new DisasterRecoveryDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param role: + The value to assign to the role property of this DisasterRecoveryDetails. + Allowed values for this property are: "PRIMARY", "SECONDARY", "UNKNOWN", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type role: str + + :param regional_instance_url: + The value to assign to the regional_instance_url property of this DisasterRecoveryDetails. + :type regional_instance_url: str + + :param cross_region_integration_instance_details: + The value to assign to the cross_region_integration_instance_details property of this DisasterRecoveryDetails. + :type cross_region_integration_instance_details: oci.integration.models.CrossRegionIntegrationInstanceDetails + + """ + self.swagger_types = { + 'role': 'str', + 'regional_instance_url': 'str', + 'cross_region_integration_instance_details': 'CrossRegionIntegrationInstanceDetails' + } + + self.attribute_map = { + 'role': 'role', + 'regional_instance_url': 'regionalInstanceUrl', + 'cross_region_integration_instance_details': 'crossRegionIntegrationInstanceDetails' + } + + self._role = None + self._regional_instance_url = None + self._cross_region_integration_instance_details = None + + @property + def role(self): + """ + **[Required]** Gets the role of this DisasterRecoveryDetails. + Role of the integration instance in the region + + Allowed values for this property are: "PRIMARY", "SECONDARY", "UNKNOWN", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The role of this DisasterRecoveryDetails. + :rtype: str + """ + return self._role + + @role.setter + def role(self, role): + """ + Sets the role of this DisasterRecoveryDetails. + Role of the integration instance in the region + + + :param role: The role of this DisasterRecoveryDetails. + :type: str + """ + allowed_values = ["PRIMARY", "SECONDARY", "UNKNOWN"] + if not value_allowed_none_or_none_sentinel(role, allowed_values): + role = 'UNKNOWN_ENUM_VALUE' + self._role = role + + @property + def regional_instance_url(self): + """ + **[Required]** Gets the regional_instance_url of this DisasterRecoveryDetails. + Region specific instance url for the integration instance in the region + + + :return: The regional_instance_url of this DisasterRecoveryDetails. + :rtype: str + """ + return self._regional_instance_url + + @regional_instance_url.setter + def regional_instance_url(self, regional_instance_url): + """ + Sets the regional_instance_url of this DisasterRecoveryDetails. + Region specific instance url for the integration instance in the region + + + :param regional_instance_url: The regional_instance_url of this DisasterRecoveryDetails. + :type: str + """ + self._regional_instance_url = regional_instance_url + + @property + def cross_region_integration_instance_details(self): + """ + **[Required]** Gets the cross_region_integration_instance_details of this DisasterRecoveryDetails. + + :return: The cross_region_integration_instance_details of this DisasterRecoveryDetails. + :rtype: oci.integration.models.CrossRegionIntegrationInstanceDetails + """ + return self._cross_region_integration_instance_details + + @cross_region_integration_instance_details.setter + def cross_region_integration_instance_details(self, cross_region_integration_instance_details): + """ + Sets the cross_region_integration_instance_details of this DisasterRecoveryDetails. + + :param cross_region_integration_instance_details: The cross_region_integration_instance_details of this DisasterRecoveryDetails. + :type: oci.integration.models.CrossRegionIntegrationInstanceDetails + """ + self._cross_region_integration_instance_details = cross_region_integration_instance_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/integration/models/integration_instance.py b/src/oci/integration/models/integration_instance.py index dab66dd36..16a0063ed 100644 --- a/src/oci/integration/models/integration_instance.py +++ b/src/oci/integration/models/integration_instance.py @@ -132,6 +132,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str + :param lifecycle_details: + The value to assign to the lifecycle_details property of this IntegrationInstance. + :type lifecycle_details: str + :param state_message: The value to assign to the state_message property of this IntegrationInstance. :type state_message: str @@ -208,6 +212,14 @@ def __init__(self, **kwargs): The value to assign to the private_endpoint_outbound_connection property of this IntegrationInstance. :type private_endpoint_outbound_connection: oci.integration.models.OutboundConnection + :param is_disaster_recovery_enabled: + The value to assign to the is_disaster_recovery_enabled property of this IntegrationInstance. + :type is_disaster_recovery_enabled: bool + + :param disaster_recovery_details: + The value to assign to the disaster_recovery_details property of this IntegrationInstance. + :type disaster_recovery_details: oci.integration.models.DisasterRecoveryDetails + :param data_retention_period: The value to assign to the data_retention_period property of this IntegrationInstance. Allowed values for this property are: "MONTHS_1", "MONTHS_3", "MONTHS_6", 'UNKNOWN_ENUM_VALUE'. @@ -223,6 +235,7 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_updated': 'datetime', 'lifecycle_state': 'str', + 'lifecycle_details': 'str', 'state_message': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', @@ -241,6 +254,8 @@ def __init__(self, **kwargs): 'attachments': 'list[AttachmentDetails]', 'shape': 'str', 'private_endpoint_outbound_connection': 'OutboundConnection', + 'is_disaster_recovery_enabled': 'bool', + 'disaster_recovery_details': 'DisasterRecoveryDetails', 'data_retention_period': 'str' } @@ -252,6 +267,7 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', 'state_message': 'stateMessage', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', @@ -270,6 +286,8 @@ def __init__(self, **kwargs): 'attachments': 'attachments', 'shape': 'shape', 'private_endpoint_outbound_connection': 'privateEndpointOutboundConnection', + 'is_disaster_recovery_enabled': 'isDisasterRecoveryEnabled', + 'disaster_recovery_details': 'disasterRecoveryDetails', 'data_retention_period': 'dataRetentionPeriod' } @@ -280,6 +298,7 @@ def __init__(self, **kwargs): self._time_created = None self._time_updated = None self._lifecycle_state = None + self._lifecycle_details = None self._state_message = None self._freeform_tags = None self._defined_tags = None @@ -298,6 +317,8 @@ def __init__(self, **kwargs): self._attachments = None self._shape = None self._private_endpoint_outbound_connection = None + self._is_disaster_recovery_enabled = None + self._disaster_recovery_details = None self._data_retention_period = None @property @@ -484,6 +505,30 @@ def lifecycle_state(self, lifecycle_state): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this IntegrationInstance. + Additional details of lifecycleState or substates + + + :return: The lifecycle_details of this IntegrationInstance. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this IntegrationInstance. + Additional details of lifecycleState or substates + + + :param lifecycle_details: The lifecycle_details of this IntegrationInstance. + :type: str + """ + self._lifecycle_details = lifecycle_details + @property def state_message(self): """ @@ -922,6 +967,50 @@ def private_endpoint_outbound_connection(self, private_endpoint_outbound_connect """ self._private_endpoint_outbound_connection = private_endpoint_outbound_connection + @property + def is_disaster_recovery_enabled(self): + """ + Gets the is_disaster_recovery_enabled of this IntegrationInstance. + Is Disaster Recovery enabled for the integrationInstance + + + :return: The is_disaster_recovery_enabled of this IntegrationInstance. + :rtype: bool + """ + return self._is_disaster_recovery_enabled + + @is_disaster_recovery_enabled.setter + def is_disaster_recovery_enabled(self, is_disaster_recovery_enabled): + """ + Sets the is_disaster_recovery_enabled of this IntegrationInstance. + Is Disaster Recovery enabled for the integrationInstance + + + :param is_disaster_recovery_enabled: The is_disaster_recovery_enabled of this IntegrationInstance. + :type: bool + """ + self._is_disaster_recovery_enabled = is_disaster_recovery_enabled + + @property + def disaster_recovery_details(self): + """ + Gets the disaster_recovery_details of this IntegrationInstance. + + :return: The disaster_recovery_details of this IntegrationInstance. + :rtype: oci.integration.models.DisasterRecoveryDetails + """ + return self._disaster_recovery_details + + @disaster_recovery_details.setter + def disaster_recovery_details(self, disaster_recovery_details): + """ + Sets the disaster_recovery_details of this IntegrationInstance. + + :param disaster_recovery_details: The disaster_recovery_details of this IntegrationInstance. + :type: oci.integration.models.DisasterRecoveryDetails + """ + self._disaster_recovery_details = disaster_recovery_details + @property def data_retention_period(self): """ diff --git a/src/oci/integration/models/integration_instance_summary.py b/src/oci/integration/models/integration_instance_summary.py index 173e7accf..e9adb950c 100644 --- a/src/oci/integration/models/integration_instance_summary.py +++ b/src/oci/integration/models/integration_instance_summary.py @@ -132,6 +132,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str + :param lifecycle_details: + The value to assign to the lifecycle_details property of this IntegrationInstanceSummary. + :type lifecycle_details: str + :param state_message: The value to assign to the state_message property of this IntegrationInstanceSummary. :type state_message: str @@ -200,6 +204,10 @@ def __init__(self, **kwargs): The value to assign to the private_endpoint_outbound_connection property of this IntegrationInstanceSummary. :type private_endpoint_outbound_connection: oci.integration.models.OutboundConnection + :param is_disaster_recovery_enabled: + The value to assign to the is_disaster_recovery_enabled property of this IntegrationInstanceSummary. + :type is_disaster_recovery_enabled: bool + :param data_retention_period: The value to assign to the data_retention_period property of this IntegrationInstanceSummary. Allowed values for this property are: "MONTHS_1", "MONTHS_3", "MONTHS_6", 'UNKNOWN_ENUM_VALUE'. @@ -215,6 +223,7 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_updated': 'datetime', 'lifecycle_state': 'str', + 'lifecycle_details': 'str', 'state_message': 'str', 'is_byol': 'bool', 'instance_url': 'str', @@ -231,6 +240,7 @@ def __init__(self, **kwargs): 'system_tags': 'dict(str, dict(str, object))', 'shape': 'str', 'private_endpoint_outbound_connection': 'OutboundConnection', + 'is_disaster_recovery_enabled': 'bool', 'data_retention_period': 'str' } @@ -242,6 +252,7 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', 'state_message': 'stateMessage', 'is_byol': 'isByol', 'instance_url': 'instanceUrl', @@ -258,6 +269,7 @@ def __init__(self, **kwargs): 'system_tags': 'systemTags', 'shape': 'shape', 'private_endpoint_outbound_connection': 'privateEndpointOutboundConnection', + 'is_disaster_recovery_enabled': 'isDisasterRecoveryEnabled', 'data_retention_period': 'dataRetentionPeriod' } @@ -268,6 +280,7 @@ def __init__(self, **kwargs): self._time_created = None self._time_updated = None self._lifecycle_state = None + self._lifecycle_details = None self._state_message = None self._is_byol = None self._instance_url = None @@ -284,6 +297,7 @@ def __init__(self, **kwargs): self._system_tags = None self._shape = None self._private_endpoint_outbound_connection = None + self._is_disaster_recovery_enabled = None self._data_retention_period = None @property @@ -470,6 +484,30 @@ def lifecycle_state(self, lifecycle_state): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this IntegrationInstanceSummary. + Additional details of lifecycleState or substates + + + :return: The lifecycle_details of this IntegrationInstanceSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this IntegrationInstanceSummary. + Additional details of lifecycleState or substates + + + :param lifecycle_details: The lifecycle_details of this IntegrationInstanceSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + @property def state_message(self): """ @@ -864,6 +902,30 @@ def private_endpoint_outbound_connection(self, private_endpoint_outbound_connect """ self._private_endpoint_outbound_connection = private_endpoint_outbound_connection + @property + def is_disaster_recovery_enabled(self): + """ + Gets the is_disaster_recovery_enabled of this IntegrationInstanceSummary. + Is Disaster Recovery enabled for the integrationInstance + + + :return: The is_disaster_recovery_enabled of this IntegrationInstanceSummary. + :rtype: bool + """ + return self._is_disaster_recovery_enabled + + @is_disaster_recovery_enabled.setter + def is_disaster_recovery_enabled(self, is_disaster_recovery_enabled): + """ + Sets the is_disaster_recovery_enabled of this IntegrationInstanceSummary. + Is Disaster Recovery enabled for the integrationInstance + + + :param is_disaster_recovery_enabled: The is_disaster_recovery_enabled of this IntegrationInstanceSummary. + :type: bool + """ + self._is_disaster_recovery_enabled = is_disaster_recovery_enabled + @property def data_retention_period(self): """ diff --git a/src/oci/integration/models/work_request.py b/src/oci/integration/models/work_request.py index 0c3093fee..a053e8380 100644 --- a/src/oci/integration/models/work_request.py +++ b/src/oci/integration/models/work_request.py @@ -47,6 +47,10 @@ class WorkRequest(object): #: This constant has a value of "EXTEND_DATA_RETENTION" OPERATION_TYPE_EXTEND_DATA_RETENTION = "EXTEND_DATA_RETENTION" + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DISASTER_RECOVERY_FAILOVER" + OPERATION_TYPE_DISASTER_RECOVERY_FAILOVER = "DISASTER_RECOVERY_FAILOVER" + #: A constant which can be used with the operation_type property of a WorkRequest. #: This constant has a value of "CREATE_CUSTOM_ENDPOINT" OPERATION_TYPE_CREATE_CUSTOM_ENDPOINT = "CREATE_CUSTOM_ENDPOINT" @@ -86,7 +90,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequest. - Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -165,7 +169,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequest. Type of the work request. - Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -184,7 +188,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequest. :type: str """ - allowed_values = ["CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT"] + allowed_values = ["CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/integration/models/work_request_summary.py b/src/oci/integration/models/work_request_summary.py index 68dfa50f1..960de2be3 100644 --- a/src/oci/integration/models/work_request_summary.py +++ b/src/oci/integration/models/work_request_summary.py @@ -47,6 +47,10 @@ class WorkRequestSummary(object): #: This constant has a value of "EXTEND_DATA_RETENTION" OPERATION_TYPE_EXTEND_DATA_RETENTION = "EXTEND_DATA_RETENTION" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DISASTER_RECOVERY_FAILOVER" + OPERATION_TYPE_DISASTER_RECOVERY_FAILOVER = "DISASTER_RECOVERY_FAILOVER" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. #: This constant has a value of "CREATE_CUSTOM_ENDPOINT" OPERATION_TYPE_CREATE_CUSTOM_ENDPOINT = "CREATE_CUSTOM_ENDPOINT" @@ -86,7 +90,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequestSummary. - Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -165,7 +169,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequestSummary. Type of the work request. - Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -184,7 +188,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequestSummary. :type: str """ - allowed_values = ["CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT"] + allowed_values = ["CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/load_balancer/models/create_load_balancer_details.py b/src/oci/load_balancer/models/create_load_balancer_details.py index a144725d0..87f3fc2a5 100644 --- a/src/oci/load_balancer/models/create_load_balancer_details.py +++ b/src/oci/load_balancer/models/create_load_balancer_details.py @@ -111,6 +111,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateLoadBalancerDetails. :type defined_tags: dict(str, dict(str, object)) + :param zpr_tags: + The value to assign to the zpr_tags property of this CreateLoadBalancerDetails. + :type zpr_tags: dict(str, dict(str, object)) + :param rule_sets: The value to assign to the rule_sets property of this CreateLoadBalancerDetails. :type rule_sets: dict(str, RuleSetDetails) @@ -137,6 +141,7 @@ def __init__(self, **kwargs): 'path_route_sets': 'dict(str, PathRouteSetDetails)', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'zpr_tags': 'dict(str, dict(str, object))', 'rule_sets': 'dict(str, RuleSetDetails)' } @@ -161,6 +166,7 @@ def __init__(self, **kwargs): 'path_route_sets': 'pathRouteSets', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'zpr_tags': 'zprTags', 'rule_sets': 'ruleSets' } @@ -184,6 +190,7 @@ def __init__(self, **kwargs): self._path_route_sets = None self._freeform_tags = None self._defined_tags = None + self._zpr_tags = None self._rule_sets = None @property @@ -827,6 +834,34 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def zpr_tags(self): + """ + Gets the zpr_tags of this CreateLoadBalancerDetails. + Extended Defined tags for ZPR for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\", \"usagetype\" : \"zpr\"}}}` + + + :return: The zpr_tags of this CreateLoadBalancerDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._zpr_tags + + @zpr_tags.setter + def zpr_tags(self, zpr_tags): + """ + Sets the zpr_tags of this CreateLoadBalancerDetails. + Extended Defined tags for ZPR for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\", \"usagetype\" : \"zpr\"}}}` + + + :param zpr_tags: The zpr_tags of this CreateLoadBalancerDetails. + :type: dict(str, dict(str, object)) + """ + self._zpr_tags = zpr_tags + @property def rule_sets(self): """ diff --git a/src/oci/load_balancer/models/load_balancer.py b/src/oci/load_balancer/models/load_balancer.py index 5631c7ce0..4ce74f3a6 100644 --- a/src/oci/load_balancer/models/load_balancer.py +++ b/src/oci/load_balancer/models/load_balancer.py @@ -144,6 +144,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this LoadBalancer. :type defined_tags: dict(str, dict(str, object)) + :param zpr_tags: + The value to assign to the zpr_tags property of this LoadBalancer. + :type zpr_tags: dict(str, dict(str, object)) + :param system_tags: The value to assign to the system_tags property of this LoadBalancer. :type system_tags: dict(str, dict(str, object)) @@ -180,6 +184,7 @@ def __init__(self, **kwargs): 'path_route_sets': 'dict(str, PathRouteSet)', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'zpr_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'rule_sets': 'dict(str, RuleSet)', 'routing_policies': 'dict(str, RoutingPolicy)' @@ -208,6 +213,7 @@ def __init__(self, **kwargs): 'path_route_sets': 'pathRouteSets', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'zpr_tags': 'zprTags', 'system_tags': 'systemTags', 'rule_sets': 'ruleSets', 'routing_policies': 'routingPolicies' @@ -235,6 +241,7 @@ def __init__(self, **kwargs): self._path_route_sets = None self._freeform_tags = None self._defined_tags = None + self._zpr_tags = None self._system_tags = None self._rule_sets = None self._routing_policies = None @@ -899,6 +906,34 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def zpr_tags(self): + """ + Gets the zpr_tags of this LoadBalancer. + Extended Defined tags for ZPR for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\", \"usagetype\" : \"zpr\"}}}` + + + :return: The zpr_tags of this LoadBalancer. + :rtype: dict(str, dict(str, object)) + """ + return self._zpr_tags + + @zpr_tags.setter + def zpr_tags(self, zpr_tags): + """ + Sets the zpr_tags of this LoadBalancer. + Extended Defined tags for ZPR for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\", \"usagetype\" : \"zpr\"}}}` + + + :param zpr_tags: The zpr_tags of this LoadBalancer. + :type: dict(str, dict(str, object)) + """ + self._zpr_tags = zpr_tags + @property def system_tags(self): """ diff --git a/src/oci/load_balancer/models/update_load_balancer_details.py b/src/oci/load_balancer/models/update_load_balancer_details.py index 603560dbb..db64b4fdc 100644 --- a/src/oci/load_balancer/models/update_load_balancer_details.py +++ b/src/oci/load_balancer/models/update_load_balancer_details.py @@ -46,6 +46,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateLoadBalancerDetails. :type defined_tags: dict(str, dict(str, object)) + :param zpr_tags: + The value to assign to the zpr_tags property of this UpdateLoadBalancerDetails. + :type zpr_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'display_name': 'str', @@ -53,7 +57,8 @@ def __init__(self, **kwargs): 'is_request_id_enabled': 'bool', 'request_id_header': 'str', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'zpr_tags': 'dict(str, dict(str, object))' } self.attribute_map = { @@ -62,7 +67,8 @@ def __init__(self, **kwargs): 'is_request_id_enabled': 'isRequestIdEnabled', 'request_id_header': 'requestIdHeader', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'zpr_tags': 'zprTags' } self._display_name = None @@ -71,6 +77,7 @@ def __init__(self, **kwargs): self._request_id_header = None self._freeform_tags = None self._defined_tags = None + self._zpr_tags = None @property def display_name(self): @@ -308,6 +315,34 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def zpr_tags(self): + """ + Gets the zpr_tags of this UpdateLoadBalancerDetails. + Extended Defined tags for ZPR for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\", \"usagetype\" : \"zpr\"}}}` + + + :return: The zpr_tags of this UpdateLoadBalancerDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._zpr_tags + + @zpr_tags.setter + def zpr_tags(self, zpr_tags): + """ + Sets the zpr_tags of this UpdateLoadBalancerDetails. + Extended Defined tags for ZPR for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\":\"42\",\"mode\":\"audit\", \"usagetype\" : \"zpr\"}}}` + + + :param zpr_tags: The zpr_tags of this UpdateLoadBalancerDetails. + :type: dict(str, dict(str, object)) + """ + self._zpr_tags = zpr_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/network_load_balancer/models/create_network_load_balancer_details.py b/src/oci/network_load_balancer/models/create_network_load_balancer_details.py index a1a6a3f84..2b61ae303 100644 --- a/src/oci/network_load_balancer/models/create_network_load_balancer_details.py +++ b/src/oci/network_load_balancer/models/create_network_load_balancer_details.py @@ -111,6 +111,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateNetworkLoadBalancerDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateNetworkLoadBalancerDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'compartment_id': 'str', @@ -128,7 +132,8 @@ def __init__(self, **kwargs): 'listeners': 'dict(str, ListenerDetails)', 'backend_sets': 'dict(str, BackendSetDetails)', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { @@ -147,7 +152,8 @@ def __init__(self, **kwargs): 'listeners': 'listeners', 'backend_sets': 'backendSets', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._compartment_id = None @@ -166,6 +172,7 @@ def __init__(self, **kwargs): self._backend_sets = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def compartment_id(self): @@ -640,6 +647,40 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateNetworkLoadBalancerDetails. + ZPR 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: `{\"oracle-zpr\": {\"td\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CreateNetworkLoadBalancerDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateNetworkLoadBalancerDetails. + ZPR 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: `{\"oracle-zpr\": {\"td\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CreateNetworkLoadBalancerDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/network_load_balancer/models/network_load_balancer.py b/src/oci/network_load_balancer/models/network_load_balancer.py index 8ce6f84f0..55f14356c 100644 --- a/src/oci/network_load_balancer/models/network_load_balancer.py +++ b/src/oci/network_load_balancer/models/network_load_balancer.py @@ -142,6 +142,10 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this NetworkLoadBalancer. :type freeform_tags: dict(str, str) + :param security_attributes: + The value to assign to the security_attributes property of this NetworkLoadBalancer. + :type security_attributes: dict(str, dict(str, object)) + :param defined_tags: The value to assign to the defined_tags property of this NetworkLoadBalancer. :type defined_tags: dict(str, dict(str, object)) @@ -169,6 +173,7 @@ def __init__(self, **kwargs): 'listeners': 'dict(str, Listener)', 'backend_sets': 'dict(str, BackendSet)', 'freeform_tags': 'dict(str, str)', + 'security_attributes': 'dict(str, dict(str, object))', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' } @@ -191,6 +196,7 @@ def __init__(self, **kwargs): 'listeners': 'listeners', 'backend_sets': 'backendSets', 'freeform_tags': 'freeformTags', + 'security_attributes': 'securityAttributes', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' } @@ -212,6 +218,7 @@ def __init__(self, **kwargs): self._listeners = None self._backend_sets = None self._freeform_tags = None + self._security_attributes = None self._defined_tags = None self._system_tags = None @@ -733,6 +740,40 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this NetworkLoadBalancer. + ZPR 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: `{ \"oracle-zpr\": { \"td\": { \"value\": \"42\", \"mode\": \"audit\" } } }` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this NetworkLoadBalancer. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this NetworkLoadBalancer. + ZPR 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: `{ \"oracle-zpr\": { \"td\": { \"value\": \"42\", \"mode\": \"audit\" } } }` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this NetworkLoadBalancer. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def defined_tags(self): """ diff --git a/src/oci/network_load_balancer/models/network_load_balancer_summary.py b/src/oci/network_load_balancer/models/network_load_balancer_summary.py index b3c4b21a9..4c62ef5e4 100644 --- a/src/oci/network_load_balancer/models/network_load_balancer_summary.py +++ b/src/oci/network_load_balancer/models/network_load_balancer_summary.py @@ -128,6 +128,10 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this NetworkLoadBalancerSummary. :type freeform_tags: dict(str, str) + :param security_attributes: + The value to assign to the security_attributes property of this NetworkLoadBalancerSummary. + :type security_attributes: dict(str, dict(str, object)) + :param defined_tags: The value to assign to the defined_tags property of this NetworkLoadBalancerSummary. :type defined_tags: dict(str, dict(str, object)) @@ -155,6 +159,7 @@ def __init__(self, **kwargs): 'listeners': 'dict(str, Listener)', 'backend_sets': 'dict(str, BackendSet)', 'freeform_tags': 'dict(str, str)', + 'security_attributes': 'dict(str, dict(str, object))', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' } @@ -177,6 +182,7 @@ def __init__(self, **kwargs): 'listeners': 'listeners', 'backend_sets': 'backendSets', 'freeform_tags': 'freeformTags', + 'security_attributes': 'securityAttributes', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' } @@ -198,6 +204,7 @@ def __init__(self, **kwargs): self._listeners = None self._backend_sets = None self._freeform_tags = None + self._security_attributes = None self._defined_tags = None self._system_tags = None @@ -719,6 +726,40 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this NetworkLoadBalancerSummary. + ZPR 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: `{ \"oracle-zpr\": { \"td\": { \"value\": \"42\", \"mode\": \"audit\" } } }` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this NetworkLoadBalancerSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this NetworkLoadBalancerSummary. + ZPR 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: `{ \"oracle-zpr\": { \"td\": { \"value\": \"42\", \"mode\": \"audit\" } } }` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this NetworkLoadBalancerSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def defined_tags(self): """ diff --git a/src/oci/network_load_balancer/models/update_network_load_balancer_details.py b/src/oci/network_load_balancer/models/update_network_load_balancer_details.py index 470b5856c..c6357e4a2 100644 --- a/src/oci/network_load_balancer/models/update_network_load_balancer_details.py +++ b/src/oci/network_load_balancer/models/update_network_load_balancer_details.py @@ -67,6 +67,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateNetworkLoadBalancerDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateNetworkLoadBalancerDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'display_name': 'str', @@ -76,7 +80,8 @@ def __init__(self, **kwargs): 'subnet_ipv6_cidr': 'str', 'assigned_ipv6': 'str', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { @@ -87,7 +92,8 @@ def __init__(self, **kwargs): 'subnet_ipv6_cidr': 'subnetIpv6Cidr', 'assigned_ipv6': 'assignedIpv6', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._display_name = None @@ -98,6 +104,7 @@ def __init__(self, **kwargs): self._assigned_ipv6 = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def display_name(self): @@ -332,6 +339,40 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateNetworkLoadBalancerDetails. + ZPR 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: `{\"oracle-zpr\": {\"td\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdateNetworkLoadBalancerDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateNetworkLoadBalancerDetails. + ZPR 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: `{\"oracle-zpr\": {\"td\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdateNetworkLoadBalancerDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/regions_definitions.py b/src/oci/regions_definitions.py index f144dbfff..b86b55b73 100644 --- a/src/oci/regions_definitions.py +++ b/src/oci/regions_definitions.py @@ -65,6 +65,8 @@ 'str': 'eu-frankfurt-2', 'beg': 'eu-jovanovac-1', 'doh': 'me-dcc-doha-1', + 'ebb': 'us-somerset-1', + 'ebl': 'us-thames-1', 'avz': 'eu-dcc-zurich-1', 'avf': 'eu-crissier-1', 'ahu': 'me-abudhabi-3', @@ -146,6 +148,9 @@ 'me-dcc-doha-1': 'oc21', + 'us-somerset-1': 'oc23', + 'us-thames-1': 'oc23', + 'eu-dcc-zurich-1': 'oc24', 'eu-crissier-1': 'oc24', @@ -167,6 +172,7 @@ 'oc19': 'oraclecloud.eu', 'oc20': 'oraclecloud20.com', 'oc21': 'oraclecloud21.com', + 'oc23': 'oraclecloud23.com', 'oc24': 'oraclecloud24.com', 'oc26': 'oraclecloud26.com', 'oc29': 'oraclecloud29.com' @@ -234,6 +240,8 @@ 'eu-frankfurt-2', 'eu-jovanovac-1', 'me-dcc-doha-1', + 'us-somerset-1', + 'us-thames-1', 'eu-dcc-zurich-1', 'eu-crissier-1', 'me-abudhabi-3', diff --git a/src/oci/security_attribute/__init__.py b/src/oci/security_attribute/__init__.py new file mode 100644 index 000000000..07309d9e6 --- /dev/null +++ b/src/oci/security_attribute/__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: 20240815 + +from __future__ import absolute_import + + +from .security_attribute_client import SecurityAttributeClient +from .security_attribute_client_composite_operations import SecurityAttributeClientCompositeOperations +from . import models + +__all__ = ["SecurityAttributeClient", "SecurityAttributeClientCompositeOperations", "models"] diff --git a/src/oci/security_attribute/models/__init__.py b/src/oci/security_attribute/models/__init__.py new file mode 100644 index 000000000..f9c3266f5 --- /dev/null +++ b/src/oci/security_attribute/models/__init__.py @@ -0,0 +1,54 @@ +# 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: 20240815 + +from __future__ import absolute_import + +from .base_security_attribute_validator import BaseSecurityAttributeValidator +from .bulk_delete_security_attributes_details import BulkDeleteSecurityAttributesDetails +from .bulk_edit_resource import BulkEditResource +from .bulk_edit_security_attribute_details import BulkEditSecurityAttributeDetails +from .bulk_edit_security_attribute_operation_details import BulkEditSecurityAttributeOperationDetails +from .change_security_attribute_namespace_compartment_details import ChangeSecurityAttributeNamespaceCompartmentDetails +from .create_security_attribute_details import CreateSecurityAttributeDetails +from .create_security_attribute_namespace_details import CreateSecurityAttributeNamespaceDetails +from .default_security_attribute_validator import DefaultSecurityAttributeValidator +from .enum_security_attribute_validator import EnumSecurityAttributeValidator +from .security_attribute import SecurityAttribute +from .security_attribute_namespace import SecurityAttributeNamespace +from .security_attribute_namespace_summary import SecurityAttributeNamespaceSummary +from .security_attribute_summary import SecurityAttributeSummary +from .security_attribute_work_request import SecurityAttributeWorkRequest +from .security_attribute_work_request_error_summary import SecurityAttributeWorkRequestErrorSummary +from .security_attribute_work_request_log_summary import SecurityAttributeWorkRequestLogSummary +from .security_attribute_work_request_summary import SecurityAttributeWorkRequestSummary +from .update_security_attribute_details import UpdateSecurityAttributeDetails +from .update_security_attribute_namespace_details import UpdateSecurityAttributeNamespaceDetails +from .work_request_resource import WorkRequestResource + +# Maps type names to classes for security_attribute services. +security_attribute_type_mapping = { + "BaseSecurityAttributeValidator": BaseSecurityAttributeValidator, + "BulkDeleteSecurityAttributesDetails": BulkDeleteSecurityAttributesDetails, + "BulkEditResource": BulkEditResource, + "BulkEditSecurityAttributeDetails": BulkEditSecurityAttributeDetails, + "BulkEditSecurityAttributeOperationDetails": BulkEditSecurityAttributeOperationDetails, + "ChangeSecurityAttributeNamespaceCompartmentDetails": ChangeSecurityAttributeNamespaceCompartmentDetails, + "CreateSecurityAttributeDetails": CreateSecurityAttributeDetails, + "CreateSecurityAttributeNamespaceDetails": CreateSecurityAttributeNamespaceDetails, + "DefaultSecurityAttributeValidator": DefaultSecurityAttributeValidator, + "EnumSecurityAttributeValidator": EnumSecurityAttributeValidator, + "SecurityAttribute": SecurityAttribute, + "SecurityAttributeNamespace": SecurityAttributeNamespace, + "SecurityAttributeNamespaceSummary": SecurityAttributeNamespaceSummary, + "SecurityAttributeSummary": SecurityAttributeSummary, + "SecurityAttributeWorkRequest": SecurityAttributeWorkRequest, + "SecurityAttributeWorkRequestErrorSummary": SecurityAttributeWorkRequestErrorSummary, + "SecurityAttributeWorkRequestLogSummary": SecurityAttributeWorkRequestLogSummary, + "SecurityAttributeWorkRequestSummary": SecurityAttributeWorkRequestSummary, + "UpdateSecurityAttributeDetails": UpdateSecurityAttributeDetails, + "UpdateSecurityAttributeNamespaceDetails": UpdateSecurityAttributeNamespaceDetails, + "WorkRequestResource": WorkRequestResource +} diff --git a/src/oci/security_attribute/models/base_security_attribute_validator.py b/src/oci/security_attribute/models/base_security_attribute_validator.py new file mode 100644 index 000000000..5c795a6b5 --- /dev/null +++ b/src/oci/security_attribute/models/base_security_attribute_validator.py @@ -0,0 +1,122 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BaseSecurityAttributeValidator(object): + """ + Validates a security attribute value. Each validator performs validation steps in addition to the standard + validation for security attribute values. For more information, see + `Limits on Security Attributes`__. + + If you define a validator after a value has been set for a security attribute, then any updates that + attempt to change the value must pass the additional validation defined by the current rule. + Previously set values (even those that would fail the current validation) are not updated. You can + still update other attributes to resources that contain a non-valid security attribute. + + To clear the validator call UpdateSecurityAttribute with + `DefaultSecuirtyAttributeValidator`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/overview.htm + __ https://docs.cloud.oracle.com/api/#/en/securityattribute/latest/datatypes/DefaultTagDefinitionValidator + """ + + #: A constant which can be used with the validator_type property of a BaseSecurityAttributeValidator. + #: This constant has a value of "ENUM" + VALIDATOR_TYPE_ENUM = "ENUM" + + #: A constant which can be used with the validator_type property of a BaseSecurityAttributeValidator. + #: This constant has a value of "DEFAULT" + VALIDATOR_TYPE_DEFAULT = "DEFAULT" + + def __init__(self, **kwargs): + """ + Initializes a new BaseSecurityAttributeValidator 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.security_attribute.models.EnumSecurityAttributeValidator` + * :class:`~oci.security_attribute.models.DefaultSecurityAttributeValidator` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param validator_type: + The value to assign to the validator_type property of this BaseSecurityAttributeValidator. + Allowed values for this property are: "ENUM", "DEFAULT", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type validator_type: str + + """ + self.swagger_types = { + 'validator_type': 'str' + } + + self.attribute_map = { + 'validator_type': 'validatorType' + } + + self._validator_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['validatorType'] + + if type == 'ENUM': + return 'EnumSecurityAttributeValidator' + + if type == 'DEFAULT': + return 'DefaultSecurityAttributeValidator' + else: + return 'BaseSecurityAttributeValidator' + + @property + def validator_type(self): + """ + **[Required]** Gets the validator_type of this BaseSecurityAttributeValidator. + Specifies the type of validation: a static value (no validation) or a list. + + Allowed values for this property are: "ENUM", "DEFAULT", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The validator_type of this BaseSecurityAttributeValidator. + :rtype: str + """ + return self._validator_type + + @validator_type.setter + def validator_type(self, validator_type): + """ + Sets the validator_type of this BaseSecurityAttributeValidator. + Specifies the type of validation: a static value (no validation) or a list. + + + :param validator_type: The validator_type of this BaseSecurityAttributeValidator. + :type: str + """ + allowed_values = ["ENUM", "DEFAULT"] + if not value_allowed_none_or_none_sentinel(validator_type, allowed_values): + validator_type = 'UNKNOWN_ENUM_VALUE' + self._validator_type = validator_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/security_attribute/models/bulk_delete_security_attributes_details.py b/src/oci/security_attribute/models/bulk_delete_security_attributes_details.py new file mode 100644 index 000000000..7e3a5fdcc --- /dev/null +++ b/src/oci/security_attribute/models/bulk_delete_security_attributes_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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BulkDeleteSecurityAttributesDetails(object): + """ + Properties for deleting security attributes in bulk. + """ + + def __init__(self, **kwargs): + """ + Initializes a new BulkDeleteSecurityAttributesDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param security_attribute_ids: + The value to assign to the security_attribute_ids property of this BulkDeleteSecurityAttributesDetails. + :type security_attribute_ids: list[str] + + """ + self.swagger_types = { + 'security_attribute_ids': 'list[str]' + } + + self.attribute_map = { + 'security_attribute_ids': 'securityAttributeIds' + } + + self._security_attribute_ids = None + + @property + def security_attribute_ids(self): + """ + **[Required]** Gets the security_attribute_ids of this BulkDeleteSecurityAttributesDetails. + The OCIDs of the security attributes to delete. + + + :return: The security_attribute_ids of this BulkDeleteSecurityAttributesDetails. + :rtype: list[str] + """ + return self._security_attribute_ids + + @security_attribute_ids.setter + def security_attribute_ids(self, security_attribute_ids): + """ + Sets the security_attribute_ids of this BulkDeleteSecurityAttributesDetails. + The OCIDs of the security attributes to delete. + + + :param security_attribute_ids: The security_attribute_ids of this BulkDeleteSecurityAttributesDetails. + :type: list[str] + """ + self._security_attribute_ids = security_attribute_ids + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/bulk_edit_resource.py b/src/oci/security_attribute/models/bulk_edit_resource.py new file mode 100644 index 000000000..689575661 --- /dev/null +++ b/src/oci/security_attribute/models/bulk_edit_resource.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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BulkEditResource(object): + """ + BulkEditResource model. + """ + + def __init__(self, **kwargs): + """ + Initializes a new BulkEditResource 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 BulkEditResource. + :type id: str + + :param resource_type: + The value to assign to the resource_type property of this BulkEditResource. + :type resource_type: str + + :param metadata: + The value to assign to the metadata property of this BulkEditResource. + :type metadata: dict(str, str) + + """ + self.swagger_types = { + 'id': 'str', + 'resource_type': 'str', + 'metadata': 'dict(str, str)' + } + + self.attribute_map = { + 'id': 'id', + 'resource_type': 'resourceType', + 'metadata': 'metadata' + } + + self._id = None + self._resource_type = None + self._metadata = None + + @property + def id(self): + """ + **[Required]** Gets the id of this BulkEditResource. + The unique OCID of the resource. + + + :return: The id of this BulkEditResource. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this BulkEditResource. + The unique OCID of the resource. + + + :param id: The id of this BulkEditResource. + :type: str + """ + self._id = id + + @property + def resource_type(self): + """ + **[Required]** Gets the resource_type of this BulkEditResource. + The type of resource. See :func:`list_bulk_edit_tags_resource_types`. + + + :return: The resource_type of this BulkEditResource. + :rtype: str + """ + return self._resource_type + + @resource_type.setter + def resource_type(self, resource_type): + """ + Sets the resource_type of this BulkEditResource. + The type of resource. See :func:`list_bulk_edit_tags_resource_types`. + + + :param resource_type: The resource_type of this BulkEditResource. + :type: str + """ + self._resource_type = resource_type + + @property + def metadata(self): + """ + Gets the metadata of this BulkEditResource. + Additional information that identifies the resource for bulk editing of tags. This information is provided in the resource's API documentation. + + + :return: The metadata of this BulkEditResource. + :rtype: dict(str, str) + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this BulkEditResource. + Additional information that identifies the resource for bulk editing of tags. This information is provided in the resource's API documentation. + + + :param metadata: The metadata of this BulkEditResource. + :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/security_attribute/models/bulk_edit_security_attribute_details.py b/src/oci/security_attribute/models/bulk_edit_security_attribute_details.py new file mode 100644 index 000000000..c4aab8114 --- /dev/null +++ b/src/oci/security_attribute/models/bulk_edit_security_attribute_details.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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BulkEditSecurityAttributeDetails(object): + """ + BulkEditSecurityAttributeDetails model. + """ + + def __init__(self, **kwargs): + """ + Initializes a new BulkEditSecurityAttributeDetails 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 BulkEditSecurityAttributeDetails. + :type compartment_id: str + + :param resources: + The value to assign to the resources property of this BulkEditSecurityAttributeDetails. + :type resources: list[oci.security_attribute.models.BulkEditResource] + + :param bulk_edit_operations: + The value to assign to the bulk_edit_operations property of this BulkEditSecurityAttributeDetails. + :type bulk_edit_operations: list[oci.security_attribute.models.BulkEditSecurityAttributeOperationDetails] + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'resources': 'list[BulkEditResource]', + 'bulk_edit_operations': 'list[BulkEditSecurityAttributeOperationDetails]' + } + + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'resources': 'resources', + 'bulk_edit_operations': 'bulkEditOperations' + } + + self._compartment_id = None + self._resources = None + self._bulk_edit_operations = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this BulkEditSecurityAttributeDetails. + The OCID of the compartment where the bulk edit request is submitted. + + + :return: The compartment_id of this BulkEditSecurityAttributeDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this BulkEditSecurityAttributeDetails. + The OCID of the compartment where the bulk edit request is submitted. + + + :param compartment_id: The compartment_id of this BulkEditSecurityAttributeDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def resources(self): + """ + **[Required]** Gets the resources of this BulkEditSecurityAttributeDetails. + The resources to be updated. + + + :return: The resources of this BulkEditSecurityAttributeDetails. + :rtype: list[oci.security_attribute.models.BulkEditResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this BulkEditSecurityAttributeDetails. + The resources to be updated. + + + :param resources: The resources of this BulkEditSecurityAttributeDetails. + :type: list[oci.security_attribute.models.BulkEditResource] + """ + self._resources = resources + + @property + def bulk_edit_operations(self): + """ + **[Required]** Gets the bulk_edit_operations of this BulkEditSecurityAttributeDetails. + The operations associated with the request to bulk edit tags. + + + :return: The bulk_edit_operations of this BulkEditSecurityAttributeDetails. + :rtype: list[oci.security_attribute.models.BulkEditSecurityAttributeOperationDetails] + """ + return self._bulk_edit_operations + + @bulk_edit_operations.setter + def bulk_edit_operations(self, bulk_edit_operations): + """ + Sets the bulk_edit_operations of this BulkEditSecurityAttributeDetails. + The operations associated with the request to bulk edit tags. + + + :param bulk_edit_operations: The bulk_edit_operations of this BulkEditSecurityAttributeDetails. + :type: list[oci.security_attribute.models.BulkEditSecurityAttributeOperationDetails] + """ + self._bulk_edit_operations = bulk_edit_operations + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/bulk_edit_security_attribute_operation_details.py b/src/oci/security_attribute/models/bulk_edit_security_attribute_operation_details.py new file mode 100644 index 000000000..373a5cba3 --- /dev/null +++ b/src/oci/security_attribute/models/bulk_edit_security_attribute_operation_details.py @@ -0,0 +1,147 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BulkEditSecurityAttributeOperationDetails(object): + """ + BulkEditSecurityAttributeOperationDetails model. + """ + + #: A constant which can be used with the operation_type property of a BulkEditSecurityAttributeOperationDetails. + #: This constant has a value of "ADD_WHERE_ABSENT" + OPERATION_TYPE_ADD_WHERE_ABSENT = "ADD_WHERE_ABSENT" + + #: A constant which can be used with the operation_type property of a BulkEditSecurityAttributeOperationDetails. + #: This constant has a value of "SET_WHERE_PRESENT" + OPERATION_TYPE_SET_WHERE_PRESENT = "SET_WHERE_PRESENT" + + #: A constant which can be used with the operation_type property of a BulkEditSecurityAttributeOperationDetails. + #: This constant has a value of "ADD_OR_SET" + OPERATION_TYPE_ADD_OR_SET = "ADD_OR_SET" + + #: A constant which can be used with the operation_type property of a BulkEditSecurityAttributeOperationDetails. + #: This constant has a value of "REMOVE" + OPERATION_TYPE_REMOVE = "REMOVE" + + def __init__(self, **kwargs): + """ + Initializes a new BulkEditSecurityAttributeOperationDetails 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 BulkEditSecurityAttributeOperationDetails. + Allowed values for this property are: "ADD_WHERE_ABSENT", "SET_WHERE_PRESENT", "ADD_OR_SET", "REMOVE" + :type operation_type: str + + :param security_attributes: + The value to assign to the security_attributes property of this BulkEditSecurityAttributeOperationDetails. + :type security_attributes: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'operation_type': 'str', + 'security_attributes': 'dict(str, dict(str, object))' + } + + self.attribute_map = { + 'operation_type': 'operationType', + 'security_attributes': 'securityAttributes' + } + + self._operation_type = None + self._security_attributes = None + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this BulkEditSecurityAttributeOperationDetails. + An enum-like description of the type of operation. + + * `ADD_WHERE_ABSENT` adds a security attribute only if it does not already exist on the resource. + * `SET_WHERE_PRESENT` updates the value for a security attribute only if it is present on the resource. + * `ADD_OR_SET` combines the first two operations to add a security attribute if it does not already exist on the resource + or update the value if it is present on the resource. + * `REMOVE` removes the security attribute from the resource. It's removed from the resource regardless of the value. + + Allowed values for this property are: "ADD_WHERE_ABSENT", "SET_WHERE_PRESENT", "ADD_OR_SET", "REMOVE" + + + :return: The operation_type of this BulkEditSecurityAttributeOperationDetails. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this BulkEditSecurityAttributeOperationDetails. + An enum-like description of the type of operation. + + * `ADD_WHERE_ABSENT` adds a security attribute only if it does not already exist on the resource. + * `SET_WHERE_PRESENT` updates the value for a security attribute only if it is present on the resource. + * `ADD_OR_SET` combines the first two operations to add a security attribute if it does not already exist on the resource + or update the value if it is present on the resource. + * `REMOVE` removes the security attribute from the resource. It's removed from the resource regardless of the value. + + + :param operation_type: The operation_type of this BulkEditSecurityAttributeOperationDetails. + :type: str + """ + allowed_values = ["ADD_WHERE_ABSENT", "SET_WHERE_PRESENT", "ADD_OR_SET", "REMOVE"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + raise ValueError( + f"Invalid value for `operation_type`, must be None or one of {allowed_values}" + ) + self._operation_type = operation_type + + @property + def security_attributes(self): + """ + **[Required]** Gets the security_attributes of this BulkEditSecurityAttributeOperationDetails. + Security attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: ``{\"oracle-zpr\": {\"td\": {\"value\": \"42\", \"mode\": \"audit\"}}}`` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this BulkEditSecurityAttributeOperationDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this BulkEditSecurityAttributeOperationDetails. + Security attributes for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: ``{\"oracle-zpr\": {\"td\": {\"value\": \"42\", \"mode\": \"audit\"}}}`` + + __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this BulkEditSecurityAttributeOperationDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/change_security_attribute_namespace_compartment_details.py b/src/oci/security_attribute/models/change_security_attribute_namespace_compartment_details.py new file mode 100644 index 000000000..564032fdd --- /dev/null +++ b/src/oci/security_attribute/models/change_security_attribute_namespace_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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeSecurityAttributeNamespaceCompartmentDetails(object): + """ + Details of the compartment the resource is being moved to. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeSecurityAttributeNamespaceCompartmentDetails 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 ChangeSecurityAttributeNamespaceCompartmentDetails. + :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 ChangeSecurityAttributeNamespaceCompartmentDetails. + The Oracle Cloud ID (OCID) of the destination compartment. + + + :return: The compartment_id of this ChangeSecurityAttributeNamespaceCompartmentDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ChangeSecurityAttributeNamespaceCompartmentDetails. + The Oracle Cloud ID (OCID) of the destination compartment. + + + :param compartment_id: The compartment_id of this ChangeSecurityAttributeNamespaceCompartmentDetails. + :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/security_attribute/models/create_security_attribute_details.py b/src/oci/security_attribute/models/create_security_attribute_details.py new file mode 100644 index 000000000..46548cf62 --- /dev/null +++ b/src/oci/security_attribute/models/create_security_attribute_details.py @@ -0,0 +1,132 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateSecurityAttributeDetails(object): + """ + Details of the security attribute to be created for a specific security attribute namespace. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateSecurityAttributeDetails 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 CreateSecurityAttributeDetails. + :type name: str + + :param description: + The value to assign to the description property of this CreateSecurityAttributeDetails. + :type description: str + + :param validator: + The value to assign to the validator property of this CreateSecurityAttributeDetails. + :type validator: oci.security_attribute.models.BaseSecurityAttributeValidator + + """ + self.swagger_types = { + 'name': 'str', + 'description': 'str', + 'validator': 'BaseSecurityAttributeValidator' + } + + self.attribute_map = { + 'name': 'name', + 'description': 'description', + 'validator': 'validator' + } + + self._name = None + self._description = None + self._validator = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateSecurityAttributeDetails. + The name you assign to the security attribute during creation. This is the security attribute key. + The name must be unique within the namespace and cannot be changed. + + + :return: The name of this CreateSecurityAttributeDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateSecurityAttributeDetails. + The name you assign to the security attribute during creation. This is the security attribute key. + The name must be unique within the namespace and cannot be changed. + + + :param name: The name of this CreateSecurityAttributeDetails. + :type: str + """ + self._name = name + + @property + def description(self): + """ + **[Required]** Gets the description of this CreateSecurityAttributeDetails. + The description you assign to the security attribute during creation. + + + :return: The description of this CreateSecurityAttributeDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateSecurityAttributeDetails. + The description you assign to the security attribute during creation. + + + :param description: The description of this CreateSecurityAttributeDetails. + :type: str + """ + self._description = description + + @property + def validator(self): + """ + Gets the validator of this CreateSecurityAttributeDetails. + + :return: The validator of this CreateSecurityAttributeDetails. + :rtype: oci.security_attribute.models.BaseSecurityAttributeValidator + """ + return self._validator + + @validator.setter + def validator(self, validator): + """ + Sets the validator of this CreateSecurityAttributeDetails. + + :param validator: The validator of this CreateSecurityAttributeDetails. + :type: oci.security_attribute.models.BaseSecurityAttributeValidator + """ + self._validator = validator + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/create_security_attribute_namespace_details.py b/src/oci/security_attribute/models/create_security_attribute_namespace_details.py new file mode 100644 index 000000000..a97d955c4 --- /dev/null +++ b/src/oci/security_attribute/models/create_security_attribute_namespace_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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateSecurityAttributeNamespaceDetails(object): + """ + Details of the security attribute namespace to be created for a specific compartment. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateSecurityAttributeNamespaceDetails 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 CreateSecurityAttributeNamespaceDetails. + :type compartment_id: str + + :param name: + The value to assign to the name property of this CreateSecurityAttributeNamespaceDetails. + :type name: str + + :param description: + The value to assign to the description property of this CreateSecurityAttributeNamespaceDetails. + :type description: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateSecurityAttributeNamespaceDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateSecurityAttributeNamespaceDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'name': 'str', + 'description': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'name': 'name', + 'description': 'description', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + + self._compartment_id = None + self._name = None + self._description = None + self._freeform_tags = None + self._defined_tags = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateSecurityAttributeNamespaceDetails. + The OCID of the tenancy containing the security attribute namespace. + + + :return: The compartment_id of this CreateSecurityAttributeNamespaceDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateSecurityAttributeNamespaceDetails. + The OCID of the tenancy containing the security attribute namespace. + + + :param compartment_id: The compartment_id of this CreateSecurityAttributeNamespaceDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateSecurityAttributeNamespaceDetails. + The name you assign to the security attribute namespace during creation. The name must be unique across all namespaces in the tenancy and cannot be changed. + + + :return: The name of this CreateSecurityAttributeNamespaceDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateSecurityAttributeNamespaceDetails. + The name you assign to the security attribute namespace during creation. The name must be unique across all namespaces in the tenancy and cannot be changed. + + + :param name: The name of this CreateSecurityAttributeNamespaceDetails. + :type: str + """ + self._name = name + + @property + def description(self): + """ + **[Required]** Gets the description of this CreateSecurityAttributeNamespaceDetails. + The description you assign to the security attribute namespace during creation. + + + :return: The description of this CreateSecurityAttributeNamespaceDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateSecurityAttributeNamespaceDetails. + The description you assign to the security attribute namespace during creation. + + + :param description: The description of this CreateSecurityAttributeNamespaceDetails. + :type: str + """ + self._description = description + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateSecurityAttributeNamespaceDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateSecurityAttributeNamespaceDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateSecurityAttributeNamespaceDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateSecurityAttributeNamespaceDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateSecurityAttributeNamespaceDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateSecurityAttributeNamespaceDetails. + :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 CreateSecurityAttributeNamespaceDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateSecurityAttributeNamespaceDetails. + :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/security_attribute/models/default_security_attribute_validator.py b/src/oci/security_attribute/models/default_security_attribute_validator.py new file mode 100644 index 000000000..bfc8903fd --- /dev/null +++ b/src/oci/security_attribute/models/default_security_attribute_validator.py @@ -0,0 +1,53 @@ +# 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: 20240815 + +from .base_security_attribute_validator import BaseSecurityAttributeValidator +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DefaultSecurityAttributeValidator(BaseSecurityAttributeValidator): + """ + Use this validator to clear any existing validator on the security attribute with the UpdateSecurityAttribute + operation. Using this `validatorType` is the same as not setting any value on the validator field. + The resultant value for `validatorType` returned in the response body is `null`. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DefaultSecurityAttributeValidator object with values from keyword arguments. The default value of the :py:attr:`~oci.security_attribute.models.DefaultSecurityAttributeValidator.validator_type` attribute + of this class is ``DEFAULT`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param validator_type: + The value to assign to the validator_type property of this DefaultSecurityAttributeValidator. + Allowed values for this property are: "ENUM", "DEFAULT" + :type validator_type: str + + """ + self.swagger_types = { + 'validator_type': 'str' + } + + self.attribute_map = { + 'validator_type': 'validatorType' + } + + self._validator_type = None + self._validator_type = 'DEFAULT' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/enum_security_attribute_validator.py b/src/oci/security_attribute/models/enum_security_attribute_validator.py new file mode 100644 index 000000000..a5a0a3794 --- /dev/null +++ b/src/oci/security_attribute/models/enum_security_attribute_validator.py @@ -0,0 +1,85 @@ +# 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: 20240815 + +from .base_security_attribute_validator import BaseSecurityAttributeValidator +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class EnumSecurityAttributeValidator(BaseSecurityAttributeValidator): + """ + Used to validate the value set for a security attribute and contains the list of allowable `values`. + + You must specify at least one valid value in the `values` array. You can't have blank or + or empty strings (`\"\"`). Duplicate values are not allowed. + """ + + def __init__(self, **kwargs): + """ + Initializes a new EnumSecurityAttributeValidator object with values from keyword arguments. The default value of the :py:attr:`~oci.security_attribute.models.EnumSecurityAttributeValidator.validator_type` attribute + of this class is ``ENUM`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param validator_type: + The value to assign to the validator_type property of this EnumSecurityAttributeValidator. + Allowed values for this property are: "ENUM", "DEFAULT" + :type validator_type: str + + :param values: + The value to assign to the values property of this EnumSecurityAttributeValidator. + :type values: list[str] + + """ + self.swagger_types = { + 'validator_type': 'str', + 'values': 'list[str]' + } + + self.attribute_map = { + 'validator_type': 'validatorType', + 'values': 'values' + } + + self._validator_type = None + self._values = None + self._validator_type = 'ENUM' + + @property + def values(self): + """ + Gets the values of this EnumSecurityAttributeValidator. + The list of allowed values for a security attribute value. + + + :return: The values of this EnumSecurityAttributeValidator. + :rtype: list[str] + """ + return self._values + + @values.setter + def values(self, values): + """ + Sets the values of this EnumSecurityAttributeValidator. + The list of allowed values for a security attribute value. + + + :param values: The values of this EnumSecurityAttributeValidator. + :type: list[str] + """ + self._values = values + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/security_attribute.py b/src/oci/security_attribute/models/security_attribute.py new file mode 100644 index 000000000..b6be86780 --- /dev/null +++ b/src/oci/security_attribute/models/security_attribute.py @@ -0,0 +1,421 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SecurityAttribute(object): + """ + A security attribute that belongs to a specific security attribute namespace. Security attributes must be created in a tenancy before + a user can apply them to resources. + For more information, see `Managing Security Attributes`__. + + **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values + using the API. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attributes.htm + """ + + #: A constant which can be used with the lifecycle_state property of a SecurityAttribute. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a SecurityAttribute. + #: This constant has a value of "INACTIVE" + LIFECYCLE_STATE_INACTIVE = "INACTIVE" + + #: A constant which can be used with the lifecycle_state property of a SecurityAttribute. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a SecurityAttribute. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + def __init__(self, **kwargs): + """ + Initializes a new SecurityAttribute 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 SecurityAttribute. + :type compartment_id: str + + :param security_attribute_namespace_id: + The value to assign to the security_attribute_namespace_id property of this SecurityAttribute. + :type security_attribute_namespace_id: str + + :param security_attribute_namespace_name: + The value to assign to the security_attribute_namespace_name property of this SecurityAttribute. + :type security_attribute_namespace_name: str + + :param id: + The value to assign to the id property of this SecurityAttribute. + :type id: str + + :param name: + The value to assign to the name property of this SecurityAttribute. + :type name: str + + :param description: + The value to assign to the description property of this SecurityAttribute. + :type description: str + + :param type: + The value to assign to the type property of this SecurityAttribute. + :type type: str + + :param is_retired: + The value to assign to the is_retired property of this SecurityAttribute. + :type is_retired: bool + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this SecurityAttribute. + Allowed values for this property are: "ACTIVE", "INACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this SecurityAttribute. + :type time_created: datetime + + :param validator: + The value to assign to the validator property of this SecurityAttribute. + :type validator: oci.security_attribute.models.BaseSecurityAttributeValidator + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'security_attribute_namespace_id': 'str', + 'security_attribute_namespace_name': 'str', + 'id': 'str', + 'name': 'str', + 'description': 'str', + 'type': 'str', + 'is_retired': 'bool', + 'lifecycle_state': 'str', + 'time_created': 'datetime', + 'validator': 'BaseSecurityAttributeValidator' + } + + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'security_attribute_namespace_id': 'securityAttributeNamespaceId', + 'security_attribute_namespace_name': 'securityAttributeNamespaceName', + 'id': 'id', + 'name': 'name', + 'description': 'description', + 'type': 'type', + 'is_retired': 'isRetired', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated', + 'validator': 'validator' + } + + self._compartment_id = None + self._security_attribute_namespace_id = None + self._security_attribute_namespace_name = None + self._id = None + self._name = None + self._description = None + self._type = None + self._is_retired = None + self._lifecycle_state = None + self._time_created = None + self._validator = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this SecurityAttribute. + The OCID of the compartment that contains the security attribute definition. + + + :return: The compartment_id of this SecurityAttribute. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this SecurityAttribute. + The OCID of the compartment that contains the security attribute definition. + + + :param compartment_id: The compartment_id of this SecurityAttribute. + :type: str + """ + self._compartment_id = compartment_id + + @property + def security_attribute_namespace_id(self): + """ + **[Required]** Gets the security_attribute_namespace_id of this SecurityAttribute. + The OCID of the security attribute namespace that contains the security attribute definition. + + + :return: The security_attribute_namespace_id of this SecurityAttribute. + :rtype: str + """ + return self._security_attribute_namespace_id + + @security_attribute_namespace_id.setter + def security_attribute_namespace_id(self, security_attribute_namespace_id): + """ + Sets the security_attribute_namespace_id of this SecurityAttribute. + The OCID of the security attribute namespace that contains the security attribute definition. + + + :param security_attribute_namespace_id: The security_attribute_namespace_id of this SecurityAttribute. + :type: str + """ + self._security_attribute_namespace_id = security_attribute_namespace_id + + @property + def security_attribute_namespace_name(self): + """ + **[Required]** Gets the security_attribute_namespace_name of this SecurityAttribute. + The name of the security attribute namespace that contains the security attribute. + + + :return: The security_attribute_namespace_name of this SecurityAttribute. + :rtype: str + """ + return self._security_attribute_namespace_name + + @security_attribute_namespace_name.setter + def security_attribute_namespace_name(self, security_attribute_namespace_name): + """ + Sets the security_attribute_namespace_name of this SecurityAttribute. + The name of the security attribute namespace that contains the security attribute. + + + :param security_attribute_namespace_name: The security_attribute_namespace_name of this SecurityAttribute. + :type: str + """ + self._security_attribute_namespace_name = security_attribute_namespace_name + + @property + def id(self): + """ + **[Required]** Gets the id of this SecurityAttribute. + The OCID of the security attribute definition. + + + :return: The id of this SecurityAttribute. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this SecurityAttribute. + The OCID of the security attribute definition. + + + :param id: The id of this SecurityAttribute. + :type: str + """ + self._id = id + + @property + def name(self): + """ + **[Required]** Gets the name of this SecurityAttribute. + The name assigned to the security attribute during creation. This is the security attribute key. + The name must be unique within the security attribute namespace and cannot be changed. + + + :return: The name of this SecurityAttribute. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this SecurityAttribute. + The name assigned to the security attribute during creation. This is the security attribute key. + The name must be unique within the security attribute namespace and cannot be changed. + + + :param name: The name of this SecurityAttribute. + :type: str + """ + self._name = name + + @property + def description(self): + """ + **[Required]** Gets the description of this SecurityAttribute. + The description of the security attribute. + + + :return: The description of this SecurityAttribute. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this SecurityAttribute. + The description of the security attribute. + + + :param description: The description of this SecurityAttribute. + :type: str + """ + self._description = description + + @property + def type(self): + """ + Gets the type of this SecurityAttribute. + The data type of the security attribute. + + + :return: The type of this SecurityAttribute. + :rtype: str + """ + return self._type + + @type.setter + def type(self, type): + """ + Sets the type of this SecurityAttribute. + The data type of the security attribute. + + + :param type: The type of this SecurityAttribute. + :type: str + """ + self._type = type + + @property + def is_retired(self): + """ + **[Required]** Gets the is_retired of this SecurityAttribute. + Indicates whether the security attribute is retired. + See `Managing Security Attribute Namespaces`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attribute-namespaces.htm + + + :return: The is_retired of this SecurityAttribute. + :rtype: bool + """ + return self._is_retired + + @is_retired.setter + def is_retired(self, is_retired): + """ + Sets the is_retired of this SecurityAttribute. + Indicates whether the security attribute is retired. + See `Managing Security Attribute Namespaces`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attribute-namespaces.htm + + + :param is_retired: The is_retired of this SecurityAttribute. + :type: bool + """ + self._is_retired = is_retired + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this SecurityAttribute. + The security attribute's current state. After creating a security attribute, make sure its `lifecycleState` is ACTIVE before using it. After retiring a security attribute, make sure its `lifecycleState` is INACTIVE before using it. If you delete a security attribute, you cannot delete another security attribute until the deleted tag's `lifecycleState` changes from DELETING to DELETED. + + Allowed values for this property are: "ACTIVE", "INACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this SecurityAttribute. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this SecurityAttribute. + The security attribute's current state. After creating a security attribute, make sure its `lifecycleState` is ACTIVE before using it. After retiring a security attribute, make sure its `lifecycleState` is INACTIVE before using it. If you delete a security attribute, you cannot delete another security attribute until the deleted tag's `lifecycleState` changes from DELETING to DELETED. + + + :param lifecycle_state: The lifecycle_state of this SecurityAttribute. + :type: str + """ + allowed_values = ["ACTIVE", "INACTIVE", "DELETING", "DELETED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this SecurityAttribute. + Date and time the security attribute was created, in the format defined by RFC3339. + + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_created of this SecurityAttribute. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this SecurityAttribute. + Date and time the security attribute was created, in the format defined by RFC3339. + + Example: `2016-08-25T21:10:29.600Z` + + + :param time_created: The time_created of this SecurityAttribute. + :type: datetime + """ + self._time_created = time_created + + @property + def validator(self): + """ + Gets the validator of this SecurityAttribute. + + :return: The validator of this SecurityAttribute. + :rtype: oci.security_attribute.models.BaseSecurityAttributeValidator + """ + return self._validator + + @validator.setter + def validator(self, validator): + """ + Sets the validator of this SecurityAttribute. + + :param validator: The validator of this SecurityAttribute. + :type: oci.security_attribute.models.BaseSecurityAttributeValidator + """ + self._validator = validator + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/security_attribute_namespace.py b/src/oci/security_attribute/models/security_attribute_namespace.py new file mode 100644 index 000000000..ef9ebe6eb --- /dev/null +++ b/src/oci/security_attribute/models/security_attribute_namespace.py @@ -0,0 +1,446 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SecurityAttributeNamespace(object): + """ + A managed container for security attributes. A security attribute namespace is unique in a tenancy. For more information, + see `Managing Security Attributes Namespaces`__. + + **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values + using the API. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attribute-namespaces.htm + """ + + #: A constant which can be used with the lifecycle_state property of a SecurityAttributeNamespace. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a SecurityAttributeNamespace. + #: This constant has a value of "INACTIVE" + LIFECYCLE_STATE_INACTIVE = "INACTIVE" + + #: A constant which can be used with the lifecycle_state property of a SecurityAttributeNamespace. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a SecurityAttributeNamespace. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + def __init__(self, **kwargs): + """ + Initializes a new SecurityAttributeNamespace 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 SecurityAttributeNamespace. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this SecurityAttributeNamespace. + :type compartment_id: str + + :param name: + The value to assign to the name property of this SecurityAttributeNamespace. + :type name: str + + :param description: + The value to assign to the description property of this SecurityAttributeNamespace. + :type description: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this SecurityAttributeNamespace. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this SecurityAttributeNamespace. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this SecurityAttributeNamespace. + :type system_tags: dict(str, dict(str, object)) + + :param is_retired: + The value to assign to the is_retired property of this SecurityAttributeNamespace. + :type is_retired: bool + + :param mode: + The value to assign to the mode property of this SecurityAttributeNamespace. + :type mode: list[str] + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this SecurityAttributeNamespace. + Allowed values for this property are: "ACTIVE", "INACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this SecurityAttributeNamespace. + :type time_created: datetime + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'name': 'str', + 'description': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'is_retired': 'bool', + 'mode': 'list[str]', + 'lifecycle_state': 'str', + 'time_created': 'datetime' + } + + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'name': 'name', + 'description': 'description', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'is_retired': 'isRetired', + 'mode': 'mode', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated' + } + + self._id = None + self._compartment_id = None + self._name = None + self._description = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._is_retired = None + self._mode = None + self._lifecycle_state = None + self._time_created = None + + @property + def id(self): + """ + **[Required]** Gets the id of this SecurityAttributeNamespace. + The OCID of the security attribute namespace. + + + :return: The id of this SecurityAttributeNamespace. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this SecurityAttributeNamespace. + The OCID of the security attribute namespace. + + + :param id: The id of this SecurityAttributeNamespace. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this SecurityAttributeNamespace. + The OCID of the compartment that contains the namespace. + + + :return: The compartment_id of this SecurityAttributeNamespace. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this SecurityAttributeNamespace. + The OCID of the compartment that contains the namespace. + + + :param compartment_id: The compartment_id of this SecurityAttributeNamespace. + :type: str + """ + self._compartment_id = compartment_id + + @property + def name(self): + """ + **[Required]** Gets the name of this SecurityAttributeNamespace. + The name of the namespace. It must be unique across all namespaces in the tenancy and cannot be changed. + + + :return: The name of this SecurityAttributeNamespace. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this SecurityAttributeNamespace. + The name of the namespace. It must be unique across all namespaces in the tenancy and cannot be changed. + + + :param name: The name of this SecurityAttributeNamespace. + :type: str + """ + self._name = name + + @property + def description(self): + """ + **[Required]** Gets the description of this SecurityAttributeNamespace. + The description you assign to the security attribute namespace. + + + :return: The description of this SecurityAttributeNamespace. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this SecurityAttributeNamespace. + The description you assign to the security attribute namespace. + + + :param description: The description of this SecurityAttributeNamespace. + :type: str + """ + self._description = description + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this SecurityAttributeNamespace. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this SecurityAttributeNamespace. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this SecurityAttributeNamespace. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this SecurityAttributeNamespace. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this SecurityAttributeNamespace. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this SecurityAttributeNamespace. + :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 SecurityAttributeNamespace. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this SecurityAttributeNamespace. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this SecurityAttributeNamespace. + 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 SecurityAttributeNamespace. + :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 SecurityAttributeNamespace. + 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 SecurityAttributeNamespace. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def is_retired(self): + """ + **[Required]** Gets the is_retired of this SecurityAttributeNamespace. + Indicates whether the security attribute namespace is retired. + See `Managing Security Attribute Namespaces`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attribute-namespaces.htm + + + :return: The is_retired of this SecurityAttributeNamespace. + :rtype: bool + """ + return self._is_retired + + @is_retired.setter + def is_retired(self, is_retired): + """ + Sets the is_retired of this SecurityAttributeNamespace. + Indicates whether the security attribute namespace is retired. + See `Managing Security Attribute Namespaces`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attribute-namespaces.htm + + + :param is_retired: The is_retired of this SecurityAttributeNamespace. + :type: bool + """ + self._is_retired = is_retired + + @property + def mode(self): + """ + Gets the mode of this SecurityAttributeNamespace. + Indicates possible modes the security attributes in this namespace can be set to. + This is not accepted from the user. Currently the supported values are enforce and audit. + + + :return: The mode of this SecurityAttributeNamespace. + :rtype: list[str] + """ + return self._mode + + @mode.setter + def mode(self, mode): + """ + Sets the mode of this SecurityAttributeNamespace. + Indicates possible modes the security attributes in this namespace can be set to. + This is not accepted from the user. Currently the supported values are enforce and audit. + + + :param mode: The mode of this SecurityAttributeNamespace. + :type: list[str] + """ + self._mode = mode + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this SecurityAttributeNamespace. + The security attribute namespace's current state. After creating a security attribute namespace, make sure its `lifecycleState` is ACTIVE before using it. After retiring a security attribute namespace, make sure its `lifecycleState` is INACTIVE. + + Allowed values for this property are: "ACTIVE", "INACTIVE", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this SecurityAttributeNamespace. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this SecurityAttributeNamespace. + The security attribute namespace's current state. After creating a security attribute namespace, make sure its `lifecycleState` is ACTIVE before using it. After retiring a security attribute namespace, make sure its `lifecycleState` is INACTIVE. + + + :param lifecycle_state: The lifecycle_state of this SecurityAttributeNamespace. + :type: str + """ + allowed_values = ["ACTIVE", "INACTIVE", "DELETING", "DELETED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this SecurityAttributeNamespace. + Date and time the security attribute namespace was created, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_created of this SecurityAttributeNamespace. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this SecurityAttributeNamespace. + Date and time the security attribute namespace was created, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param time_created: The time_created of this SecurityAttributeNamespace. + :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/security_attribute/models/security_attribute_namespace_summary.py b/src/oci/security_attribute/models/security_attribute_namespace_summary.py new file mode 100644 index 000000000..37b06f666 --- /dev/null +++ b/src/oci/security_attribute/models/security_attribute_namespace_summary.py @@ -0,0 +1,410 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SecurityAttributeNamespaceSummary(object): + """ + A container for security attributes. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SecurityAttributeNamespaceSummary 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 SecurityAttributeNamespaceSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this SecurityAttributeNamespaceSummary. + :type compartment_id: str + + :param name: + The value to assign to the name property of this SecurityAttributeNamespaceSummary. + :type name: str + + :param description: + The value to assign to the description property of this SecurityAttributeNamespaceSummary. + :type description: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this SecurityAttributeNamespaceSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this SecurityAttributeNamespaceSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this SecurityAttributeNamespaceSummary. + :type system_tags: dict(str, dict(str, object)) + + :param is_retired: + The value to assign to the is_retired property of this SecurityAttributeNamespaceSummary. + :type is_retired: bool + + :param mode: + The value to assign to the mode property of this SecurityAttributeNamespaceSummary. + :type mode: list[str] + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this SecurityAttributeNamespaceSummary. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this SecurityAttributeNamespaceSummary. + :type time_created: datetime + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'name': 'str', + 'description': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'is_retired': 'bool', + 'mode': 'list[str]', + 'lifecycle_state': 'str', + 'time_created': 'datetime' + } + + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'name': 'name', + 'description': 'description', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'is_retired': 'isRetired', + 'mode': 'mode', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated' + } + + self._id = None + self._compartment_id = None + self._name = None + self._description = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._is_retired = None + self._mode = None + self._lifecycle_state = None + self._time_created = None + + @property + def id(self): + """ + Gets the id of this SecurityAttributeNamespaceSummary. + The OCID of the security attribute namespace. + + + :return: The id of this SecurityAttributeNamespaceSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this SecurityAttributeNamespaceSummary. + The OCID of the security attribute namespace. + + + :param id: The id of this SecurityAttributeNamespaceSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + Gets the compartment_id of this SecurityAttributeNamespaceSummary. + The OCID of the compartment that contains the security attribute namespace. + + + :return: The compartment_id of this SecurityAttributeNamespaceSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this SecurityAttributeNamespaceSummary. + The OCID of the compartment that contains the security attribute namespace. + + + :param compartment_id: The compartment_id of this SecurityAttributeNamespaceSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def name(self): + """ + Gets the name of this SecurityAttributeNamespaceSummary. + The name of the security attribute namespace. It must be unique across all security attribute namespaces in the tenancy and cannot be changed. + + + :return: The name of this SecurityAttributeNamespaceSummary. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this SecurityAttributeNamespaceSummary. + The name of the security attribute namespace. It must be unique across all security attribute namespaces in the tenancy and cannot be changed. + + + :param name: The name of this SecurityAttributeNamespaceSummary. + :type: str + """ + self._name = name + + @property + def description(self): + """ + Gets the description of this SecurityAttributeNamespaceSummary. + A description you create for the security attribute namespace to help you identify it. + + + :return: The description of this SecurityAttributeNamespaceSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this SecurityAttributeNamespaceSummary. + A description you create for the security attribute namespace to help you identify it. + + + :param description: The description of this SecurityAttributeNamespaceSummary. + :type: str + """ + self._description = description + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this SecurityAttributeNamespaceSummary. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this SecurityAttributeNamespaceSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this SecurityAttributeNamespaceSummary. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this SecurityAttributeNamespaceSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this SecurityAttributeNamespaceSummary. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this SecurityAttributeNamespaceSummary. + :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 SecurityAttributeNamespaceSummary. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this SecurityAttributeNamespaceSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this SecurityAttributeNamespaceSummary. + 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 SecurityAttributeNamespaceSummary. + :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 SecurityAttributeNamespaceSummary. + 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 SecurityAttributeNamespaceSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def is_retired(self): + """ + Gets the is_retired of this SecurityAttributeNamespaceSummary. + Indicates whether the security attribute namespace is retired. + + + :return: The is_retired of this SecurityAttributeNamespaceSummary. + :rtype: bool + """ + return self._is_retired + + @is_retired.setter + def is_retired(self, is_retired): + """ + Sets the is_retired of this SecurityAttributeNamespaceSummary. + Indicates whether the security attribute namespace is retired. + + + :param is_retired: The is_retired of this SecurityAttributeNamespaceSummary. + :type: bool + """ + self._is_retired = is_retired + + @property + def mode(self): + """ + Gets the mode of this SecurityAttributeNamespaceSummary. + Indicates possible modes the security attributes in the namespace can be set to. + This is not accepted from the user. Currently the supported values are enforce and audit. + + + :return: The mode of this SecurityAttributeNamespaceSummary. + :rtype: list[str] + """ + return self._mode + + @mode.setter + def mode(self, mode): + """ + Sets the mode of this SecurityAttributeNamespaceSummary. + Indicates possible modes the security attributes in the namespace can be set to. + This is not accepted from the user. Currently the supported values are enforce and audit. + + + :param mode: The mode of this SecurityAttributeNamespaceSummary. + :type: list[str] + """ + self._mode = mode + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this SecurityAttributeNamespaceSummary. + The security attribute namespace's current state. After creating a security attribute namespace, make sure its `lifecycleState` is ACTIVE before using it. After retiring a security attribute namespace, make sure its `lifecycleState` is INACTIVE. + + + :return: The lifecycle_state of this SecurityAttributeNamespaceSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this SecurityAttributeNamespaceSummary. + The security attribute namespace's current state. After creating a security attribute namespace, make sure its `lifecycleState` is ACTIVE before using it. After retiring a security attribute namespace, make sure its `lifecycleState` is INACTIVE. + + + :param lifecycle_state: The lifecycle_state of this SecurityAttributeNamespaceSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + Gets the time_created of this SecurityAttributeNamespaceSummary. + Date and time the security attribute namespace was created, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_created of this SecurityAttributeNamespaceSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this SecurityAttributeNamespaceSummary. + Date and time the security attribute namespace was created, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param time_created: The time_created of this SecurityAttributeNamespaceSummary. + :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/security_attribute/models/security_attribute_summary.py b/src/oci/security_attribute/models/security_attribute_summary.py new file mode 100644 index 000000000..ca2bb1f00 --- /dev/null +++ b/src/oci/security_attribute/models/security_attribute_summary.py @@ -0,0 +1,361 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SecurityAttributeSummary(object): + """ + A security attribute definition that belongs to a specific security attribute namespace. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SecurityAttributeSummary 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 SecurityAttributeSummary. + :type compartment_id: str + + :param security_attribute_namespace_id: + The value to assign to the security_attribute_namespace_id property of this SecurityAttributeSummary. + :type security_attribute_namespace_id: str + + :param security_attribute_namespace_name: + The value to assign to the security_attribute_namespace_name property of this SecurityAttributeSummary. + :type security_attribute_namespace_name: str + + :param id: + The value to assign to the id property of this SecurityAttributeSummary. + :type id: str + + :param name: + The value to assign to the name property of this SecurityAttributeSummary. + :type name: str + + :param description: + The value to assign to the description property of this SecurityAttributeSummary. + :type description: str + + :param type: + The value to assign to the type property of this SecurityAttributeSummary. + :type type: str + + :param is_retired: + The value to assign to the is_retired property of this SecurityAttributeSummary. + :type is_retired: bool + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this SecurityAttributeSummary. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this SecurityAttributeSummary. + :type time_created: datetime + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'security_attribute_namespace_id': 'str', + 'security_attribute_namespace_name': 'str', + 'id': 'str', + 'name': 'str', + 'description': 'str', + 'type': 'str', + 'is_retired': 'bool', + 'lifecycle_state': 'str', + 'time_created': 'datetime' + } + + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'security_attribute_namespace_id': 'securityAttributeNamespaceId', + 'security_attribute_namespace_name': 'securityAttributeNamespaceName', + 'id': 'id', + 'name': 'name', + 'description': 'description', + 'type': 'type', + 'is_retired': 'isRetired', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated' + } + + self._compartment_id = None + self._security_attribute_namespace_id = None + self._security_attribute_namespace_name = None + self._id = None + self._name = None + self._description = None + self._type = None + self._is_retired = None + self._lifecycle_state = None + self._time_created = None + + @property + def compartment_id(self): + """ + Gets the compartment_id of this SecurityAttributeSummary. + The OCID of the compartment that contains the security attribute. + + + :return: The compartment_id of this SecurityAttributeSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this SecurityAttributeSummary. + The OCID of the compartment that contains the security attribute. + + + :param compartment_id: The compartment_id of this SecurityAttributeSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def security_attribute_namespace_id(self): + """ + Gets the security_attribute_namespace_id of this SecurityAttributeSummary. + The OCID of the namespace that contains the security attribute. + + + :return: The security_attribute_namespace_id of this SecurityAttributeSummary. + :rtype: str + """ + return self._security_attribute_namespace_id + + @security_attribute_namespace_id.setter + def security_attribute_namespace_id(self, security_attribute_namespace_id): + """ + Sets the security_attribute_namespace_id of this SecurityAttributeSummary. + The OCID of the namespace that contains the security attribute. + + + :param security_attribute_namespace_id: The security_attribute_namespace_id of this SecurityAttributeSummary. + :type: str + """ + self._security_attribute_namespace_id = security_attribute_namespace_id + + @property + def security_attribute_namespace_name(self): + """ + Gets the security_attribute_namespace_name of this SecurityAttributeSummary. + The name of the security attribute namespace that contains the security attribute. + + + :return: The security_attribute_namespace_name of this SecurityAttributeSummary. + :rtype: str + """ + return self._security_attribute_namespace_name + + @security_attribute_namespace_name.setter + def security_attribute_namespace_name(self, security_attribute_namespace_name): + """ + Sets the security_attribute_namespace_name of this SecurityAttributeSummary. + The name of the security attribute namespace that contains the security attribute. + + + :param security_attribute_namespace_name: The security_attribute_namespace_name of this SecurityAttributeSummary. + :type: str + """ + self._security_attribute_namespace_name = security_attribute_namespace_name + + @property + def id(self): + """ + Gets the id of this SecurityAttributeSummary. + The OCID of the security attribute. + + + :return: The id of this SecurityAttributeSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this SecurityAttributeSummary. + The OCID of the security attribute. + + + :param id: The id of this SecurityAttributeSummary. + :type: str + """ + self._id = id + + @property + def name(self): + """ + Gets the name of this SecurityAttributeSummary. + The name assigned to the security attribute during creation. This is the security attribute. + The name must be unique within the security attribute namespace and cannot be changed. + + + :return: The name of this SecurityAttributeSummary. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this SecurityAttributeSummary. + The name assigned to the security attribute during creation. This is the security attribute. + The name must be unique within the security attribute namespace and cannot be changed. + + + :param name: The name of this SecurityAttributeSummary. + :type: str + """ + self._name = name + + @property + def description(self): + """ + Gets the description of this SecurityAttributeSummary. + The description you assign to the security attribute. + + + :return: The description of this SecurityAttributeSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this SecurityAttributeSummary. + The description you assign to the security attribute. + + + :param description: The description of this SecurityAttributeSummary. + :type: str + """ + self._description = description + + @property + def type(self): + """ + Gets the type of this SecurityAttributeSummary. + The data type of the security attribute. + + + :return: The type of this SecurityAttributeSummary. + :rtype: str + """ + return self._type + + @type.setter + def type(self, type): + """ + Sets the type of this SecurityAttributeSummary. + The data type of the security attribute. + + + :param type: The type of this SecurityAttributeSummary. + :type: str + """ + self._type = type + + @property + def is_retired(self): + """ + Gets the is_retired of this SecurityAttributeSummary. + Whether the security attribute is retired. + See `Managing Security Attributes`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attributes.htm + + + :return: The is_retired of this SecurityAttributeSummary. + :rtype: bool + """ + return self._is_retired + + @is_retired.setter + def is_retired(self, is_retired): + """ + Sets the is_retired of this SecurityAttributeSummary. + Whether the security attribute is retired. + See `Managing Security Attributes`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attributes.htm + + + :param is_retired: The is_retired of this SecurityAttributeSummary. + :type: bool + """ + self._is_retired = is_retired + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this SecurityAttributeSummary. + The security attribute's current state. After creating a security attribute, make sure its `lifecycleState` is ACTIVE before using it. After retiring a security attribute, make sure its `lifecycleState` is INACTIVE before using it. If you delete a security attribute, you cannot delete another security attribute until the deleted security attribute's `lifecycleState` changes from DELETING to DELETED. + + + :return: The lifecycle_state of this SecurityAttributeSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this SecurityAttributeSummary. + The security attribute's current state. After creating a security attribute, make sure its `lifecycleState` is ACTIVE before using it. After retiring a security attribute, make sure its `lifecycleState` is INACTIVE before using it. If you delete a security attribute, you cannot delete another security attribute until the deleted security attribute's `lifecycleState` changes from DELETING to DELETED. + + + :param lifecycle_state: The lifecycle_state of this SecurityAttributeSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + Gets the time_created of this SecurityAttributeSummary. + Date and time the security attribute was created, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_created of this SecurityAttributeSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this SecurityAttributeSummary. + Date and time the security attribute was created, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param time_created: The time_created of this SecurityAttributeSummary. + :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/security_attribute/models/security_attribute_work_request.py b/src/oci/security_attribute/models/security_attribute_work_request.py new file mode 100644 index 000000000..2baf390be --- /dev/null +++ b/src/oci/security_attribute/models/security_attribute_work_request.py @@ -0,0 +1,387 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SecurityAttributeWorkRequest(object): + """ + The asynchronous API request does not take effect immediately. This request spawns an asynchronous + workflow to fulfill the request. WorkRequest objects provide visibility for in-progress workflows. + """ + + #: A constant which can be used with the operation_type property of a SecurityAttributeWorkRequest. + #: This constant has a value of "DELETE_SECURITY_ATTRIBUTE_DEFINITION" + OPERATION_TYPE_DELETE_SECURITY_ATTRIBUTE_DEFINITION = "DELETE_SECURITY_ATTRIBUTE_DEFINITION" + + #: A constant which can be used with the operation_type property of a SecurityAttributeWorkRequest. + #: This constant has a value of "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE" + OPERATION_TYPE_DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE = "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE" + + #: A constant which can be used with the operation_type property of a SecurityAttributeWorkRequest. + #: This constant has a value of "BULK_DELETE_SECURITY_ATTRIBUTES" + OPERATION_TYPE_BULK_DELETE_SECURITY_ATTRIBUTES = "BULK_DELETE_SECURITY_ATTRIBUTES" + + #: A constant which can be used with the operation_type property of a SecurityAttributeWorkRequest. + #: This constant has a value of "BULK_EDIT_OF_SECURITY_ATTRIBUTES" + OPERATION_TYPE_BULK_EDIT_OF_SECURITY_ATTRIBUTES = "BULK_EDIT_OF_SECURITY_ATTRIBUTES" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequest. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequest. + #: 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 SecurityAttributeWorkRequest. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequest. + #: This constant has a value of "SUCCEEDED" + STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequest. + #: This constant has a value of "PARTIALLY_SUCCEEDED" + STATUS_PARTIALLY_SUCCEEDED = "PARTIALLY_SUCCEEDED" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequest. + #: This constant has a value of "CANCELING" + STATUS_CANCELING = "CANCELING" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequest. + #: This constant has a value of "CANCELED" + STATUS_CANCELED = "CANCELED" + + def __init__(self, **kwargs): + """ + Initializes a new SecurityAttributeWorkRequest 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 SecurityAttributeWorkRequest. + :type id: str + + :param operation_type: + The value to assign to the operation_type property of this SecurityAttributeWorkRequest. + Allowed values for this property are: "DELETE_SECURITY_ATTRIBUTE_DEFINITION", "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE", "BULK_DELETE_SECURITY_ATTRIBUTES", "BULK_EDIT_OF_SECURITY_ATTRIBUTES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type operation_type: str + + :param compartment_id: + The value to assign to the compartment_id property of this SecurityAttributeWorkRequest. + :type compartment_id: str + + :param status: + The value to assign to the status property of this SecurityAttributeWorkRequest. + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "PARTIALLY_SUCCEEDED", "CANCELING", "CANCELED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param resources: + The value to assign to the resources property of this SecurityAttributeWorkRequest. + :type resources: list[oci.security_attribute.models.WorkRequestResource] + + :param time_accepted: + The value to assign to the time_accepted property of this SecurityAttributeWorkRequest. + :type time_accepted: datetime + + :param time_started: + The value to assign to the time_started property of this SecurityAttributeWorkRequest. + :type time_started: datetime + + :param time_finished: + The value to assign to the time_finished property of this SecurityAttributeWorkRequest. + :type time_finished: datetime + + :param percent_complete: + The value to assign to the percent_complete property of this SecurityAttributeWorkRequest. + :type percent_complete: float + + """ + self.swagger_types = { + 'id': 'str', + 'operation_type': 'str', + 'compartment_id': 'str', + 'status': 'str', + 'resources': 'list[WorkRequestResource]', + 'time_accepted': 'datetime', + 'time_started': 'datetime', + 'time_finished': 'datetime', + 'percent_complete': 'float' + } + + self.attribute_map = { + 'id': 'id', + 'operation_type': 'operationType', + 'compartment_id': 'compartmentId', + 'status': 'status', + 'resources': 'resources', + 'time_accepted': 'timeAccepted', + 'time_started': 'timeStarted', + 'time_finished': 'timeFinished', + 'percent_complete': 'percentComplete' + } + + self._id = None + self._operation_type = None + self._compartment_id = None + self._status = None + self._resources = None + self._time_accepted = None + self._time_started = None + self._time_finished = None + self._percent_complete = None + + @property + def id(self): + """ + **[Required]** Gets the id of this SecurityAttributeWorkRequest. + The OCID of the work request. + + + :return: The id of this SecurityAttributeWorkRequest. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this SecurityAttributeWorkRequest. + The OCID of the work request. + + + :param id: The id of this SecurityAttributeWorkRequest. + :type: str + """ + self._id = id + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this SecurityAttributeWorkRequest. + An enum-like description of the type of work the work request is doing. + + Allowed values for this property are: "DELETE_SECURITY_ATTRIBUTE_DEFINITION", "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE", "BULK_DELETE_SECURITY_ATTRIBUTES", "BULK_EDIT_OF_SECURITY_ATTRIBUTES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The operation_type of this SecurityAttributeWorkRequest. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this SecurityAttributeWorkRequest. + An enum-like description of the type of work the work request is doing. + + + :param operation_type: The operation_type of this SecurityAttributeWorkRequest. + :type: str + """ + allowed_values = ["DELETE_SECURITY_ATTRIBUTE_DEFINITION", "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE", "BULK_DELETE_SECURITY_ATTRIBUTES", "BULK_EDIT_OF_SECURITY_ATTRIBUTES"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + operation_type = 'UNKNOWN_ENUM_VALUE' + self._operation_type = operation_type + + @property + def compartment_id(self): + """ + Gets the compartment_id of this SecurityAttributeWorkRequest. + The OCID of the compartment that contains the work request. + + + :return: The compartment_id of this SecurityAttributeWorkRequest. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this SecurityAttributeWorkRequest. + The OCID of the compartment that contains the work request. + + + :param compartment_id: The compartment_id of this SecurityAttributeWorkRequest. + :type: str + """ + self._compartment_id = compartment_id + + @property + def status(self): + """ + **[Required]** Gets the status of this SecurityAttributeWorkRequest. + The current status of the work request. + + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "PARTIALLY_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 SecurityAttributeWorkRequest. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this SecurityAttributeWorkRequest. + The current status of the work request. + + + :param status: The status of this SecurityAttributeWorkRequest. + :type: str + """ + allowed_values = ["ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "PARTIALLY_SUCCEEDED", "CANCELING", "CANCELED"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def resources(self): + """ + Gets the resources of this SecurityAttributeWorkRequest. + The resources this work request affects. + + + :return: The resources of this SecurityAttributeWorkRequest. + :rtype: list[oci.security_attribute.models.WorkRequestResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this SecurityAttributeWorkRequest. + The resources this work request affects. + + + :param resources: The resources of this SecurityAttributeWorkRequest. + :type: list[oci.security_attribute.models.WorkRequestResource] + """ + self._resources = resources + + @property + def time_accepted(self): + """ + Gets the time_accepted of this SecurityAttributeWorkRequest. + Date and time the work was accepted, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_accepted of this SecurityAttributeWorkRequest. + :rtype: datetime + """ + return self._time_accepted + + @time_accepted.setter + def time_accepted(self, time_accepted): + """ + Sets the time_accepted of this SecurityAttributeWorkRequest. + Date and time the work was accepted, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param time_accepted: The time_accepted of this SecurityAttributeWorkRequest. + :type: datetime + """ + self._time_accepted = time_accepted + + @property + def time_started(self): + """ + Gets the time_started of this SecurityAttributeWorkRequest. + Date and time the work started, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_started of this SecurityAttributeWorkRequest. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this SecurityAttributeWorkRequest. + Date and time the work started, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param time_started: The time_started of this SecurityAttributeWorkRequest. + :type: datetime + """ + self._time_started = time_started + + @property + def time_finished(self): + """ + Gets the time_finished of this SecurityAttributeWorkRequest. + Date and time the work completed, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_finished of this SecurityAttributeWorkRequest. + :rtype: datetime + """ + return self._time_finished + + @time_finished.setter + def time_finished(self, time_finished): + """ + Sets the time_finished of this SecurityAttributeWorkRequest. + Date and time the work completed, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param time_finished: The time_finished of this SecurityAttributeWorkRequest. + :type: datetime + """ + self._time_finished = time_finished + + @property + def percent_complete(self): + """ + Gets the percent_complete of this SecurityAttributeWorkRequest. + How much progress the operation has made. + + + :return: The percent_complete of this SecurityAttributeWorkRequest. + :rtype: float + """ + return self._percent_complete + + @percent_complete.setter + def percent_complete(self, percent_complete): + """ + Sets the percent_complete of this SecurityAttributeWorkRequest. + How much progress the operation has made. + + + :param percent_complete: The percent_complete of this SecurityAttributeWorkRequest. + :type: float + """ + self._percent_complete = percent_complete + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/security_attribute_work_request_error_summary.py b/src/oci/security_attribute/models/security_attribute_work_request_error_summary.py new file mode 100644 index 000000000..4fd9a302d --- /dev/null +++ b/src/oci/security_attribute/models/security_attribute_work_request_error_summary.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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SecurityAttributeWorkRequestErrorSummary(object): + """ + The error entity. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SecurityAttributeWorkRequestErrorSummary 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 SecurityAttributeWorkRequestErrorSummary. + :type code: str + + :param message: + The value to assign to the message property of this SecurityAttributeWorkRequestErrorSummary. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this SecurityAttributeWorkRequestErrorSummary. + :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 SecurityAttributeWorkRequestErrorSummary. + A machine-usable code for the error that occured. + + + :return: The code of this SecurityAttributeWorkRequestErrorSummary. + :rtype: str + """ + return self._code + + @code.setter + def code(self, code): + """ + Sets the code of this SecurityAttributeWorkRequestErrorSummary. + A machine-usable code for the error that occured. + + + :param code: The code of this SecurityAttributeWorkRequestErrorSummary. + :type: str + """ + self._code = code + + @property + def message(self): + """ + **[Required]** Gets the message of this SecurityAttributeWorkRequestErrorSummary. + A human-readable error string. + + + :return: The message of this SecurityAttributeWorkRequestErrorSummary. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this SecurityAttributeWorkRequestErrorSummary. + A human-readable error string. + + + :param message: The message of this SecurityAttributeWorkRequestErrorSummary. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + Gets the timestamp of this SecurityAttributeWorkRequestErrorSummary. + Date and time the error happened, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The timestamp of this SecurityAttributeWorkRequestErrorSummary. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this SecurityAttributeWorkRequestErrorSummary. + Date and time the error happened, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param timestamp: The timestamp of this SecurityAttributeWorkRequestErrorSummary. + :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/security_attribute/models/security_attribute_work_request_log_summary.py b/src/oci/security_attribute/models/security_attribute_work_request_log_summary.py new file mode 100644 index 000000000..283cb262c --- /dev/null +++ b/src/oci/security_attribute/models/security_attribute_work_request_log_summary.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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SecurityAttributeWorkRequestLogSummary(object): + """ + The log entity. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SecurityAttributeWorkRequestLogSummary 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 SecurityAttributeWorkRequestLogSummary. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this SecurityAttributeWorkRequestLogSummary. + :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 SecurityAttributeWorkRequestLogSummary. + A human-readable error string. + + + :return: The message of this SecurityAttributeWorkRequestLogSummary. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this SecurityAttributeWorkRequestLogSummary. + A human-readable error string. + + + :param message: The message of this SecurityAttributeWorkRequestLogSummary. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + Gets the timestamp of this SecurityAttributeWorkRequestLogSummary. + Date and time the log was written, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The timestamp of this SecurityAttributeWorkRequestLogSummary. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this SecurityAttributeWorkRequestLogSummary. + Date and time the log was written, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param timestamp: The timestamp of this SecurityAttributeWorkRequestLogSummary. + :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/security_attribute/models/security_attribute_work_request_summary.py b/src/oci/security_attribute/models/security_attribute_work_request_summary.py new file mode 100644 index 000000000..16f1fd484 --- /dev/null +++ b/src/oci/security_attribute/models/security_attribute_work_request_summary.py @@ -0,0 +1,386 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SecurityAttributeWorkRequestSummary(object): + """ + The work request summary. Tracks the status of the asynchronous operation. + """ + + #: A constant which can be used with the operation_type property of a SecurityAttributeWorkRequestSummary. + #: This constant has a value of "DELETE_SECURITY_ATTRIBUTE_DEFINITION" + OPERATION_TYPE_DELETE_SECURITY_ATTRIBUTE_DEFINITION = "DELETE_SECURITY_ATTRIBUTE_DEFINITION" + + #: A constant which can be used with the operation_type property of a SecurityAttributeWorkRequestSummary. + #: This constant has a value of "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE" + OPERATION_TYPE_DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE = "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE" + + #: A constant which can be used with the operation_type property of a SecurityAttributeWorkRequestSummary. + #: This constant has a value of "BULK_DELETE_SECURITY_ATTRIBUTES" + OPERATION_TYPE_BULK_DELETE_SECURITY_ATTRIBUTES = "BULK_DELETE_SECURITY_ATTRIBUTES" + + #: A constant which can be used with the operation_type property of a SecurityAttributeWorkRequestSummary. + #: This constant has a value of "BULK_EDIT_OF_SECURITY_ATTRIBUTES" + OPERATION_TYPE_BULK_EDIT_OF_SECURITY_ATTRIBUTES = "BULK_EDIT_OF_SECURITY_ATTRIBUTES" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequestSummary. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequestSummary. + #: 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 SecurityAttributeWorkRequestSummary. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequestSummary. + #: This constant has a value of "SUCCEEDED" + STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequestSummary. + #: This constant has a value of "PARTIALLY_SUCCEEDED" + STATUS_PARTIALLY_SUCCEEDED = "PARTIALLY_SUCCEEDED" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequestSummary. + #: This constant has a value of "CANCELING" + STATUS_CANCELING = "CANCELING" + + #: A constant which can be used with the status property of a SecurityAttributeWorkRequestSummary. + #: This constant has a value of "CANCELED" + STATUS_CANCELED = "CANCELED" + + def __init__(self, **kwargs): + """ + Initializes a new SecurityAttributeWorkRequestSummary 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 SecurityAttributeWorkRequestSummary. + :type id: str + + :param operation_type: + The value to assign to the operation_type property of this SecurityAttributeWorkRequestSummary. + Allowed values for this property are: "DELETE_SECURITY_ATTRIBUTE_DEFINITION", "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE", "BULK_DELETE_SECURITY_ATTRIBUTES", "BULK_EDIT_OF_SECURITY_ATTRIBUTES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type operation_type: str + + :param compartment_id: + The value to assign to the compartment_id property of this SecurityAttributeWorkRequestSummary. + :type compartment_id: str + + :param status: + The value to assign to the status property of this SecurityAttributeWorkRequestSummary. + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "PARTIALLY_SUCCEEDED", "CANCELING", "CANCELED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param resources: + The value to assign to the resources property of this SecurityAttributeWorkRequestSummary. + :type resources: list[oci.security_attribute.models.WorkRequestResource] + + :param time_accepted: + The value to assign to the time_accepted property of this SecurityAttributeWorkRequestSummary. + :type time_accepted: datetime + + :param time_started: + The value to assign to the time_started property of this SecurityAttributeWorkRequestSummary. + :type time_started: datetime + + :param time_finished: + The value to assign to the time_finished property of this SecurityAttributeWorkRequestSummary. + :type time_finished: datetime + + :param percent_complete: + The value to assign to the percent_complete property of this SecurityAttributeWorkRequestSummary. + :type percent_complete: float + + """ + self.swagger_types = { + 'id': 'str', + 'operation_type': 'str', + 'compartment_id': 'str', + 'status': 'str', + 'resources': 'list[WorkRequestResource]', + 'time_accepted': 'datetime', + 'time_started': 'datetime', + 'time_finished': 'datetime', + 'percent_complete': 'float' + } + + self.attribute_map = { + 'id': 'id', + 'operation_type': 'operationType', + 'compartment_id': 'compartmentId', + 'status': 'status', + 'resources': 'resources', + 'time_accepted': 'timeAccepted', + 'time_started': 'timeStarted', + 'time_finished': 'timeFinished', + 'percent_complete': 'percentComplete' + } + + self._id = None + self._operation_type = None + self._compartment_id = None + self._status = None + self._resources = None + self._time_accepted = None + self._time_started = None + self._time_finished = None + self._percent_complete = None + + @property + def id(self): + """ + **[Required]** Gets the id of this SecurityAttributeWorkRequestSummary. + The OCID of the work request. + + + :return: The id of this SecurityAttributeWorkRequestSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this SecurityAttributeWorkRequestSummary. + The OCID of the work request. + + + :param id: The id of this SecurityAttributeWorkRequestSummary. + :type: str + """ + self._id = id + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this SecurityAttributeWorkRequestSummary. + An enum-like description of the type of work the work request is doing. + + Allowed values for this property are: "DELETE_SECURITY_ATTRIBUTE_DEFINITION", "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE", "BULK_DELETE_SECURITY_ATTRIBUTES", "BULK_EDIT_OF_SECURITY_ATTRIBUTES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The operation_type of this SecurityAttributeWorkRequestSummary. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this SecurityAttributeWorkRequestSummary. + An enum-like description of the type of work the work request is doing. + + + :param operation_type: The operation_type of this SecurityAttributeWorkRequestSummary. + :type: str + """ + allowed_values = ["DELETE_SECURITY_ATTRIBUTE_DEFINITION", "DELETE_NON_EMPTY_SECURITY_ATTRIBUTE_NAMESPACE", "BULK_DELETE_SECURITY_ATTRIBUTES", "BULK_EDIT_OF_SECURITY_ATTRIBUTES"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + operation_type = 'UNKNOWN_ENUM_VALUE' + self._operation_type = operation_type + + @property + def compartment_id(self): + """ + Gets the compartment_id of this SecurityAttributeWorkRequestSummary. + The OCID of the compartment that contains the work request. + + + :return: The compartment_id of this SecurityAttributeWorkRequestSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this SecurityAttributeWorkRequestSummary. + The OCID of the compartment that contains the work request. + + + :param compartment_id: The compartment_id of this SecurityAttributeWorkRequestSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def status(self): + """ + **[Required]** Gets the status of this SecurityAttributeWorkRequestSummary. + The current status of the work request. + + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "PARTIALLY_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 SecurityAttributeWorkRequestSummary. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this SecurityAttributeWorkRequestSummary. + The current status of the work request. + + + :param status: The status of this SecurityAttributeWorkRequestSummary. + :type: str + """ + allowed_values = ["ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "PARTIALLY_SUCCEEDED", "CANCELING", "CANCELED"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def resources(self): + """ + Gets the resources of this SecurityAttributeWorkRequestSummary. + The resources this work request affects. + + + :return: The resources of this SecurityAttributeWorkRequestSummary. + :rtype: list[oci.security_attribute.models.WorkRequestResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this SecurityAttributeWorkRequestSummary. + The resources this work request affects. + + + :param resources: The resources of this SecurityAttributeWorkRequestSummary. + :type: list[oci.security_attribute.models.WorkRequestResource] + """ + self._resources = resources + + @property + def time_accepted(self): + """ + Gets the time_accepted of this SecurityAttributeWorkRequestSummary. + Date and time the work was accepted, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_accepted of this SecurityAttributeWorkRequestSummary. + :rtype: datetime + """ + return self._time_accepted + + @time_accepted.setter + def time_accepted(self, time_accepted): + """ + Sets the time_accepted of this SecurityAttributeWorkRequestSummary. + Date and time the work was accepted, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param time_accepted: The time_accepted of this SecurityAttributeWorkRequestSummary. + :type: datetime + """ + self._time_accepted = time_accepted + + @property + def time_started(self): + """ + Gets the time_started of this SecurityAttributeWorkRequestSummary. + Date and time the work started, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_started of this SecurityAttributeWorkRequestSummary. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this SecurityAttributeWorkRequestSummary. + Date and time the work started, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param time_started: The time_started of this SecurityAttributeWorkRequestSummary. + :type: datetime + """ + self._time_started = time_started + + @property + def time_finished(self): + """ + Gets the time_finished of this SecurityAttributeWorkRequestSummary. + Date and time the work completed, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :return: The time_finished of this SecurityAttributeWorkRequestSummary. + :rtype: datetime + """ + return self._time_finished + + @time_finished.setter + def time_finished(self, time_finished): + """ + Sets the time_finished of this SecurityAttributeWorkRequestSummary. + Date and time the work completed, in the format defined by RFC3339. + Example: `2016-08-25T21:10:29.600Z` + + + :param time_finished: The time_finished of this SecurityAttributeWorkRequestSummary. + :type: datetime + """ + self._time_finished = time_finished + + @property + def percent_complete(self): + """ + Gets the percent_complete of this SecurityAttributeWorkRequestSummary. + How much progress the operation has made. + + + :return: The percent_complete of this SecurityAttributeWorkRequestSummary. + :rtype: float + """ + return self._percent_complete + + @percent_complete.setter + def percent_complete(self, percent_complete): + """ + Sets the percent_complete of this SecurityAttributeWorkRequestSummary. + How much progress the operation has made. + + + :param percent_complete: The percent_complete of this SecurityAttributeWorkRequestSummary. + :type: float + """ + self._percent_complete = percent_complete + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/update_security_attribute_details.py b/src/oci/security_attribute/models/update_security_attribute_details.py new file mode 100644 index 000000000..de33a47b1 --- /dev/null +++ b/src/oci/security_attribute/models/update_security_attribute_details.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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateSecurityAttributeDetails(object): + """ + Details of the security attribute to be updated for a specific security attribute namespace. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateSecurityAttributeDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param description: + The value to assign to the description property of this UpdateSecurityAttributeDetails. + :type description: str + + :param is_retired: + The value to assign to the is_retired property of this UpdateSecurityAttributeDetails. + :type is_retired: bool + + :param validator: + The value to assign to the validator property of this UpdateSecurityAttributeDetails. + :type validator: oci.security_attribute.models.BaseSecurityAttributeValidator + + """ + self.swagger_types = { + 'description': 'str', + 'is_retired': 'bool', + 'validator': 'BaseSecurityAttributeValidator' + } + + self.attribute_map = { + 'description': 'description', + 'is_retired': 'isRetired', + 'validator': 'validator' + } + + self._description = None + self._is_retired = None + self._validator = None + + @property + def description(self): + """ + Gets the description of this UpdateSecurityAttributeDetails. + The description of the security attribute during creation. + + + :return: The description of this UpdateSecurityAttributeDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateSecurityAttributeDetails. + The description of the security attribute during creation. + + + :param description: The description of this UpdateSecurityAttributeDetails. + :type: str + """ + self._description = description + + @property + def is_retired(self): + """ + Gets the is_retired of this UpdateSecurityAttributeDetails. + Whether the security attribute is retired. + See `Managing Security Attributes`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attributes.htm + + + :return: The is_retired of this UpdateSecurityAttributeDetails. + :rtype: bool + """ + return self._is_retired + + @is_retired.setter + def is_retired(self, is_retired): + """ + Sets the is_retired of this UpdateSecurityAttributeDetails. + Whether the security attribute is retired. + See `Managing Security Attributes`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attributes.htm + + + :param is_retired: The is_retired of this UpdateSecurityAttributeDetails. + :type: bool + """ + self._is_retired = is_retired + + @property + def validator(self): + """ + Gets the validator of this UpdateSecurityAttributeDetails. + + :return: The validator of this UpdateSecurityAttributeDetails. + :rtype: oci.security_attribute.models.BaseSecurityAttributeValidator + """ + return self._validator + + @validator.setter + def validator(self, validator): + """ + Sets the validator of this UpdateSecurityAttributeDetails. + + :param validator: The validator of this UpdateSecurityAttributeDetails. + :type: oci.security_attribute.models.BaseSecurityAttributeValidator + """ + self._validator = validator + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/models/update_security_attribute_namespace_details.py b/src/oci/security_attribute/models/update_security_attribute_namespace_details.py new file mode 100644 index 000000000..b83ab1b48 --- /dev/null +++ b/src/oci/security_attribute/models/update_security_attribute_namespace_details.py @@ -0,0 +1,191 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateSecurityAttributeNamespaceDetails(object): + """ + Details of the security attribute namespace to be updated. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateSecurityAttributeNamespaceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param description: + The value to assign to the description property of this UpdateSecurityAttributeNamespaceDetails. + :type description: str + + :param is_retired: + The value to assign to the is_retired property of this UpdateSecurityAttributeNamespaceDetails. + :type is_retired: bool + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateSecurityAttributeNamespaceDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateSecurityAttributeNamespaceDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'description': 'str', + 'is_retired': 'bool', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + + self.attribute_map = { + 'description': 'description', + 'is_retired': 'isRetired', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + + self._description = None + self._is_retired = None + self._freeform_tags = None + self._defined_tags = None + + @property + def description(self): + """ + Gets the description of this UpdateSecurityAttributeNamespaceDetails. + The description you assign to the security attribute namespace to help you identify it. + + + :return: The description of this UpdateSecurityAttributeNamespaceDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateSecurityAttributeNamespaceDetails. + The description you assign to the security attribute namespace to help you identify it. + + + :param description: The description of this UpdateSecurityAttributeNamespaceDetails. + :type: str + """ + self._description = description + + @property + def is_retired(self): + """ + Gets the is_retired of this UpdateSecurityAttributeNamespaceDetails. + Indicates whether the security attribute namespace is retired. + See `Managing Security Attribute Namespaces`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attribute-namespaces.htm + + + :return: The is_retired of this UpdateSecurityAttributeNamespaceDetails. + :rtype: bool + """ + return self._is_retired + + @is_retired.setter + def is_retired(self, is_retired): + """ + Sets the is_retired of this UpdateSecurityAttributeNamespaceDetails. + Indicates whether the security attribute namespace is retired. + See `Managing Security Attribute Namespaces`__. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attribute-namespaces.htm + + + :param is_retired: The is_retired of this UpdateSecurityAttributeNamespaceDetails. + :type: bool + """ + self._is_retired = is_retired + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateSecurityAttributeNamespaceDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this UpdateSecurityAttributeNamespaceDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateSecurityAttributeNamespaceDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this UpdateSecurityAttributeNamespaceDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateSecurityAttributeNamespaceDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this UpdateSecurityAttributeNamespaceDetails. + :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 UpdateSecurityAttributeNamespaceDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this UpdateSecurityAttributeNamespaceDetails. + :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/security_attribute/models/work_request_resource.py b/src/oci/security_attribute/models/work_request_resource.py new file mode 100644 index 000000000..c7f253234 --- /dev/null +++ b/src/oci/security_attribute/models/work_request_resource.py @@ -0,0 +1,197 @@ +# 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: 20240815 + + +from oci.util import formatted_flat_dict, NONE_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): + """ + The resource entity. + """ + + #: 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 "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 "IN_PROGRESS" + ACTION_TYPE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "FAILED" + ACTION_TYPE_FAILED = "FAILED" + + 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 identifier: + The value to assign to the identifier property of this WorkRequestResource. + :type identifier: str + + :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", "RELATED", "IN_PROGRESS", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type action_type: str + + :param entity_uri: + The value to assign to the entity_uri property of this WorkRequestResource. + :type entity_uri: str + + """ + self.swagger_types = { + 'identifier': 'str', + 'entity_type': 'str', + 'action_type': 'str', + 'entity_uri': 'str' + } + + self.attribute_map = { + 'identifier': 'identifier', + 'entity_type': 'entityType', + 'action_type': 'actionType', + 'entity_uri': 'entityUri' + } + + self._identifier = None + self._entity_type = None + self._action_type = None + self._entity_uri = None + + @property + def identifier(self): + """ + **[Required]** Gets the identifier of this WorkRequestResource. + The resource identifier 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 resource identifier the work request affects. + + + :param identifier: The identifier of this WorkRequestResource. + :type: str + """ + self._identifier = identifier + + @property + def entity_type(self): + """ + **[Required]** Gets the entity_type of this WorkRequestResource. + The resource type the work request is 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 is 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 was affected by the work tracked by the work request. + + Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "RELATED", "IN_PROGRESS", "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 was affected by the work tracked by the work request. + + + :param action_type: The action_type of this WorkRequestResource. + :type: str + """ + allowed_values = ["CREATED", "UPDATED", "DELETED", "RELATED", "IN_PROGRESS", "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 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 + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/security_attribute/security_attribute_client.py b/src/oci/security_attribute/security_attribute_client.py new file mode 100644 index 000000000..ab65549a5 --- /dev/null +++ b/src/oci/security_attribute/security_attribute_client.py @@ -0,0 +1,2321 @@ +# 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: 20240815 + +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 security_attribute_type_mapping +missing = Sentinel("Missing") + + +class SecurityAttributeClient(object): + """ + Use the Security Attributes API to manage security attributes and security attribute namespaces. For more information, see the documentation for [Security Attributes](/iaas/Content/zero-trust-packet-routing/managing-security-attributes.htm) and [Security Attribute Nampespaces](/iaas/Content/zero-trust-packet-routing/managing-security-attribute-namespaces.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("security_attribute"): + 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': '/20240815', + 'service_endpoint_template': 'https://security-attribute.{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("security_attribute", config, signer, security_attribute_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def bulk_delete_security_attributes(self, bulk_delete_security_attributes_details, **kwargs): + """ + Deletes the specified security attribute definitions. This operation triggers a process that removes the + security attributes from all resources in your tenancy. The security attributes must be within the same security attribute namespace. + + The following actions happen immediately: + + After you start this operation, the state of the tag changes to DELETING, and security attribute removal + from resources begins. This process can take up to 48 hours depending on the number of resources that + are tagged and the regions in which those resources reside. + + When all security attributes have been removed, the state changes to DELETED. You cannot restore a deleted security attribute. After the security attribute state + changes to DELETED, you can use the same security attribute name again. + + After you start this operation, you cannot start either the :func:`delete_security_attribute` or the :func:`cascade_delete_security_attribute_namespace` operation until this process completes. + + In order to delete security attribute, you must first retire the security attribute. Use :func:`update_security_attribute` + to retire a security attribute. + + + :param oci.security_attribute.models.BulkDeleteSecurityAttributesDetails bulk_delete_security_attributes_details: (required) + Request object for deleting security attributes in bulk. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :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 bulk_delete_security_attributes API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/securityAttributes/actions/bulkDelete" + method = "POST" + operation_name = "bulk_delete_security_attributes" + api_reference_link = "" + + # 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"bulk_delete_security_attributes 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 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=bulk_delete_security_attributes_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, + header_params=header_params, + body=bulk_delete_security_attributes_details, + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def bulk_edit_security_attributes(self, **kwargs): + """ + Edits the specified list of security attributes for the selected resources. + This operation triggers a process that edits the attributes on all selected resources. The possible actions are: + + * Add a security attribute when it does not already exist on the resource. + * Update the value for a security attribute when it is present on the resource. + * Add a security attribute when it does not already exist on the resource or update the value when it is present on the resource. + * Remove a security attribute from a resource. The security attribute is removed from the resource regardless of the value. + + The edits can include a combination of operations and attributes. + However, multiple operations cannot apply to the same attribute in the same request. + + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param oci.security_attribute.models.BulkEditSecurityAttributeDetails bulk_edit_security_attribute_details: (optional) + The request object for bulk editing security attributes on resources in the compartment. + + :param obj 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 bulk_edit_security_attributes API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/securityAttributes/actions/bulkEdit" + method = "POST" + operation_name = "bulk_edit_security_attributes" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "opc_request_id", + "opc_retry_token", + "bulk_edit_security_attribute_details" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"bulk_edit_security_attributes 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 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=kwargs.get('bulk_edit_security_attribute_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, + header_params=header_params, + body=kwargs.get('bulk_edit_security_attribute_details'), + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def cascading_delete_security_attribute_namespace(self, security_attribute_namespace_id, **kwargs): + """ + Deletes the specified security attribute namespace. This operation triggers a process that removes all of the security attributes + defined in the specified security attribute namespace from all resources in your tenancy and then deletes the security attribute namespace. + + After you start the delete operation: + + * New security attribute key definitions cannot be created under the namespace. + * The state of the security attribute namespace changes to DELETING. + * Security attribute removal from the resources begins. + + This process can take up to 48 hours depending on the number of security attributes in the namespace, the number of resources + that are tagged, and the locations of the regions in which those resources reside. + + After all security attributes are removed, the state changes to DELETED. You cannot restore a deleted security attribute namespace. After the deleted security attribute namespace + changes its state to DELETED, you can use the name of the deleted security attribute namespace again. + + After you start this operation, you cannot start either the :func:`delete_security_attribute` or the :func:`bulk_delete_security_attributes` operation until this process completes. + + To delete a security attribute namespace, you must first retire it. Use :func:`update_security_attribute_namespace` + to retire a security attribute namespace. + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :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 cascading_delete_security_attribute_namespace API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}/actions/cascadeDelete" + method = "POST" + operation_name = "cascading_delete_security_attribute_namespace" + api_reference_link = "" + + # 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"cascading_delete_security_attribute_namespace got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_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 change_security_attribute_namespace_compartment(self, security_attribute_namespace_id, change_security_attribute_namespace_compartment_details, **kwargs): + """ + Moves the specified security attribute namespace to the specified compartment within the same tenancy. + + To move the security attribute namespace, you must have the manage security-attributes permission on both compartments. + For more information about IAM policies, see `Details for IAM`__. + + Moving a security attribute namespace moves all the security attributes contained in the security attribute namespace. + + __ https://docs.cloud.oracle.com/Content/Identity/policyreference/iampolicyreference.htm + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param oci.security_attribute.models.ChangeSecurityAttributeNamespaceCompartmentDetails change_security_attribute_namespace_compartment_details: (required) + Request object for changing the compartment of a security attribute namespace. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :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_security_attribute_namespace_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}/actions/changeCompartment" + method = "POST" + operation_name = "change_security_attribute_namespace_compartment" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "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"change_security_attribute_namespace_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_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), + "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_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_security_attribute_namespace_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_security_attribute_namespace_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_security_attribute(self, security_attribute_namespace_id, create_security_attribute_details, **kwargs): + """ + Creates a new security attribute in the specified security attribute namespace. + + The security attribute requires either the OCID or the name of the security attribute namespace that will contain this + security attribute. + + You must specify a *name* for the attribute, which must be unique across all attributes in the security attribute namespace + and cannot be changed. The only valid characters for security attribute names are:\u00A00-9, A-Z, a-z, -, _ characters. + Names are case insensitive. That means, for example, \"mySecurityAttribute\" and \"mysecurityattribute\" are not allowed in the same namespace. + If you specify a name that's already in use in the security attribute namespace, a 409 error is returned. + + The security attribute must have a *description*. It does not have to be unique, and you can change it with + :func:`update_security_attribute`. + + The security attribute must have a value type, which is specified with a validator. Security attribute can use either a + static value or a list of possible values. Static values are entered by a user applying the security attribute + to a resource. Lists are created by the user and the user must apply a value from the list. Lists + are validated. + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param oci.security_attribute.models.CreateSecurityAttributeDetails create_security_attribute_details: (required) + Request object for creating a new security attribute in the specified security attribute namespace. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.security_attribute.models.SecurityAttribute` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_security_attribute API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes" + method = "POST" + operation_name = "create_security_attribute" + api_reference_link = "" + + # 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_security_attribute got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=create_security_attribute_details, + response_type="SecurityAttribute", + 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_security_attribute_details, + response_type="SecurityAttribute", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def create_security_attribute_namespace(self, create_security_attribute_namespace_details, **kwargs): + """ + Creates a new security attribute namespace in the specified compartment. + + You must specify the compartment ID in the request object (remember that the tenancy is simply the root + compartment). + + You must also specify a *name* for the namespace, which must be unique across all namespaces in your tenancy + and cannot be changed. The only valid characters for security attribute names are: \u00A00-9, A-Z, a-z, -, _ characters. + Names are case insensitive. That means, for example, \"myNamespace\" and \"mynamespace\" are not allowed + in the same tenancy. Once you created a namespace, you cannot change the name. + If you specify a name that's already in use in the tenancy, a 409 error is returned. + + You must also specify a *description* for the namespace. + It does not have to be unique, and you can change it with + :func:`security_attribute_namespace`. + + + :param oci.security_attribute.models.CreateSecurityAttributeNamespaceDetails create_security_attribute_namespace_details: (required) + Request object for creating a new security attribute namespace. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.security_attribute.models.SecurityAttributeNamespace` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_security_attribute_namespace API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/securityAttributeNamespaces" + method = "POST" + operation_name = "create_security_attribute_namespace" + 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_security_attribute_namespace 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_security_attribute_namespace_details, + response_type="SecurityAttributeNamespace", + 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_security_attribute_namespace_details, + response_type="SecurityAttributeNamespace", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_security_attribute(self, security_attribute_namespace_id, security_attribute_name, **kwargs): + """ + Deletes the specified security attribute. This operation triggers a process that removes the + security attribute from all resources in your tenancy. + + When you start the delete operation, the state of the security attribute changes to DELETING and security attribute removal + from resources begins. This can take up to 48 hours depending on the number of resources that + were tagged as well as the regions in which those resources reside. + + When all attributes have been removed, the state changes to DELETED. You cannot restore a deleted attribute. Once the deleted attribute + changes its state to DELETED, you can use the same security attribute name again. + + After you start this operation, you cannot start either the :func:`bulk_delete_security_attributes` or the :func:`cascade_delete_tag_namespace` operation until this process completes. + + To delete a security attribute, you must first retire it. Use :func:`update_security_attribute` + to retire a security attribute. + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param str security_attribute_name: (required) + The name of the security attribute. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :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_security_attribute API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId', 'securityAttributeName'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes/{securityAttributeName}" + method = "DELETE" + operation_name = "delete_security_attribute" + api_reference_link = "" + + # 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"delete_security_attribute got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_id, + "securityAttributeName": security_attribute_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "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 delete_security_attribute_namespace(self, security_attribute_namespace_id, **kwargs): + """ + Deletes the specified security attribute namespace. Only an empty security attribute namespace can be deleted with this operation. To use this operation + to delete a security attribute namespace that contains security attributes, first delete all of its security attributes. + Use :func:`delete_security_attribute` to delete a security attribute. + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :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_security_attribute_namespace API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}" + method = "DELETE" + operation_name = "delete_security_attribute_namespace" + api_reference_link = "" + + # 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"delete_security_attribute_namespace got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_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 get_security_attribute(self, security_attribute_namespace_id, security_attribute_name, **kwargs): + """ + Gets the specified security attribute's information. + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param str security_attribute_name: (required) + The name of the security attribute. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.security_attribute.models.SecurityAttribute` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_security_attribute API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId', 'securityAttributeName'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes/{securityAttributeName}" + method = "GET" + operation_name = "get_security_attribute" + 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_security_attribute got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_id, + "securityAttributeName": security_attribute_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="SecurityAttribute", + 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="SecurityAttribute", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_security_attribute_namespace(self, security_attribute_namespace_id, **kwargs): + """ + Gets the specified security attribute namespace's information. + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.security_attribute.models.SecurityAttributeNamespace` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_security_attribute_namespace API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}" + method = "GET" + operation_name = "get_security_attribute_namespace" + 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_security_attribute_namespace got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_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="SecurityAttributeNamespace", + 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="SecurityAttributeNamespace", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_security_attribute_work_request(self, work_request_id, **kwargs): + """ + Gets details on a specified work request. The workRequestID is returned in the opc-work-request-id header + for any asynchronous operation in security attributes service. + + + :param str work_request_id: (required) + The OCID of the work request. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.security_attribute.models.SecurityAttributeWorkRequest` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_security_attribute_work_request API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/securityAttributeWorkRequests/{workRequestId}" + method = "GET" + operation_name = "get_security_attribute_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_security_attribute_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="SecurityAttributeWorkRequest", + 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="SecurityAttributeWorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_security_attribute_namespaces(self, **kwargs): + """ + Lists the security attribute namespaces in the specified compartment. + + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str page: (optional) + The value of the `opc-next-page` response header from the previous \"List\" call. + + :param int limit: (optional) + The maximum number of items to return in a paginated \"List\" call. + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. You can provide one sort order (`sortOrder`). Default order for + TIMECREATED is descending. Default order for NAME is ascending. The NAME + sort order is case sensitive. + + **Note:** In general, some \"List\" operations (for example, `ListInstances`) let you + optionally filter by Availability Domain if the scope of the resource type is within a + single Availability Domain. If you call one of these \"List\" operations without specifying + an Availability Domain, the resources are grouped by Availability Domain, then sorted. + + Allowed values are: "TIMECREATED", "NAME" + + :param str name: (optional) + A filter to return only resources that match the entire display name given. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param bool compartment_id_in_subtree: (optional) + An optional boolean parameter indicating whether to retrieve all security attribute namespaces in subcompartments. If this + parameter is not specified, only the namespaces defined in the specified compartment are retrieved. + + :param str lifecycle_state: (optional) + A filter to only return resources that match the given lifecycle state. The state value is case-insensitive. + + Allowed values are: "ACTIVE", "INACTIVE", "DELETING", "DELETED" + + :param obj 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 list of :class:`~oci.security_attribute.models.SecurityAttributeNamespaceSummary` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_security_attribute_namespaces API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/securityAttributeNamespaces" + method = "GET" + operation_name = "list_security_attribute_namespaces" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "compartment_id", + "page", + "limit", + "sort_order", + "sort_by", + "name", + "opc_request_id", + "compartment_id_in_subtree", + "lifecycle_state" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_security_attribute_namespaces got unknown kwargs: {extra_kwargs!r}") + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["TIMECREATED", "NAME"] + 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 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["ACTIVE", "INACTIVE", "DELETING", "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 }" + ) + + query_params = { + "compartmentId": kwargs.get("compartment_id", missing), + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing), + "name": kwargs.get("name", missing), + "compartmentIdInSubtree": kwargs.get("compartment_id_in_subtree", 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 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="list[SecurityAttributeNamespaceSummary]", + 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="list[SecurityAttributeNamespaceSummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_security_attribute_work_request_errors(self, work_request_id, **kwargs): + """ + Gets the errors for a work request. + + + :param str work_request_id: (required) + The OCID of the work request. + + :param str page: (optional) + The value of the `opc-next-page` response header from the previous \"List\" call. + + :param int limit: (optional) + The maximum number of items to return in a paginated \"List\" call. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.security_attribute.models.SecurityAttributeWorkRequestErrorSummary` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_security_attribute_work_request_errors API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/securityAttributeWorkRequests/{workRequestId}/errors" + method = "GET" + operation_name = "list_security_attribute_work_request_errors" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "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_security_attribute_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') + + query_params = { + "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, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="list[SecurityAttributeWorkRequestErrorSummary]", + 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[SecurityAttributeWorkRequestErrorSummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_security_attribute_work_request_logs(self, work_request_id, **kwargs): + """ + Gets the logs for a work request. + + + :param str work_request_id: (required) + The OCID of the work request. + + :param str page: (optional) + The value of the `opc-next-page` response header from the previous \"List\" call. + + :param int limit: (optional) + The maximum number of items to return in a paginated \"List\" call. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.security_attribute.models.SecurityAttributeWorkRequestLogSummary` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_security_attribute_work_request_logs API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/securityAttributeWorkRequests/{workRequestId}/logs" + method = "GET" + operation_name = "list_security_attribute_work_request_logs" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "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_security_attribute_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') + + query_params = { + "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, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="list[SecurityAttributeWorkRequestLogSummary]", + 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[SecurityAttributeWorkRequestLogSummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_security_attribute_work_requests(self, **kwargs): + """ + Lists the security attribute work requests in compartment. + + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str page: (optional) + The value of the `opc-next-page` response header from the previous \"List\" call. + + :param int limit: (optional) + The maximum number of items to return in a paginated \"List\" call. + + :param str resource_identifier: (optional) + The identifier of the resource the work request affects. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.security_attribute.models.SecurityAttributeWorkRequestSummary` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_security_attribute_work_requests API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/securityAttributeWorkRequests" + method = "GET" + operation_name = "list_security_attribute_work_requests" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "compartment_id", + "page", + "limit", + "resource_identifier", + "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_security_attribute_work_requests got unknown kwargs: {extra_kwargs!r}") + + query_params = { + "compartmentId": kwargs.get("compartment_id", missing), + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "resourceIdentifier": kwargs.get("resource_identifier", 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="list[SecurityAttributeWorkRequestSummary]", + 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="list[SecurityAttributeWorkRequestSummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_security_attributes(self, security_attribute_namespace_id, **kwargs): + """ + Lists the security attributes in the specified namespace. + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param str page: (optional) + The value of the `opc-next-page` response header from the previous \"List\" call. + + :param int limit: (optional) + The maximum number of items to return in a paginated \"List\" call. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str lifecycle_state: (optional) + A filter to only return resources that match the given lifecycle state. The state value is case-insensitive. + + Allowed values are: "ACTIVE", "INACTIVE", "DELETING", "DELETED" + + :param obj 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 list of :class:`~oci.security_attribute.models.SecurityAttributeSummary` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_security_attributes API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes" + method = "GET" + operation_name = "list_security_attributes" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "page", + "limit", + "opc_request_id", + "lifecycle_state" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_security_attributes got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["ACTIVE", "INACTIVE", "DELETING", "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 }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", 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 is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="list[SecurityAttributeSummary]", + 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[SecurityAttributeSummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_security_attribute(self, security_attribute_namespace_id, security_attribute_name, update_security_attribute_details, **kwargs): + """ + Updates the specified security attribute. You can only update `description`, and `isRetired`. + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param str security_attribute_name: (required) + The name of the security attribute. + + :param oci.security_attribute.models.UpdateSecurityAttributeDetails update_security_attribute_details: (required) + Request object for updating a security attribute. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.security_attribute.models.SecurityAttribute` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_security_attribute API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId', 'securityAttributeName'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes/{securityAttributeName}" + method = "PUT" + operation_name = "update_security_attribute" + api_reference_link = "" + + # 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"update_security_attribute got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_id, + "securityAttributeName": security_attribute_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_security_attribute_details, + response_type="SecurityAttribute", + 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_security_attribute_details, + response_type="SecurityAttribute", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_security_attribute_namespace(self, security_attribute_namespace_id, update_security_attribute_namespace_details, **kwargs): + """ + Updates the specified security attribute namespace. You can't update the namespace name. + + Updating `isRetired` to 'true' retires the namespace and all the security attributes in the namespace. Reactivating a + namespace (changing `isRetired` from 'true' to 'false') does not reactivate security attributes. + To reactivate the security attributes, you must reactivate each one individually *after* you reactivate the namespace, + using :func:`update_tag`. For more information about retiring security attribute namespaces, see + `Managing Security Attribute Namespaces`__. + + You can't add a namespace with the same name as a retired namespace in the same tenancy. + + __ https://docs.cloud.oracle.com/Content/zero-trust-packet-routing/managing-security-attribute-namespaces.htm + + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param oci.security_attribute.models.UpdateSecurityAttributeNamespaceDetails update_security_attribute_namespace_details: (required) + Request object for updating a namespace. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.security_attribute.models.SecurityAttributeNamespace` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_security_attribute_namespace API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['securityAttributeNamespaceId'] + resource_path = "/securityAttributeNamespaces/{securityAttributeNamespaceId}" + method = "PUT" + operation_name = "update_security_attribute_namespace" + api_reference_link = "" + + # 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"update_security_attribute_namespace got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "securityAttributeNamespaceId": security_attribute_namespace_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_security_attribute_namespace_details, + response_type="SecurityAttributeNamespace", + 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_security_attribute_namespace_details, + response_type="SecurityAttributeNamespace", + 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/security_attribute/security_attribute_client_composite_operations.py b/src/oci/security_attribute/security_attribute_client_composite_operations.py new file mode 100644 index 000000000..516e0711a --- /dev/null +++ b/src/oci/security_attribute/security_attribute_client_composite_operations.py @@ -0,0 +1,265 @@ +# 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: 20240815 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class SecurityAttributeClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.security_attribute.SecurityAttributeClient` 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 SecurityAttributeClientCompositeOperations object + + :param SecurityAttributeClient client: + The service client which will be wrapped by this object + """ + self.client = client + + def create_security_attribute_and_wait_for_state(self, security_attribute_namespace_id, create_security_attribute_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.security_attribute.SecurityAttributeClient.create_security_attribute` and waits for the :py:class:`~oci.security_attribute.models.SecurityAttribute` acted upon + to enter the given state(s). + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param oci.security_attribute.models.CreateSecurityAttributeDetails create_security_attribute_details: (required) + Request object for creating a new security attribute in the specified security attribute namespace. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.security_attribute.models.SecurityAttribute.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.security_attribute.SecurityAttributeClient.create_security_attribute` + + :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_security_attribute(security_attribute_namespace_id, create_security_attribute_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + security_attribute_namespace_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_security_attribute(security_attribute_namespace_id, security_attribute_name), # 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_security_attribute_namespace_and_wait_for_state(self, create_security_attribute_namespace_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.security_attribute.SecurityAttributeClient.create_security_attribute_namespace` and waits for the :py:class:`~oci.security_attribute.models.SecurityAttributeNamespace` acted upon + to enter the given state(s). + + :param oci.security_attribute.models.CreateSecurityAttributeNamespaceDetails create_security_attribute_namespace_details: (required) + Request object for creating a new security attribute namespace. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.security_attribute.models.SecurityAttributeNamespace.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.security_attribute.SecurityAttributeClient.create_security_attribute_namespace` + + :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_security_attribute_namespace(create_security_attribute_namespace_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + security_attribute_namespace_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_security_attribute_namespace(security_attribute_namespace_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_security_attribute_namespace_and_wait_for_state(self, security_attribute_namespace_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.security_attribute.SecurityAttributeClient.delete_security_attribute_namespace` and waits for the :py:class:`~oci.security_attribute.models.SecurityAttributeNamespace` acted upon + to enter the given state(s). + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.security_attribute.models.SecurityAttributeNamespace.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.security_attribute.SecurityAttributeClient.delete_security_attribute_namespace` + + :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_security_attribute_namespace(security_attribute_namespace_id) + operation_result = None + try: + operation_result = self.client.delete_security_attribute_namespace(security_attribute_namespace_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_security_attribute_namespace, this would result in the operation to fail if the resource is not found! Please, do not pass this kwarg if this was not intended") + else: + """ + If the user does not send in this value, we set it to True by default. + We are doing this because during a delete resource scenario and waiting on its state, the service can + return a 404 NOT FOUND exception as the resource was deleted and a get on its state would fail + """ + waiter_kwargs["succeed_on_not_found"] = True + waiter_result = oci.wait_until( + self.client, + initial_get_result, # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_security_attribute_and_wait_for_state(self, security_attribute_namespace_id, security_attribute_name, update_security_attribute_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.security_attribute.SecurityAttributeClient.update_security_attribute` and waits for the :py:class:`~oci.security_attribute.models.SecurityAttribute` acted upon + to enter the given state(s). + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param str security_attribute_name: (required) + The name of the security attribute. + + :param oci.security_attribute.models.UpdateSecurityAttributeDetails update_security_attribute_details: (required) + Request object for updating a security attribute. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.security_attribute.models.SecurityAttribute.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.security_attribute.SecurityAttributeClient.update_security_attribute` + + :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_security_attribute(security_attribute_namespace_id, security_attribute_name, update_security_attribute_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + security_attribute_namespace_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_security_attribute(security_attribute_namespace_id, security_attribute_name), # 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_security_attribute_namespace_and_wait_for_state(self, security_attribute_namespace_id, update_security_attribute_namespace_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.security_attribute.SecurityAttributeClient.update_security_attribute_namespace` and waits for the :py:class:`~oci.security_attribute.models.SecurityAttributeNamespace` acted upon + to enter the given state(s). + + :param str security_attribute_namespace_id: (required) + The OCID of the security attribute namespace. + + :param oci.security_attribute.models.UpdateSecurityAttributeNamespaceDetails update_security_attribute_namespace_details: (required) + Request object for updating a namespace. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.security_attribute.models.SecurityAttributeNamespace.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.security_attribute.SecurityAttributeClient.update_security_attribute_namespace` + + :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_security_attribute_namespace(security_attribute_namespace_id, update_security_attribute_namespace_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + security_attribute_namespace_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_security_attribute_namespace(security_attribute_namespace_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/version.py b/src/oci/version.py index 15eb0fb77..49ec7390c 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.135.0" +__version__ = "2.135.1" diff --git a/src/oci/zpr/__init__.py b/src/oci/zpr/__init__.py new file mode 100644 index 000000000..b50078eae --- /dev/null +++ b/src/oci/zpr/__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: 20240301 + +from __future__ import absolute_import + + +from .zpr_client import ZprClient +from .zpr_client_composite_operations import ZprClientCompositeOperations +from . import models + +__all__ = ["ZprClient", "ZprClientCompositeOperations", "models"] diff --git a/src/oci/zpr/models/__init__.py b/src/oci/zpr/models/__init__.py new file mode 100644 index 000000000..d36044325 --- /dev/null +++ b/src/oci/zpr/models/__init__.py @@ -0,0 +1,42 @@ +# 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: 20240301 + +from __future__ import absolute_import + +from .configuration import Configuration +from .create_configuration_details import CreateConfigurationDetails +from .create_zpr_policy_details import CreateZprPolicyDetails +from .update_zpr_policy_details import UpdateZprPolicyDetails +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 +from .zpr_policy import ZprPolicy +from .zpr_policy_collection import ZprPolicyCollection +from .zpr_policy_summary import ZprPolicySummary + +# Maps type names to classes for zpr services. +zpr_type_mapping = { + "Configuration": Configuration, + "CreateConfigurationDetails": CreateConfigurationDetails, + "CreateZprPolicyDetails": CreateZprPolicyDetails, + "UpdateZprPolicyDetails": UpdateZprPolicyDetails, + "WorkRequest": WorkRequest, + "WorkRequestError": WorkRequestError, + "WorkRequestErrorCollection": WorkRequestErrorCollection, + "WorkRequestLogEntry": WorkRequestLogEntry, + "WorkRequestLogEntryCollection": WorkRequestLogEntryCollection, + "WorkRequestResource": WorkRequestResource, + "WorkRequestSummary": WorkRequestSummary, + "WorkRequestSummaryCollection": WorkRequestSummaryCollection, + "ZprPolicy": ZprPolicy, + "ZprPolicyCollection": ZprPolicyCollection, + "ZprPolicySummary": ZprPolicySummary +} diff --git a/src/oci/zpr/models/configuration.py b/src/oci/zpr/models/configuration.py new file mode 100644 index 000000000..db326ca11 --- /dev/null +++ b/src/oci/zpr/models/configuration.py @@ -0,0 +1,449 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class Configuration(object): + """ + The configuration details of ZPR in the root compartment (the root compartment is the tenancy). + """ + + #: A constant which can be used with the zpr_status property of a Configuration. + #: This constant has a value of "ENABLED" + ZPR_STATUS_ENABLED = "ENABLED" + + #: A constant which can be used with the zpr_status property of a Configuration. + #: This constant has a value of "DISABLED" + ZPR_STATUS_DISABLED = "DISABLED" + + #: A constant which can be used with the lifecycle_state property of a Configuration. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a Configuration. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a Configuration. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a Configuration. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a Configuration. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a Configuration. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new Configuration 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 Configuration. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this Configuration. + :type compartment_id: str + + :param zpr_status: + The value to assign to the zpr_status property of this Configuration. + Allowed values for this property are: "ENABLED", "DISABLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type zpr_status: str + + :param time_created: + The value to assign to the time_created property of this Configuration. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this Configuration. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this Configuration. + Allowed values for this property are: "ACTIVE", "CREATING", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this Configuration. + :type lifecycle_details: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this Configuration. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this Configuration. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this Configuration. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'zpr_status': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'zpr_status': 'zprStatus', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + + self._id = None + self._compartment_id = None + self._zpr_status = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this Configuration. + The `OCID`__ of the ZprConfiguration. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this Configuration. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this Configuration. + The `OCID`__ of the ZprConfiguration. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this Configuration. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this Configuration. + The `OCID`__ of the tenancy into which ZPR will be onboarded. + + __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this Configuration. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this Configuration. + The `OCID`__ of the tenancy into which ZPR will be onboarded. + + __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this Configuration. + :type: str + """ + self._compartment_id = compartment_id + + @property + def zpr_status(self): + """ + **[Required]** Gets the zpr_status of this Configuration. + The enabled or disabled status of ZPR in tenancy. + + Allowed values for this property are: "ENABLED", "DISABLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The zpr_status of this Configuration. + :rtype: str + """ + return self._zpr_status + + @zpr_status.setter + def zpr_status(self, zpr_status): + """ + Sets the zpr_status of this Configuration. + The enabled or disabled status of ZPR in tenancy. + + + :param zpr_status: The zpr_status of this Configuration. + :type: str + """ + allowed_values = ["ENABLED", "DISABLED"] + if not value_allowed_none_or_none_sentinel(zpr_status, allowed_values): + zpr_status = 'UNKNOWN_ENUM_VALUE' + self._zpr_status = zpr_status + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this Configuration. + The date and time that ZPR was onboarded to the tenancy, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_created of this Configuration. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this Configuration. + The date and time that ZPR was onboarded to the tenancy, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_created: The time_created of this Configuration. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this Configuration. + The date and time that ZPR was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_updated of this Configuration. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this Configuration. + The date and time that ZPR was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_updated: The time_updated of this Configuration. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this Configuration. + The current state of ZPR in the tenancy. + + Allowed values for this property are: "ACTIVE", "CREATING", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this Configuration. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this Configuration. + The current state of ZPR in the tenancy. + + + :param lifecycle_state: The lifecycle_state of this Configuration. + :type: str + """ + allowed_values = ["ACTIVE", "CREATING", "UPDATING", "DELETING", "DELETED", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this Configuration. + A message that describes the current state of ZPR in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :return: The lifecycle_details of this Configuration. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this Configuration. + A message that describes the current state of ZPR in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :param lifecycle_details: The lifecycle_details of this Configuration. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this Configuration. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this Configuration. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this Configuration. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this Configuration. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this Configuration. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this Configuration. + :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 Configuration. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this Configuration. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this Configuration. + 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 Configuration. + :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 Configuration. + 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 Configuration. + :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/zpr/models/create_configuration_details.py b/src/oci/zpr/models/create_configuration_details.py new file mode 100644 index 000000000..d556cca88 --- /dev/null +++ b/src/oci/zpr/models/create_configuration_details.py @@ -0,0 +1,189 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateConfigurationDetails(object): + """ + The configuration details to onboard ZPR in the root compartment (the root compartment is the tenancy). + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateConfigurationDetails 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 CreateConfigurationDetails. + :type compartment_id: str + + :param zpr_status: + The value to assign to the zpr_status property of this CreateConfigurationDetails. + :type zpr_status: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateConfigurationDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateConfigurationDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'zpr_status': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'zpr_status': 'zprStatus', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + + self._compartment_id = None + self._zpr_status = None + self._freeform_tags = None + self._defined_tags = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateConfigurationDetails. + The `OCID`__ of the tenancy into which ZPR resources will be bootstrapped. + + __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this CreateConfigurationDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateConfigurationDetails. + The `OCID`__ of the tenancy into which ZPR resources will be bootstrapped. + + __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this CreateConfigurationDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def zpr_status(self): + """ + Gets the zpr_status of this CreateConfigurationDetails. + The enabled or disabled status of ZPR in the tenancy. + + + :return: The zpr_status of this CreateConfigurationDetails. + :rtype: str + """ + return self._zpr_status + + @zpr_status.setter + def zpr_status(self, zpr_status): + """ + Sets the zpr_status of this CreateConfigurationDetails. + The enabled or disabled status of ZPR in the tenancy. + + + :param zpr_status: The zpr_status of this CreateConfigurationDetails. + :type: str + """ + self._zpr_status = zpr_status + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateConfigurationDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateConfigurationDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateConfigurationDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateConfigurationDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateConfigurationDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateConfigurationDetails. + :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 CreateConfigurationDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateConfigurationDetails. + :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/zpr/models/create_zpr_policy_details.py b/src/oci/zpr/models/create_zpr_policy_details.py new file mode 100644 index 000000000..16e3691fa --- /dev/null +++ b/src/oci/zpr/models/create_zpr_policy_details.py @@ -0,0 +1,251 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateZprPolicyDetails(object): + """ + The data to create a ZprPolicy. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateZprPolicyDetails 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 CreateZprPolicyDetails. + :type compartment_id: str + + :param description: + The value to assign to the description property of this CreateZprPolicyDetails. + :type description: str + + :param name: + The value to assign to the name property of this CreateZprPolicyDetails. + :type name: str + + :param statements: + The value to assign to the statements property of this CreateZprPolicyDetails. + :type statements: list[str] + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateZprPolicyDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateZprPolicyDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'description': 'str', + 'name': 'str', + 'statements': 'list[str]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'description': 'description', + 'name': 'name', + 'statements': 'statements', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + + self._compartment_id = None + self._description = None + self._name = None + self._statements = None + self._freeform_tags = None + self._defined_tags = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateZprPolicyDetails. + The `OCID`__ of the compartment to create the ZprPolicy in. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this CreateZprPolicyDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateZprPolicyDetails. + The `OCID`__ of the compartment to create the ZprPolicy in. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this CreateZprPolicyDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def description(self): + """ + **[Required]** Gets the description of this CreateZprPolicyDetails. + The description you assign to the ZprPolicy during creation. Does not have to be unique, and it's changeable. + + + :return: The description of this CreateZprPolicyDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateZprPolicyDetails. + The description you assign to the ZprPolicy during creation. Does not have to be unique, and it's changeable. + + + :param description: The description of this CreateZprPolicyDetails. + :type: str + """ + self._description = description + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateZprPolicyDetails. + The name you assign to the ZprPolicy during creation. The name must be unique across all ZPL policies in the tenancy. + + + :return: The name of this CreateZprPolicyDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateZprPolicyDetails. + The name you assign to the ZprPolicy during creation. The name must be unique across all ZPL policies in the tenancy. + + + :param name: The name of this CreateZprPolicyDetails. + :type: str + """ + self._name = name + + @property + def statements(self): + """ + **[Required]** Gets the statements of this CreateZprPolicyDetails. + An array of ZprPolicy statements(up to 25 statements per ZprPolicy) written in the Zero Trust Packet Routing Policy Language. + + + :return: The statements of this CreateZprPolicyDetails. + :rtype: list[str] + """ + return self._statements + + @statements.setter + def statements(self, statements): + """ + Sets the statements of this CreateZprPolicyDetails. + An array of ZprPolicy statements(up to 25 statements per ZprPolicy) written in the Zero Trust Packet Routing Policy Language. + + + :param statements: The statements of this CreateZprPolicyDetails. + :type: list[str] + """ + self._statements = statements + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateZprPolicyDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateZprPolicyDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateZprPolicyDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateZprPolicyDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateZprPolicyDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateZprPolicyDetails. + :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 CreateZprPolicyDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateZprPolicyDetails. + :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/zpr/models/update_zpr_policy_details.py b/src/oci/zpr/models/update_zpr_policy_details.py new file mode 100644 index 000000000..29c96a17c --- /dev/null +++ b/src/oci/zpr/models/update_zpr_policy_details.py @@ -0,0 +1,185 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateZprPolicyDetails(object): + """ + The data to update a ZprPolicy. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateZprPolicyDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param description: + The value to assign to the description property of this UpdateZprPolicyDetails. + :type description: str + + :param statements: + The value to assign to the statements property of this UpdateZprPolicyDetails. + :type statements: list[str] + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateZprPolicyDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateZprPolicyDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'description': 'str', + 'statements': 'list[str]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + + self.attribute_map = { + 'description': 'description', + 'statements': 'statements', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + + self._description = None + self._statements = None + self._freeform_tags = None + self._defined_tags = None + + @property + def description(self): + """ + Gets the description of this UpdateZprPolicyDetails. + The description you assign to the ZprPolicy during creation. Does not have to be unique, and it's changeable. + + + :return: The description of this UpdateZprPolicyDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateZprPolicyDetails. + The description you assign to the ZprPolicy during creation. Does not have to be unique, and it's changeable. + + + :param description: The description of this UpdateZprPolicyDetails. + :type: str + """ + self._description = description + + @property + def statements(self): + """ + Gets the statements of this UpdateZprPolicyDetails. + An array of ZprPolicy statements(up to 25 statements per ZprPolicy) written in the Zero Trust Packet Routing Policy Language. + + + :return: The statements of this UpdateZprPolicyDetails. + :rtype: list[str] + """ + return self._statements + + @statements.setter + def statements(self, statements): + """ + Sets the statements of this UpdateZprPolicyDetails. + An array of ZprPolicy statements(up to 25 statements per ZprPolicy) written in the Zero Trust Packet Routing Policy Language. + + + :param statements: The statements of this UpdateZprPolicyDetails. + :type: list[str] + """ + self._statements = statements + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateZprPolicyDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this UpdateZprPolicyDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateZprPolicyDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this UpdateZprPolicyDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateZprPolicyDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this UpdateZprPolicyDetails. + :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 UpdateZprPolicyDetails. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this UpdateZprPolicyDetails. + :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/zpr/models/work_request.py b/src/oci/zpr/models/work_request.py new file mode 100644 index 000000000..184a06b0e --- /dev/null +++ b/src/oci/zpr/models/work_request.py @@ -0,0 +1,459 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequest(object): + """ + An asynchronous work request. Work requests help you monitor long-running operations. When you start a long-running operation, + the service creates a work request. A work request is an activity log that lets you track each step in the operation's + progress. Each work request has an OCID that lets you interact with it programmatically and use it for automation. + """ + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_ZPR_POLICY" + OPERATION_TYPE_CREATE_ZPR_POLICY = "CREATE_ZPR_POLICY" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_ZPR_POLICY" + OPERATION_TYPE_UPDATE_ZPR_POLICY = "UPDATE_ZPR_POLICY" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_ZPR_POLICY" + OPERATION_TYPE_DELETE_ZPR_POLICY = "DELETE_ZPR_POLICY" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_ZPR_CONFIGURATION" + OPERATION_TYPE_CREATE_ZPR_CONFIGURATION = "CREATE_ZPR_CONFIGURATION" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_ZPR_CONFIGURATION" + OPERATION_TYPE_UPDATE_ZPR_CONFIGURATION = "UPDATE_ZPR_CONFIGURATION" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_ZPR_CONFIGURATION" + OPERATION_TYPE_DELETE_ZPR_CONFIGURATION = "DELETE_ZPR_CONFIGURATION" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "IN_PROGRESS" + STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "WAITING" + STATUS_WAITING = "WAITING" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "SUCCEEDED" + STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "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_ZPR_POLICY", "UPDATE_ZPR_POLICY", "DELETE_ZPR_POLICY", "CREATE_ZPR_CONFIGURATION", "UPDATE_ZPR_CONFIGURATION", "DELETE_ZPR_CONFIGURATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type operation_type: str + + :param status: + The value to assign to the status property of this WorkRequest. + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "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.zpr.models.WorkRequestResource] + + :param percent_complete: + The value to assign to the percent_complete property of this WorkRequest. + :type percent_complete: float + + :param time_accepted: + The value to assign to the time_accepted property of this WorkRequest. + :type time_accepted: datetime + + :param time_started: + The value to assign to the time_started property of this WorkRequest. + :type time_started: datetime + + :param time_finished: + The value to assign to the time_finished property of this WorkRequest. + :type time_finished: datetime + + :param time_updated: + The value to assign to the time_updated property of this WorkRequest. + :type time_updated: datetime + + """ + self.swagger_types = { + 'operation_type': 'str', + 'status': 'str', + 'id': 'str', + 'compartment_id': 'str', + 'resources': 'list[WorkRequestResource]', + 'percent_complete': 'float', + 'time_accepted': 'datetime', + 'time_started': 'datetime', + 'time_finished': 'datetime', + 'time_updated': 'datetime' + } + + self.attribute_map = { + 'operation_type': 'operationType', + 'status': 'status', + 'id': 'id', + 'compartment_id': 'compartmentId', + 'resources': 'resources', + 'percent_complete': 'percentComplete', + 'time_accepted': 'timeAccepted', + 'time_started': 'timeStarted', + 'time_finished': 'timeFinished', + 'time_updated': 'timeUpdated' + } + + self._operation_type = None + self._status = None + self._id = None + self._compartment_id = None + self._resources = None + self._percent_complete = None + self._time_accepted = None + self._time_started = None + self._time_finished = None + self._time_updated = None + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this WorkRequest. + The asynchronous operation tracked by this work request. + + Allowed values for this property are: "CREATE_ZPR_POLICY", "UPDATE_ZPR_POLICY", "DELETE_ZPR_POLICY", "CREATE_ZPR_CONFIGURATION", "UPDATE_ZPR_CONFIGURATION", "DELETE_ZPR_CONFIGURATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The operation_type of this WorkRequest. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this WorkRequest. + The asynchronous operation tracked by this work request. + + + :param operation_type: The operation_type of this WorkRequest. + :type: str + """ + allowed_values = ["CREATE_ZPR_POLICY", "UPDATE_ZPR_POLICY", "DELETE_ZPR_POLICY", "CREATE_ZPR_CONFIGURATION", "UPDATE_ZPR_CONFIGURATION", "DELETE_ZPR_CONFIGURATION"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + operation_type = 'UNKNOWN_ENUM_VALUE' + self._operation_type = operation_type + + @property + def status(self): + """ + **[Required]** Gets the status of this WorkRequest. + The status of the work request. + + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "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. + The status of the work request. + + + :param status: The status of this WorkRequest. + :type: str + """ + allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "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 `OCID`__ of the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this WorkRequest. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this WorkRequest. + The `OCID`__ of the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this WorkRequest. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this WorkRequest. + The `OCID`__ of the compartment that contains the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this WorkRequest. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this WorkRequest. + The `OCID`__ of the compartment that contains the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this WorkRequest. + :type: str + """ + self._compartment_id = compartment_id + + @property + def resources(self): + """ + **[Required]** Gets the resources of this WorkRequest. + The resources that are affected by the work request. + + + :return: The resources of this WorkRequest. + :rtype: list[oci.zpr.models.WorkRequestResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this WorkRequest. + The resources that are affected by the work request. + + + :param resources: The resources of this WorkRequest. + :type: list[oci.zpr.models.WorkRequestResource] + """ + self._resources = resources + + @property + def percent_complete(self): + """ + **[Required]** Gets the percent_complete of this WorkRequest. + Shows the progress of the operation tracked by the work request, as a percentage of the total work + that must be performed. + + + :return: The percent_complete of this WorkRequest. + :rtype: float + """ + return self._percent_complete + + @percent_complete.setter + def percent_complete(self, percent_complete): + """ + Sets the percent_complete of this WorkRequest. + Shows the progress of the operation tracked by the work request, as a percentage of the total work + that must be performed. + + + :param percent_complete: The percent_complete of this WorkRequest. + :type: float + """ + self._percent_complete = percent_complete + + @property + def time_accepted(self): + """ + **[Required]** Gets the time_accepted of this WorkRequest. + The date and time the work request was created, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_accepted of this WorkRequest. + :rtype: datetime + """ + return self._time_accepted + + @time_accepted.setter + def time_accepted(self, time_accepted): + """ + Sets the time_accepted of this WorkRequest. + The date and time the work request was created, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_accepted: The time_accepted of this WorkRequest. + :type: datetime + """ + self._time_accepted = time_accepted + + @property + def time_started(self): + """ + Gets the time_started of this WorkRequest. + The date and time the work request was started, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_started of this WorkRequest. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this WorkRequest. + The date and time the work request was started, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_started: The time_started of this WorkRequest. + :type: datetime + """ + self._time_started = time_started + + @property + def time_finished(self): + """ + Gets the time_finished of this WorkRequest. + The date and time the work request was finished, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_finished of this WorkRequest. + :rtype: datetime + """ + return self._time_finished + + @time_finished.setter + def time_finished(self, time_finished): + """ + Sets the time_finished of this WorkRequest. + The date and time the work request was finished, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_finished: The time_finished of this WorkRequest. + :type: datetime + """ + self._time_finished = time_finished + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this WorkRequest. + The date and time the work request was updated, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_updated of this WorkRequest. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this WorkRequest. + The date and time the work request was updated, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_updated: The time_updated of this WorkRequest. + :type: datetime + """ + self._time_updated = time_updated + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/zpr/models/work_request_error.py b/src/oci/zpr/models/work_request_error.py new file mode 100644 index 000000000..4e74342c4 --- /dev/null +++ b/src/oci/zpr/models/work_request_error.py @@ -0,0 +1,146 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestError(object): + """ + An error encountered while performing an operation that is tracked by a work request. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestError object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param code: + The value to assign to the code property of this WorkRequestError. + :type code: str + + :param message: + The value to assign to the message property of this WorkRequestError. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this WorkRequestError. + :type timestamp: datetime + + """ + self.swagger_types = { + 'code': 'str', + 'message': 'str', + 'timestamp': 'datetime' + } + + self.attribute_map = { + 'code': 'code', + 'message': 'message', + 'timestamp': 'timestamp' + } + + self._code = None + self._message = None + self._timestamp = None + + @property + def code(self): + """ + **[Required]** Gets the code of this WorkRequestError. + A machine-usable code for the error that occurred. For a list of error codes, see + `API Errors`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/References/apierrors.htm + + + :return: The code of this WorkRequestError. + :rtype: str + """ + return self._code + + @code.setter + def code(self, code): + """ + Sets the code of this WorkRequestError. + A machine-usable code for the error that occurred. For a list of error codes, see + `API Errors`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/References/apierrors.htm + + + :param code: The code of this WorkRequestError. + :type: str + """ + self._code = code + + @property + def message(self): + """ + **[Required]** Gets the message of this WorkRequestError. + A human-readable error message. + + + :return: The message of this WorkRequestError. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this WorkRequestError. + A human-readable error message. + + + :param message: The message of this WorkRequestError. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + **[Required]** Gets the timestamp of this WorkRequestError. + The date and time the error occurred, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The timestamp of this WorkRequestError. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this WorkRequestError. + The date and time the error occurred, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param timestamp: The timestamp of this WorkRequestError. + :type: datetime + """ + self._timestamp = timestamp + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/zpr/models/work_request_error_collection.py b/src/oci/zpr/models/work_request_error_collection.py new file mode 100644 index 000000000..7d169b4d1 --- /dev/null +++ b/src/oci/zpr/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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestErrorCollection(object): + """ + A list of work request errors. Can contain both errors and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestErrorCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestErrorCollection. + :type items: list[oci.zpr.models.WorkRequestError] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestError]' + } + + self.attribute_map = { + 'items': 'items' + } + + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestErrorCollection. + A list of work request errors. + + + :return: The items of this WorkRequestErrorCollection. + :rtype: list[oci.zpr.models.WorkRequestError] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestErrorCollection. + A list of work request errors. + + + :param items: The items of this WorkRequestErrorCollection. + :type: list[oci.zpr.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/zpr/models/work_request_log_entry.py b/src/oci/zpr/models/work_request_log_entry.py new file mode 100644 index 000000000..0d5e6040d --- /dev/null +++ b/src/oci/zpr/models/work_request_log_entry.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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestLogEntry(object): + """ + A log message from performing an operation that is tracked by a work request. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestLogEntry object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param message: + The value to assign to the message property of this WorkRequestLogEntry. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this WorkRequestLogEntry. + :type timestamp: datetime + + """ + self.swagger_types = { + 'message': 'str', + 'timestamp': 'datetime' + } + + self.attribute_map = { + 'message': 'message', + 'timestamp': 'timestamp' + } + + self._message = None + self._timestamp = None + + @property + def message(self): + """ + **[Required]** Gets the message of this WorkRequestLogEntry. + A human-readable log message. + + + :return: The message of this WorkRequestLogEntry. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this WorkRequestLogEntry. + A human-readable log message. + + + :param message: The message of this WorkRequestLogEntry. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + **[Required]** Gets the timestamp of this WorkRequestLogEntry. + The date and time the log message was written, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The timestamp of this WorkRequestLogEntry. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this WorkRequestLogEntry. + The date and time the log message was written, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param timestamp: The timestamp of this WorkRequestLogEntry. + :type: datetime + """ + self._timestamp = timestamp + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/zpr/models/work_request_log_entry_collection.py b/src/oci/zpr/models/work_request_log_entry_collection.py new file mode 100644 index 000000000..d427c742e --- /dev/null +++ b/src/oci/zpr/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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestLogEntryCollection(object): + """ + A list of work request logs. Can contain both logs and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestLogEntryCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestLogEntryCollection. + :type items: list[oci.zpr.models.WorkRequestLogEntry] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestLogEntry]' + } + + self.attribute_map = { + 'items': 'items' + } + + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestLogEntryCollection. + A list of work request log entries. + + + :return: The items of this WorkRequestLogEntryCollection. + :rtype: list[oci.zpr.models.WorkRequestLogEntry] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestLogEntryCollection. + A list of work request log entries. + + + :param items: The items of this WorkRequestLogEntryCollection. + :type: list[oci.zpr.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/zpr/models/work_request_resource.py b/src/oci/zpr/models/work_request_resource.py new file mode 100644 index 000000000..7b54538a2 --- /dev/null +++ b/src/oci/zpr/models/work_request_resource.py @@ -0,0 +1,238 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestResource(object): + """ + A resource created or operated on by a work request. + """ + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "CREATED" + ACTION_TYPE_CREATED = "CREATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "UPDATED" + ACTION_TYPE_UPDATED = "UPDATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "DELETED" + ACTION_TYPE_DELETED = "DELETED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "IN_PROGRESS" + ACTION_TYPE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "RELATED" + ACTION_TYPE_RELATED = "RELATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "FAILED" + ACTION_TYPE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestResource object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param entity_type: + The value to assign to the entity_type property of this WorkRequestResource. + :type entity_type: str + + :param action_type: + The value to assign to the action_type property of this WorkRequestResource. + Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "RELATED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type action_type: str + + :param identifier: + The value to assign to the identifier property of this WorkRequestResource. + :type identifier: str + + :param entity_uri: + The value to assign to the entity_uri property of this WorkRequestResource. + :type entity_uri: str + + :param metadata: + The value to assign to the metadata property of this WorkRequestResource. + :type metadata: dict(str, str) + + """ + self.swagger_types = { + 'entity_type': 'str', + 'action_type': 'str', + 'identifier': 'str', + 'entity_uri': 'str', + 'metadata': 'dict(str, str)' + } + + self.attribute_map = { + 'entity_type': 'entityType', + 'action_type': 'actionType', + 'identifier': 'identifier', + 'entity_uri': 'entityUri', + 'metadata': 'metadata' + } + + self._entity_type = None + self._action_type = None + self._identifier = None + self._entity_uri = None + self._metadata = None + + @property + def entity_type(self): + """ + **[Required]** Gets the entity_type of this WorkRequestResource. + The resource type that the work request affects. + + + :return: The entity_type of this WorkRequestResource. + :rtype: str + """ + return self._entity_type + + @entity_type.setter + def entity_type(self, entity_type): + """ + Sets the entity_type of this WorkRequestResource. + The resource type that the work request affects. + + + :param entity_type: The entity_type of this WorkRequestResource. + :type: str + """ + self._entity_type = entity_type + + @property + def action_type(self): + """ + **[Required]** Gets the action_type of this WorkRequestResource. + The way in which this resource is affected by the operation tracked in the work request. + A resource being created, updated, or deleted remains in the IN_PROGRESS state until + work is complete for that resource, at which point it transitions to CREATED, UPDATED, + or DELETED, respectively. + + Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "RELATED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The action_type of this WorkRequestResource. + :rtype: str + """ + return self._action_type + + @action_type.setter + def action_type(self, action_type): + """ + Sets the action_type of this WorkRequestResource. + The way in which this resource is affected by the operation tracked in the work request. + A resource being created, updated, or deleted remains in the IN_PROGRESS state until + work is complete for that resource, at which point it transitions to CREATED, UPDATED, + or DELETED, respectively. + + + :param action_type: The action_type of this WorkRequestResource. + :type: str + """ + allowed_values = ["CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "RELATED", "FAILED"] + if not value_allowed_none_or_none_sentinel(action_type, allowed_values): + action_type = 'UNKNOWN_ENUM_VALUE' + self._action_type = action_type + + @property + def identifier(self): + """ + **[Required]** Gets the identifier of this WorkRequestResource. + An `OCID`__ or other unique identifier for the resource. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The identifier of this WorkRequestResource. + :rtype: str + """ + return self._identifier + + @identifier.setter + def identifier(self, identifier): + """ + Sets the identifier of this WorkRequestResource. + An `OCID`__ or other unique identifier for the resource. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param identifier: The identifier of this WorkRequestResource. + :type: str + """ + self._identifier = identifier + + @property + def entity_uri(self): + """ + Gets the entity_uri of this WorkRequestResource. + The URI path that you can use for a GET request to access the resource metadata. + + + :return: The entity_uri of this WorkRequestResource. + :rtype: str + """ + return self._entity_uri + + @entity_uri.setter + def entity_uri(self, entity_uri): + """ + Sets the entity_uri of this WorkRequestResource. + The URI path that you can use for a GET request to access the resource metadata. + + + :param entity_uri: The entity_uri of this WorkRequestResource. + :type: str + """ + self._entity_uri = entity_uri + + @property + def metadata(self): + """ + Gets the metadata of this WorkRequestResource. + Additional information that helps to explain the resource. + + + :return: The metadata of this WorkRequestResource. + :rtype: dict(str, str) + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this WorkRequestResource. + Additional information that helps to explain the resource. + + + :param metadata: The metadata of this WorkRequestResource. + :type: dict(str, str) + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/zpr/models/work_request_summary.py b/src/oci/zpr/models/work_request_summary.py new file mode 100644 index 000000000..144eae247 --- /dev/null +++ b/src/oci/zpr/models/work_request_summary.py @@ -0,0 +1,457 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestSummary(object): + """ + Summary information about an asynchronous work request. + """ + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_ZPR_POLICY" + OPERATION_TYPE_CREATE_ZPR_POLICY = "CREATE_ZPR_POLICY" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "UPDATE_ZPR_POLICY" + OPERATION_TYPE_UPDATE_ZPR_POLICY = "UPDATE_ZPR_POLICY" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_ZPR_POLICY" + OPERATION_TYPE_DELETE_ZPR_POLICY = "DELETE_ZPR_POLICY" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_ZPR_CONFIGURATION" + OPERATION_TYPE_CREATE_ZPR_CONFIGURATION = "CREATE_ZPR_CONFIGURATION" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "UPDATE_ZPR_CONFIGURATION" + OPERATION_TYPE_UPDATE_ZPR_CONFIGURATION = "UPDATE_ZPR_CONFIGURATION" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_ZPR_CONFIGURATION" + OPERATION_TYPE_DELETE_ZPR_CONFIGURATION = "DELETE_ZPR_CONFIGURATION" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "IN_PROGRESS" + STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "WAITING" + STATUS_WAITING = "WAITING" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "SUCCEEDED" + STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "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_ZPR_POLICY", "UPDATE_ZPR_POLICY", "DELETE_ZPR_POLICY", "CREATE_ZPR_CONFIGURATION", "UPDATE_ZPR_CONFIGURATION", "DELETE_ZPR_CONFIGURATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type operation_type: str + + :param status: + The value to assign to the status property of this WorkRequestSummary. + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "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.zpr.models.WorkRequestResource] + + :param percent_complete: + The value to assign to the percent_complete property of this WorkRequestSummary. + :type percent_complete: float + + :param time_accepted: + The value to assign to the time_accepted property of this WorkRequestSummary. + :type time_accepted: datetime + + :param time_started: + The value to assign to the time_started property of this WorkRequestSummary. + :type time_started: datetime + + :param time_finished: + The value to assign to the time_finished property of this WorkRequestSummary. + :type time_finished: datetime + + :param time_updated: + The value to assign to the time_updated property of this WorkRequestSummary. + :type time_updated: datetime + + """ + self.swagger_types = { + 'operation_type': 'str', + 'status': 'str', + 'id': 'str', + 'compartment_id': 'str', + 'resources': 'list[WorkRequestResource]', + 'percent_complete': 'float', + 'time_accepted': 'datetime', + 'time_started': 'datetime', + 'time_finished': 'datetime', + 'time_updated': 'datetime' + } + + self.attribute_map = { + 'operation_type': 'operationType', + 'status': 'status', + 'id': 'id', + 'compartment_id': 'compartmentId', + 'resources': 'resources', + 'percent_complete': 'percentComplete', + 'time_accepted': 'timeAccepted', + 'time_started': 'timeStarted', + 'time_finished': 'timeFinished', + 'time_updated': 'timeUpdated' + } + + self._operation_type = None + self._status = None + self._id = None + self._compartment_id = None + self._resources = None + self._percent_complete = None + self._time_accepted = None + self._time_started = None + self._time_finished = None + self._time_updated = None + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this WorkRequestSummary. + The asynchronous operation tracked by this work request. + + Allowed values for this property are: "CREATE_ZPR_POLICY", "UPDATE_ZPR_POLICY", "DELETE_ZPR_POLICY", "CREATE_ZPR_CONFIGURATION", "UPDATE_ZPR_CONFIGURATION", "DELETE_ZPR_CONFIGURATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The operation_type of this WorkRequestSummary. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this WorkRequestSummary. + The asynchronous operation tracked by this work request. + + + :param operation_type: The operation_type of this WorkRequestSummary. + :type: str + """ + allowed_values = ["CREATE_ZPR_POLICY", "UPDATE_ZPR_POLICY", "DELETE_ZPR_POLICY", "CREATE_ZPR_CONFIGURATION", "UPDATE_ZPR_CONFIGURATION", "DELETE_ZPR_CONFIGURATION"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + operation_type = 'UNKNOWN_ENUM_VALUE' + self._operation_type = operation_type + + @property + def status(self): + """ + **[Required]** Gets the status of this WorkRequestSummary. + The status of the work request. + + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "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. + The status of the work request. + + + :param status: The status of this WorkRequestSummary. + :type: str + """ + allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "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 `OCID`__ of the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this WorkRequestSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this WorkRequestSummary. + The `OCID`__ of the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this WorkRequestSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this WorkRequestSummary. + The `OCID`__ of the compartment that contains the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this WorkRequestSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this WorkRequestSummary. + The `OCID`__ of the compartment that contains the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this WorkRequestSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def resources(self): + """ + **[Required]** Gets the resources of this WorkRequestSummary. + The resources that are affected by this work request. + + + :return: The resources of this WorkRequestSummary. + :rtype: list[oci.zpr.models.WorkRequestResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this WorkRequestSummary. + The resources that are affected by this work request. + + + :param resources: The resources of this WorkRequestSummary. + :type: list[oci.zpr.models.WorkRequestResource] + """ + self._resources = resources + + @property + def percent_complete(self): + """ + **[Required]** Gets the percent_complete of this WorkRequestSummary. + Shows the progress of the operation tracked by the work request, as a percentage of the total work + that must be performed. + + + :return: The percent_complete of this WorkRequestSummary. + :rtype: float + """ + return self._percent_complete + + @percent_complete.setter + def percent_complete(self, percent_complete): + """ + Sets the percent_complete of this WorkRequestSummary. + Shows the progress of the operation tracked by the work request, as a percentage of the total work + that must be performed. + + + :param percent_complete: The percent_complete of this WorkRequestSummary. + :type: float + """ + self._percent_complete = percent_complete + + @property + def time_accepted(self): + """ + **[Required]** Gets the time_accepted of this WorkRequestSummary. + The date and time the work request was created, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_accepted of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_accepted + + @time_accepted.setter + def time_accepted(self, time_accepted): + """ + Sets the time_accepted of this WorkRequestSummary. + The date and time the work request was created, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_accepted: The time_accepted of this WorkRequestSummary. + :type: datetime + """ + self._time_accepted = time_accepted + + @property + def time_started(self): + """ + Gets the time_started of this WorkRequestSummary. + The date and time the work request was started, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_started of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this WorkRequestSummary. + The date and time the work request was started, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_started: The time_started of this WorkRequestSummary. + :type: datetime + """ + self._time_started = time_started + + @property + def time_finished(self): + """ + Gets the time_finished of this WorkRequestSummary. + The date and time the work request was finished, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_finished of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_finished + + @time_finished.setter + def time_finished(self, time_finished): + """ + Sets the time_finished of this WorkRequestSummary. + The date and time the work request was finished, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_finished: The time_finished of this WorkRequestSummary. + :type: datetime + """ + self._time_finished = time_finished + + @property + def time_updated(self): + """ + Gets the time_updated of this WorkRequestSummary. + The date and time the work request was updated, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_updated of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this WorkRequestSummary. + The date and time the work request was updated, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_updated: The time_updated of this WorkRequestSummary. + :type: datetime + """ + self._time_updated = time_updated + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/zpr/models/work_request_summary_collection.py b/src/oci/zpr/models/work_request_summary_collection.py new file mode 100644 index 000000000..8d8dc267e --- /dev/null +++ b/src/oci/zpr/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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestSummaryCollection(object): + """ + A list of work requests. Can contain both work requests and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestSummaryCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestSummaryCollection. + :type items: list[oci.zpr.models.WorkRequestSummary] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestSummary]' + } + + self.attribute_map = { + 'items': 'items' + } + + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestSummaryCollection. + A list of work requests. + + + :return: The items of this WorkRequestSummaryCollection. + :rtype: list[oci.zpr.models.WorkRequestSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestSummaryCollection. + A list of work requests. + + + :param items: The items of this WorkRequestSummaryCollection. + :type: list[oci.zpr.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/zpr/models/zpr_policy.py b/src/oci/zpr/models/zpr_policy.py new file mode 100644 index 000000000..e04f0c5e2 --- /dev/null +++ b/src/oci/zpr/models/zpr_policy.py @@ -0,0 +1,505 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ZprPolicy(object): + """ + A ZprPolicy is a rule that governs the communication between specific endpoints identified by their security attributes. + + To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to + an administrator. If you're an administrator who needs to write policies to give users access, see + `Getting Started with Policies`__. + + __ https://docs.cloud.oracle.com/iaas/Content/Identity/policiesgs/get-started-with-policies.htm + """ + + #: A constant which can be used with the lifecycle_state property of a ZprPolicy. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a ZprPolicy. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a ZprPolicy. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a ZprPolicy. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a ZprPolicy. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a ZprPolicy. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a ZprPolicy. + #: This constant has a value of "NEEDS_ATTENTION" + LIFECYCLE_STATE_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + def __init__(self, **kwargs): + """ + Initializes a new ZprPolicy 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 ZprPolicy. + :type id: str + + :param name: + The value to assign to the name property of this ZprPolicy. + :type name: str + + :param description: + The value to assign to the description property of this ZprPolicy. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this ZprPolicy. + :type compartment_id: str + + :param statements: + The value to assign to the statements property of this ZprPolicy. + :type statements: list[str] + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this ZprPolicy. + Allowed values for this property are: "ACTIVE", "CREATING", "FAILED", "UPDATING", "DELETING", "DELETED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this ZprPolicy. + :type time_created: datetime + + :param freeform_tags: + The value to assign to the freeform_tags property of this ZprPolicy. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this ZprPolicy. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this ZprPolicy. + :type system_tags: dict(str, dict(str, object)) + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this ZprPolicy. + :type lifecycle_details: str + + :param time_updated: + The value to assign to the time_updated property of this ZprPolicy. + :type time_updated: datetime + + """ + self.swagger_types = { + 'id': 'str', + 'name': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'statements': 'list[str]', + 'lifecycle_state': 'str', + 'time_created': 'datetime', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'lifecycle_details': 'str', + 'time_updated': 'datetime' + } + + self.attribute_map = { + 'id': 'id', + 'name': 'name', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'statements': 'statements', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'lifecycle_details': 'lifecycleDetails', + 'time_updated': 'timeUpdated' + } + + self._id = None + self._name = None + self._description = None + self._compartment_id = None + self._statements = None + self._lifecycle_state = None + self._time_created = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._lifecycle_details = None + self._time_updated = None + + @property + def id(self): + """ + **[Required]** Gets the id of this ZprPolicy. + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this ZprPolicy. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this ZprPolicy. + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this ZprPolicy. + :type: str + """ + self._id = id + + @property + def name(self): + """ + **[Required]** Gets the name of this ZprPolicy. + The name you assign to the ZprPolicy during creation. The name must be unique across all ZPL policies in the tenancy. + + + :return: The name of this ZprPolicy. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this ZprPolicy. + The name you assign to the ZprPolicy during creation. The name must be unique across all ZPL policies in the tenancy. + + + :param name: The name of this ZprPolicy. + :type: str + """ + self._name = name + + @property + def description(self): + """ + **[Required]** Gets the description of this ZprPolicy. + The description you assign to the ZprPolicy during creation. Does not have to be unique, and it's changeable. + + + :return: The description of this ZprPolicy. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this ZprPolicy. + The description you assign to the ZprPolicy during creation. Does not have to be unique, and it's changeable. + + + :param description: The description of this ZprPolicy. + :type: str + """ + self._description = description + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ZprPolicy. + The `OCID`__ of the compartment. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ZprPolicy. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ZprPolicy. + The `OCID`__ of the compartment. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ZprPolicy. + :type: str + """ + self._compartment_id = compartment_id + + @property + def statements(self): + """ + **[Required]** Gets the statements of this ZprPolicy. + An array of ZprPolicy statements (up to 25 statements per ZprPolicy) written in the Zero Trust Packet Routing Policy Language. + + + :return: The statements of this ZprPolicy. + :rtype: list[str] + """ + return self._statements + + @statements.setter + def statements(self, statements): + """ + Sets the statements of this ZprPolicy. + An array of ZprPolicy statements (up to 25 statements per ZprPolicy) written in the Zero Trust Packet Routing Policy Language. + + + :param statements: The statements of this ZprPolicy. + :type: list[str] + """ + self._statements = statements + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this ZprPolicy. + The current state of the ZprPolicy. + + Allowed values for this property are: "ACTIVE", "CREATING", "FAILED", "UPDATING", "DELETING", "DELETED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this ZprPolicy. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this ZprPolicy. + The current state of the ZprPolicy. + + + :param lifecycle_state: The lifecycle_state of this ZprPolicy. + :type: str + """ + allowed_values = ["ACTIVE", "CREATING", "FAILED", "UPDATING", "DELETING", "DELETED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this ZprPolicy. + The date and time the ZprPolicy was created, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_created of this ZprPolicy. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this ZprPolicy. + The date and time the ZprPolicy was created, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_created: The time_created of this ZprPolicy. + :type: datetime + """ + self._time_created = time_created + + @property + def freeform_tags(self): + """ + **[Required]** Gets the freeform_tags of this ZprPolicy. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this ZprPolicy. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this ZprPolicy. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this ZprPolicy. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + **[Required]** Gets the defined_tags of this ZprPolicy. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this ZprPolicy. + :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 ZprPolicy. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this ZprPolicy. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this ZprPolicy. + 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 ZprPolicy. + :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 ZprPolicy. + 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 ZprPolicy. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this ZprPolicy. + A message that describes the current state of the ZprPolicy in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :return: The lifecycle_details of this ZprPolicy. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this ZprPolicy. + A message that describes the current state of the ZprPolicy in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :param lifecycle_details: The lifecycle_details of this ZprPolicy. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def time_updated(self): + """ + Gets the time_updated of this ZprPolicy. + The date and time the ZprPolicy was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_updated of this ZprPolicy. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this ZprPolicy. + The date and time the ZprPolicy was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_updated: The time_updated of this ZprPolicy. + :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/zpr/models/zpr_policy_collection.py b/src/oci/zpr/models/zpr_policy_collection.py new file mode 100644 index 000000000..b5e7fe0c6 --- /dev/null +++ b/src/oci/zpr/models/zpr_policy_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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ZprPolicyCollection(object): + """ + Results of a zprPolicy search. Contains both ZprPolicySummary items and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ZprPolicyCollection 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 ZprPolicyCollection. + :type items: list[oci.zpr.models.ZprPolicySummary] + + """ + self.swagger_types = { + 'items': 'list[ZprPolicySummary]' + } + + self.attribute_map = { + 'items': 'items' + } + + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this ZprPolicyCollection. + List of zprPolicies. + + + :return: The items of this ZprPolicyCollection. + :rtype: list[oci.zpr.models.ZprPolicySummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this ZprPolicyCollection. + List of zprPolicies. + + + :param items: The items of this ZprPolicyCollection. + :type: list[oci.zpr.models.ZprPolicySummary] + """ + 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/zpr/models/zpr_policy_summary.py b/src/oci/zpr/models/zpr_policy_summary.py new file mode 100644 index 000000000..1d52f6fcc --- /dev/null +++ b/src/oci/zpr/models/zpr_policy_summary.py @@ -0,0 +1,463 @@ +# 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: 20240301 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ZprPolicySummary(object): + """ + Summary information about a ZprPolicy. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ZprPolicySummary 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 ZprPolicySummary. + :type id: str + + :param name: + The value to assign to the name property of this ZprPolicySummary. + :type name: str + + :param description: + The value to assign to the description property of this ZprPolicySummary. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this ZprPolicySummary. + :type compartment_id: str + + :param statements: + The value to assign to the statements property of this ZprPolicySummary. + :type statements: list[str] + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this ZprPolicySummary. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this ZprPolicySummary. + :type time_created: datetime + + :param freeform_tags: + The value to assign to the freeform_tags property of this ZprPolicySummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this ZprPolicySummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this ZprPolicySummary. + :type system_tags: dict(str, dict(str, object)) + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this ZprPolicySummary. + :type lifecycle_details: str + + :param time_updated: + The value to assign to the time_updated property of this ZprPolicySummary. + :type time_updated: datetime + + """ + self.swagger_types = { + 'id': 'str', + 'name': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'statements': 'list[str]', + 'lifecycle_state': 'str', + 'time_created': 'datetime', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'lifecycle_details': 'str', + 'time_updated': 'datetime' + } + + self.attribute_map = { + 'id': 'id', + 'name': 'name', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'statements': 'statements', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'lifecycle_details': 'lifecycleDetails', + 'time_updated': 'timeUpdated' + } + + self._id = None + self._name = None + self._description = None + self._compartment_id = None + self._statements = None + self._lifecycle_state = None + self._time_created = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._lifecycle_details = None + self._time_updated = None + + @property + def id(self): + """ + **[Required]** Gets the id of this ZprPolicySummary. + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this ZprPolicySummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this ZprPolicySummary. + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this ZprPolicySummary. + :type: str + """ + self._id = id + + @property + def name(self): + """ + **[Required]** Gets the name of this ZprPolicySummary. + The name you assign to the ZprPolicy during creation. The name must be unique across all ZPL policies in the tenancy. + + + :return: The name of this ZprPolicySummary. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this ZprPolicySummary. + The name you assign to the ZprPolicy during creation. The name must be unique across all ZPL policies in the tenancy. + + + :param name: The name of this ZprPolicySummary. + :type: str + """ + self._name = name + + @property + def description(self): + """ + **[Required]** Gets the description of this ZprPolicySummary. + The description you assign to the ZprPolicy during creation. Does not have to be unique, and it's changeable. + + + :return: The description of this ZprPolicySummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this ZprPolicySummary. + The description you assign to the ZprPolicy during creation. Does not have to be unique, and it's changeable. + + + :param description: The description of this ZprPolicySummary. + :type: str + """ + self._description = description + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ZprPolicySummary. + The `OCID`__ of the compartment. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ZprPolicySummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ZprPolicySummary. + The `OCID`__ of the compartment. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ZprPolicySummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def statements(self): + """ + **[Required]** Gets the statements of this ZprPolicySummary. + An array of ZprPolicy statements(up to 25 statements per ZprPolicy) written in the Zero Trust Packet Routing Policy Language. + + + :return: The statements of this ZprPolicySummary. + :rtype: list[str] + """ + return self._statements + + @statements.setter + def statements(self, statements): + """ + Sets the statements of this ZprPolicySummary. + An array of ZprPolicy statements(up to 25 statements per ZprPolicy) written in the Zero Trust Packet Routing Policy Language. + + + :param statements: The statements of this ZprPolicySummary. + :type: list[str] + """ + self._statements = statements + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this ZprPolicySummary. + The current state of the ZprPolicy. + + + :return: The lifecycle_state of this ZprPolicySummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this ZprPolicySummary. + The current state of the ZprPolicy. + + + :param lifecycle_state: The lifecycle_state of this ZprPolicySummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this ZprPolicySummary. + The date and time the ZprPolicy was created, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_created of this ZprPolicySummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this ZprPolicySummary. + The date and time the ZprPolicy was created, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_created: The time_created of this ZprPolicySummary. + :type: datetime + """ + self._time_created = time_created + + @property + def freeform_tags(self): + """ + **[Required]** Gets the freeform_tags of this ZprPolicySummary. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this ZprPolicySummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this ZprPolicySummary. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this ZprPolicySummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + **[Required]** Gets the defined_tags of this ZprPolicySummary. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this ZprPolicySummary. + :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 ZprPolicySummary. + 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/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this ZprPolicySummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this ZprPolicySummary. + 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 ZprPolicySummary. + :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 ZprPolicySummary. + 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 ZprPolicySummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this ZprPolicySummary. + A message that describes the current state of the ZprPolicy in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :return: The lifecycle_details of this ZprPolicySummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this ZprPolicySummary. + A message that describes the current state of the ZprPolicy in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :param lifecycle_details: The lifecycle_details of this ZprPolicySummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def time_updated(self): + """ + Gets the time_updated of this ZprPolicySummary. + The date and time the ZprPolicy was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_updated of this ZprPolicySummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this ZprPolicySummary. + The date and time the ZprPolicy was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_updated: The time_updated of this ZprPolicySummary. + :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/zpr/zpr_client.py b/src/oci/zpr/zpr_client.py new file mode 100644 index 000000000..2104d4f2c --- /dev/null +++ b/src/oci/zpr/zpr_client.py @@ -0,0 +1,2124 @@ +# 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: 20240301 + +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 zpr_type_mapping +missing = Sentinel("Missing") + + +class ZprClient(object): + """ + Use the Zero Trust Packet Routing Control Plane API to manage ZPR configuration and policy. See the [Zero Trust Packet Routing](/iaas/Content/zero-trust-packet-routing/home.htm) documentation for more information. + """ + + 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("zpr"): + 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': '/20240301', + 'service_endpoint_template': 'https://{service}.{region}.oci.{secondLevelDomain}', + 'endpoint_service_name': '${endpoint-template-prefix}', + '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("zpr", config, signer, zpr_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def create_configuration(self, create_configuration_details, **kwargs): + """ + Initiates the process to onboard ZPR + in a root compartment (the root compartment is the tenancy). It creates an object of ZPR configuration as part of onboarding. + + + :param oci.zpr.models.CreateConfigurationDetails create_configuration_details: (required) + Details for ZPR configuration in the tenancy. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param bool opc_dry_run: (optional) + Indicates that the request is a dry run, if set to \"true\". A dry run request does not modify the + configuration item details and is used only to perform validation on the submitted data. + + :param obj 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 create_configuration API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/configuration" + method = "POST" + operation_name = "create_configuration" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "opc_request_id", + "opc_retry_token", + "opc_dry_run" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_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), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-dry-run": kwargs.get("opc_dry_run", 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_configuration_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, + header_params=header_params, + body=create_configuration_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_zpr_policy(self, create_zpr_policy_details, **kwargs): + """ + Creates a ZprPolicy. + + + :param oci.zpr.models.CreateZprPolicyDetails create_zpr_policy_details: (required) + Details for the new ZprPolicy. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param bool opc_dry_run: (optional) + Indicates that the request is a dry run, if set to \"true\". A dry run request does not modify the + configuration item details and is used only to perform validation on the submitted data. + + :param obj 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.zpr.models.ZprPolicy` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_zpr_policy API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/zprPolicies" + method = "POST" + operation_name = "create_zpr_policy" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "opc_dry_run" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_zpr_policy 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), + "opc-dry-run": kwargs.get("opc_dry_run", 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_zpr_policy_details, + response_type="ZprPolicy", + 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_zpr_policy_details, + response_type="ZprPolicy", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_zpr_policy(self, zpr_policy_id, **kwargs): + """ + Deletes a ZprPolicy. + + + :param str zpr_policy_id: (required) + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param bool opc_dry_run: (optional) + Indicates that the request is a dry run, if set to \"true\". A dry run request does not modify the + configuration item details and is used only to perform validation on the submitted data. + + :param obj 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_zpr_policy API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['zprPolicyId'] + resource_path = "/zprPolicies/{zprPolicyId}" + method = "DELETE" + operation_name = "delete_zpr_policy" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_dry_run" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_zpr_policy got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "zprPolicyId": zpr_policy_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-dry-run": kwargs.get("opc_dry_run", 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 get_configuration(self, **kwargs): + """ + Retrieves the ZPR configuration details for the root compartment (the root compartment is the tenancy). + Returns ZPR configuration for root compartment (the root compartment is the tenancy). + + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.Configuration` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_configuration API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/configuration" + method = "GET" + operation_name = "get_configuration" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "compartment_id", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_configuration got unknown kwargs: {extra_kwargs!r}") + + query_params = { + "compartmentId": kwargs.get("compartment_id", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "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="Configuration", + 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="Configuration", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_zpr_configuration_work_request(self, work_request_id, **kwargs): + """ + Gets the details of a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.WorkRequest` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_zpr_configuration_work_request API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/zprConfigurationWorkRequests/{workRequestId}" + method = "GET" + operation_name = "get_zpr_configuration_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_zpr_configuration_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 get_zpr_policy(self, zpr_policy_id, **kwargs): + """ + Gets information about a ZprPolicy. + + + :param str zpr_policy_id: (required) + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.ZprPolicy` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_zpr_policy API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['zprPolicyId'] + resource_path = "/zprPolicies/{zprPolicyId}" + method = "GET" + operation_name = "get_zpr_policy" + 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_zpr_policy got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "zprPolicyId": zpr_policy_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="ZprPolicy", + 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="ZprPolicy", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_zpr_policy_work_request(self, work_request_id, **kwargs): + """ + Gets the details of a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.WorkRequest` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_zpr_policy_work_request API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/zprPolicyWorkRequests/{workRequestId}" + method = "GET" + operation_name = "get_zpr_policy_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_zpr_policy_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_zpr_configuration_work_request_errors(self, work_request_id, **kwargs): + """ + Lists the errors for a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for `timestamp` is descending. + + Allowed values are: "timestamp" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.WorkRequestErrorCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_zpr_configuration_work_request_errors API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/zprConfigurationWorkRequests/{workRequestId}/errors" + method = "GET" + operation_name = "list_zpr_configuration_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_zpr_configuration_work_request_errors got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timestamp"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestErrorCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + 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_zpr_configuration_work_request_logs(self, work_request_id, **kwargs): + """ + Lists the logs for a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for `timestamp` is descending. + + Allowed values are: "timestamp" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.WorkRequestLogEntryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_zpr_configuration_work_request_logs API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/zprConfigurationWorkRequests/{workRequestId}/logs" + method = "GET" + operation_name = "list_zpr_configuration_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_zpr_configuration_work_request_logs got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timestamp"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestLogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + 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_zpr_configuration_work_requests(self, **kwargs): + """ + Lists the work requests in a compartment. + + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str work_request_id: (optional) + The `OCID`__ of the asynchronous work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str status: (optional) + A filter to return only the resources that match the given lifecycle state. + + Allowed values are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED" + + :param str resource_id: (optional) + The `OCID`__ of the resource affected by the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for `timeAccepted` is descending. + + Allowed values are: "timeAccepted" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.WorkRequestSummaryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_zpr_configuration_work_requests API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/zprConfigurationWorkRequests" + method = "GET" + operation_name = "list_zpr_configuration_work_requests" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "compartment_id", + "work_request_id", + "status", + "resource_id", + "opc_request_id", + "page", + "limit", + "sort_order", + "sort_by" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_zpr_configuration_work_requests got unknown kwargs: {extra_kwargs!r}") + + if 'status' in kwargs: + status_allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "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": kwargs.get("compartment_id", missing), + "workRequestId": kwargs.get("work_request_id", missing), + "status": kwargs.get("status", missing), + "resourceId": kwargs.get("resource_id", missing), + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestSummaryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + 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 list_zpr_policies(self, **kwargs): + """ + Gets a list of ZprPolicies. + + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str lifecycle_state: (optional) + A filter to return only resources that match the given lifecycle state. The + state value is case-insensitive. + + Allowed values are: "ACTIVE", "CREATING", "FAILED", "UPDATING", "DELETING", "DELETED", "NEEDS_ATTENTION" + + :param str name: (optional) + A filter to return only resources that match the entire display name given. + + :param str id: (optional) + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. You can provide only one sort order. Default order for `timeCreated` + is descending. Default order for `name` is ascending. + + Allowed values are: "timeCreated", "name" + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.ZprPolicyCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_zpr_policies API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/zprPolicies" + method = "GET" + operation_name = "list_zpr_policies" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "compartment_id", + "lifecycle_state", + "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_zpr_policies got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["ACTIVE", "CREATING", "FAILED", "UPDATING", "DELETING", "DELETED", "NEEDS_ATTENTION"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + 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", "name"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": kwargs.get("compartment_id", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "name": kwargs.get("name", missing), + "id": kwargs.get("id", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="ZprPolicyCollection", + 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="ZprPolicyCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_zpr_policy_work_request_errors(self, work_request_id, **kwargs): + """ + Lists the errors for a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for `timestamp` is descending. + + Allowed values are: "timestamp" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.WorkRequestErrorCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_zpr_policy_work_request_errors API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/zprPolicyWorkRequests/{workRequestId}/errors" + method = "GET" + operation_name = "list_zpr_policy_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_zpr_policy_work_request_errors got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timestamp"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestErrorCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + 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_zpr_policy_work_request_logs(self, work_request_id, **kwargs): + """ + Lists the logs for a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for `timestamp` is descending. + + Allowed values are: "timestamp" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.WorkRequestLogEntryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_zpr_policy_work_request_logs API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/zprPolicyWorkRequests/{workRequestId}/logs" + method = "GET" + operation_name = "list_zpr_policy_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_zpr_policy_work_request_logs got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timestamp"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestLogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + 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_zpr_policy_work_requests(self, **kwargs): + """ + Lists the work requests in a compartment. + + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str work_request_id: (optional) + The `OCID`__ of the asynchronous work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str status: (optional) + A filter to return only the resources that match the given lifecycle state. + + Allowed values are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED" + + :param str resource_id: (optional) + The `OCID`__ of the resource affected by the work request. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for `timeAccepted` is descending. + + Allowed values are: "timeAccepted" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.zpr.models.WorkRequestSummaryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_zpr_policy_work_requests API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/zprPolicyWorkRequests" + method = "GET" + operation_name = "list_zpr_policy_work_requests" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "compartment_id", + "work_request_id", + "status", + "resource_id", + "opc_request_id", + "page", + "limit", + "sort_order", + "sort_by" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_zpr_policy_work_requests got unknown kwargs: {extra_kwargs!r}") + + if 'status' in kwargs: + status_allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "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": kwargs.get("compartment_id", missing), + "workRequestId": kwargs.get("work_request_id", missing), + "status": kwargs.get("status", missing), + "resourceId": kwargs.get("resource_id", missing), + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestSummaryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + 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 update_zpr_policy(self, zpr_policy_id, update_zpr_policy_details, **kwargs): + """ + Updates a specific ZprPolicy. If updating on statements, the entire list of policy statements is required, which will replace the existing policy statements associated with the policy ID. + + + :param str zpr_policy_id: (required) + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.zpr.models.UpdateZprPolicyDetails update_zpr_policy_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 risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param bool opc_dry_run: (optional) + Indicates that the request is a dry run, if set to \"true\". A dry run request does not modify the + configuration item details and is used only to perform validation on the submitted data. + + :param obj 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 update_zpr_policy API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['zprPolicyId'] + resource_path = "/zprPolicies/{zprPolicyId}" + method = "PUT" + operation_name = "update_zpr_policy" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "retry_strategy", + "opc_retry_token", + "if_match", + "opc_request_id", + "opc_dry_run" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_zpr_policy got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "zprPolicyId": zpr_policy_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), + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-dry-run": kwargs.get("opc_dry_run", 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_zpr_policy_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_zpr_policy_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/zpr/zpr_client_composite_operations.py b/src/oci/zpr/zpr_client_composite_operations.py new file mode 100644 index 000000000..6bab49998 --- /dev/null +++ b/src/oci/zpr/zpr_client_composite_operations.py @@ -0,0 +1,197 @@ +# 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: 20240301 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class ZprClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.zpr.ZprClient` 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 ZprClientCompositeOperations object + + :param ZprClient client: + The service client which will be wrapped by this object + """ + self.client = client + + def create_configuration_and_wait_for_state(self, create_configuration_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.zpr.ZprClient.create_configuration` and waits for the :py:class:`~oci.zpr.models.WorkRequest` + to enter the given state(s). + + :param oci.zpr.models.CreateConfigurationDetails create_configuration_details: (required) + Details for ZPR configuration in the tenancy. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.zpr.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.zpr.ZprClient.create_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 + """ + operation_result = self.client.create_configuration(create_configuration_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_zpr_policy_and_wait_for_state(self, create_zpr_policy_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.zpr.ZprClient.create_zpr_policy` and waits for the :py:class:`~oci.zpr.models.WorkRequest` + to enter the given state(s). + + :param oci.zpr.models.CreateZprPolicyDetails create_zpr_policy_details: (required) + Details for the new ZprPolicy. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.zpr.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.zpr.ZprClient.create_zpr_policy` + + :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_zpr_policy(create_zpr_policy_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_zpr_policy_and_wait_for_state(self, zpr_policy_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.zpr.ZprClient.delete_zpr_policy` and waits for the :py:class:`~oci.zpr.models.WorkRequest` + to enter the given state(s). + + :param str zpr_policy_id: (required) + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.zpr.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.zpr.ZprClient.delete_zpr_policy` + + :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_zpr_policy(zpr_policy_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_zpr_policy_and_wait_for_state(self, zpr_policy_id, update_zpr_policy_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.zpr.ZprClient.update_zpr_policy` and waits for the :py:class:`~oci.zpr.models.WorkRequest` + to enter the given state(s). + + :param str zpr_policy_id: (required) + The `OCID`__ of the ZprPolicy. + + __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.zpr.models.UpdateZprPolicyDetails update_zpr_policy_details: (required) + The information to be updated. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.zpr.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.zpr.ZprClient.update_zpr_policy` + + :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_zpr_policy(zpr_policy_id, update_zpr_policy_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)