diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/CHANGELOG.md b/sdk/oracledatabase/azure-mgmt-oracledatabase/CHANGELOG.md index 32596ecf7862..338766bc513d 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/CHANGELOG.md +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/CHANGELOG.md @@ -1,5 +1,128 @@ # Release History +## 4.0.0 (2026-08-31) + +### Features Added + + - Client `OracleDatabaseMgmtClient` added operation group `database_editions` + - Client `OracleDatabaseMgmtClient` added operation group `database_system_shape_resources` + - Client `OracleDatabaseMgmtClient` added operation group `golden_gate_connections` + - Client `OracleDatabaseMgmtClient` added operation group `golden_gate_deployments` + - Model `AutonomousDatabaseBackupProperties` added property `backup_destination` + - Model `AutonomousDatabaseBaseProperties` added property `backup_destination` + - Model `AutonomousDatabaseBaseProperties` added property `is_schedule_az_update_to_earliest` + - Model `AutonomousDatabaseBaseProperties` added property `network_anchor_id` + - Model `AutonomousDatabaseBaseProperties` added property `resource_anchor_id` + - Model `AutonomousDatabaseBaseProperties` added property `time_scheduled_az_update` + - Model `AutonomousDatabaseBaseProperties` added property `zone` + - Model `AutonomousDatabaseCloneProperties` added property `backup_destination` + - Model `AutonomousDatabaseCloneProperties` added property `is_schedule_az_update_to_earliest` + - Model `AutonomousDatabaseCloneProperties` added property `network_anchor_id` + - Model `AutonomousDatabaseCloneProperties` added property `resource_anchor_id` + - Model `AutonomousDatabaseCloneProperties` added property `time_scheduled_az_update` + - Model `AutonomousDatabaseCloneProperties` added property `zone` + - Model `AutonomousDatabaseCrossRegionDisasterRecoveryProperties` added property `backup_destination` + - Model `AutonomousDatabaseCrossRegionDisasterRecoveryProperties` added property `is_schedule_az_update_to_earliest` + - Model `AutonomousDatabaseCrossRegionDisasterRecoveryProperties` added property `network_anchor_id` + - Model `AutonomousDatabaseCrossRegionDisasterRecoveryProperties` added property `resource_anchor_id` + - Model `AutonomousDatabaseCrossRegionDisasterRecoveryProperties` added property `time_scheduled_az_update` + - Model `AutonomousDatabaseCrossRegionDisasterRecoveryProperties` added property `zone` + - Model `AutonomousDatabaseFromBackupTimestampProperties` added property `backup_destination` + - Model `AutonomousDatabaseFromBackupTimestampProperties` added property `is_schedule_az_update_to_earliest` + - Model `AutonomousDatabaseFromBackupTimestampProperties` added property `network_anchor_id` + - Model `AutonomousDatabaseFromBackupTimestampProperties` added property `resource_anchor_id` + - Model `AutonomousDatabaseFromBackupTimestampProperties` added property `time_scheduled_az_update` + - Model `AutonomousDatabaseFromBackupTimestampProperties` added property `zone` + - Model `AutonomousDatabaseProperties` added property `backup_destination` + - Model `AutonomousDatabaseProperties` added property `is_schedule_az_update_to_earliest` + - Model `AutonomousDatabaseProperties` added property `network_anchor_id` + - Model `AutonomousDatabaseProperties` added property `resource_anchor_id` + - Model `AutonomousDatabaseProperties` added property `time_scheduled_az_update` + - Model `AutonomousDatabaseProperties` added property `zone` + - Enum `BaseDbSystemShapes` added member `VM_BASE_DBX86` + - Model `CloudExadataInfrastructureProperties` added property `proximity_placement_group` + - Model `CloudExadataInfrastructureProperties` added property `resource_anchor_id` + - Model `CloudVmClusterProperties` added property `hostname_v2` + - Model `CloudVmClusterProperties` added property `is_accelerated_network_enabled` + - Model `CloudVmClusterProperties` added property `network_anchor_id` + - Model `CloudVmClusterProperties` added property `proximity_placement_group` + - Model `CloudVmClusterProperties` added property `reco_storage_percentage` + - Model `CloudVmClusterProperties` added property `resource_anchor_id` + - Model `CloudVmClusterProperties` added property `scan_dns_name_v2` + - Model `CloudVmClusterProperties` added property `sparse_storage_percentage` + - Model `CloudVmClusterUpdateProperties` added property `is_accelerated_network_enabled` + - Model `DbSystemBaseProperties` added property `character_set` + - Model `DbSystemBaseProperties` added property `data_collection_options` + - Model `DbSystemBaseProperties` added property `ncharacter_set` + - Model `DbSystemProperties` added property `character_set` + - Model `DbSystemProperties` added property `data_collection_options` + - Model `DbSystemProperties` added property `ncharacter_set` + - Model `ExadbVmClusterProperties` added property `hostname_v2` + - Model `ExadbVmClusterProperties` added property `scan_dns_name_v2` + - Model `ExascaleDbStorageVaultProperties` added property `autoscale_limit_in_gbs` + - Model `ExascaleDbStorageVaultProperties` added property `is_autoscale_enabled` + - Model `NetworkAnchorProperties` added property `proximity_placement_group` + - Enum `SystemShapes` added member `EXADATA_X11_MV` + - Enum `WorkloadType` added member `LH` + - Added model `AssignUnassignConnection` + - Added model `AssignUnassignDeployment` + - Added model `AssignedConnection` + - Added model `AssignedDeployment` + - Added enum `BackupDestinationType` + - Added model `BackupScheduleType` + - Added enum `CategoryType` + - Added model `ConnectionBaseProperties` + - Added enum `ConnectionLifecycleState` + - Added enum `ConnectionType` + - Added enum `CredentialType` + - Added model `DatabaseEdition` + - Added model `DatabaseEditionProperties` + - Added model `DatabaseSystemShape` + - Added model `DatabaseSystemShapeProperties` + - Added model `DeploymentConnectionAssignmentProperties` + - Added enum `DeploymentLifecycleState` + - Added model `DeploymentProperties` + - Added enum `DeploymentType` + - Added enum `FrequencyType` + - Added enum `GiMinorVersionSortOrder` + - Added model `GoldenGateConnection` + - Added enum `GoldenGateConnectionAssignmentLifecycleState` + - Added model `GoldenGateConnectionUpdate` + - Added model `GoldenGateConnectionUpdateProperties` + - Added model `GoldenGateDeployment` + - Added model `GoldenGateDeploymentUpdate` + - Added model `GoldenGateDeploymentUpdateProperties` + - Added model `GroupToRolesMappingDetails` + - Added model `KafkaBootstrapServer` + - Added model `KafkaConnectionDetails` + - Added enum `KafkaConnectionTechnologyType` + - Added model `MaintenanceConfigurationType` + - Added model `MaintenanceWindowType` + - Added model `MicrosoftFabricConnectionDetails` + - Added enum `MicrosoftFabricConnectionTechnologyType` + - Added model `OggDeploymentDetails` + - Added model `OracleConnectionDetails` + - Added enum `OracleConnectionTechnologyType` + - Added model `ProximityPlacementGroup` + - Added enum `ProximityPlacementGroupEntityType` + - Added enum `RoutingMethod` + - Added enum `SessionMode` + - Added enum `SetupType` + - Operation group `GiMinorVersionsOperations` added parameter `is_gi_version_for_provisioning` in method `list_by_parent` + - Operation group `GiMinorVersionsOperations` added parameter `shape` in method `list_by_parent` + - Operation group `GiMinorVersionsOperations` added parameter `sort_order` in method `list_by_parent` + - Added operation group `DatabaseEditionsOperations` + - Added operation group `DatabaseSystemShapeResourcesOperations` + - Added operation group `GoldenGateConnectionsOperations` + - Added operation group `GoldenGateDeploymentsOperations` + +### Breaking Changes + + - Model `CloudVmClusterProperties` deleted or renamed its instance variable `hostname` + - Model `CloudVmClusterProperties` deleted or renamed its instance variable `scan_dns_name` + - Model `ExadbVmClusterProperties` deleted or renamed its instance variable `hostname` + - Model `ExadbVmClusterProperties` deleted or renamed its instance variable `scan_dns_name` + ## 3.0.0 (2025-10-15) ### Features Added diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/README.md b/sdk/oracledatabase/azure-mgmt-oracledatabase/README.md index 50195d4b3844..3a96960e4b52 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/README.md +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/README.md @@ -1,7 +1,7 @@ # Microsoft Azure SDK for Python This is the Microsoft Azure Oracledatabase Management Client Library. -This package has been tested with Python 3.9+. +This package has been tested with Python 3.10+. For a more complete view of Azure libraries, see the [azure sdk python release](https://aka.ms/azsdk/python/all). ## _Disclaimer_ @@ -12,7 +12,7 @@ _Azure SDK Python packages support for Python 2.7 has ended 01 January 2022. For ### Prerequisites -- Python 3.9+ is required to use this package. +- Python 3.10+ is required to use this package. - [Azure subscription](https://azure.microsoft.com/free/) ### Install the package @@ -24,7 +24,7 @@ pip install azure-identity ### Authentication -By default, [Azure Active Directory](https://aka.ms/awps/aad) token authentication depends on correct configuration of the following environment variables. +By default, [Microsoft Entra](https://learn.microsoft.com/entra/fundamentals/what-is-entra) token authentication depends on correct configuration of the following environment variables. - `AZURE_CLIENT_ID` for Azure client ID. - `AZURE_TENANT_ID` for Azure tenant ID. diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/_metadata.json b/sdk/oracledatabase/azure-mgmt-oracledatabase/_metadata.json index d28edbb4a84c..875e1bf55c31 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/_metadata.json +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/_metadata.json @@ -1,7 +1,11 @@ { - "apiVersion": "2025-09-01", - "commit": "34499b0aa7b61a0e96a37d28aa282c9d2c345122", + "apiVersion": "2026-06-01", + "apiVersions": { + "Oracle.Database": "2026-06-01" + }, + "commit": "4e6e13d398d4c2616237322a62394fc4f1dfeb81", "repository_url": "https://github.com/Azure/azure-rest-api-specs", - "typespec_src": "specification/oracle/Oracle.Database.Management", - "emitterVersion": "0.50.0" + "typespec_src": "specification/oracle/resource-manager/Oracle.Database/OracleDatabase", + "emitterVersion": "0.63.5", + "httpClientPythonVersion": "^0.36.0" } \ No newline at end of file diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/api.md b/sdk/oracledatabase/azure-mgmt-oracledatabase/api.md new file mode 100644 index 000000000000..dc2dd5bcf369 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/api.md @@ -0,0 +1,12137 @@ +```py +namespace azure.mgmt.oracledatabase + + class azure.mgmt.oracledatabase.OracleDatabaseMgmtClient: implements ContextManager + autonomous_database_backups: AutonomousDatabaseBackupsOperations + autonomous_database_character_sets: AutonomousDatabaseCharacterSetsOperations + autonomous_database_national_character_sets: AutonomousDatabaseNationalCharacterSetsOperations + autonomous_database_versions: AutonomousDatabaseVersionsOperations + autonomous_databases: AutonomousDatabasesOperations + cloud_exadata_infrastructures: CloudExadataInfrastructuresOperations + cloud_vm_clusters: CloudVmClustersOperations + database_editions: DatabaseEditionsOperations + database_system_shape_resources: DatabaseSystemShapeResourcesOperations + db_nodes: DbNodesOperations + db_servers: DbServersOperations + db_system_shapes: DbSystemShapesOperations + db_systems: DbSystemsOperations + db_versions: DbVersionsOperations + dns_private_views: DnsPrivateViewsOperations + dns_private_zones: DnsPrivateZonesOperations + exadb_vm_clusters: ExadbVmClustersOperations + exascale_db_nodes: ExascaleDbNodesOperations + exascale_db_storage_vaults: ExascaleDbStorageVaultsOperations + flex_components: FlexComponentsOperations + gi_minor_versions: GiMinorVersionsOperations + gi_versions: GiVersionsOperations + golden_gate_connections: GoldenGateConnectionsOperations + golden_gate_deployments: GoldenGateDeploymentsOperations + network_anchors: NetworkAnchorsOperations + operations: Operations + oracle_subscriptions: OracleSubscriptionsOperations + resource_anchors: ResourceAnchorsOperations + system_versions: SystemVersionsOperations + virtual_network_addresses: VirtualNetworkAddressesOperations + + def __init__( + self, + credential: TokenCredential, + subscription_id: str, + base_url: Optional[str] = None, + *, + api_version: str = ..., + cloud_setting: Optional[AzureClouds] = ..., + polling_interval: Optional[int] = ..., + **kwargs: Any + ) -> None: ... + + def close(self) -> None: ... + + def send_request( + self, + request: HttpRequest, + *, + stream: bool = False, + **kwargs: Any + ) -> HttpResponse: ... + + +namespace azure.mgmt.oracledatabase.aio + + class azure.mgmt.oracledatabase.aio.OracleDatabaseMgmtClient: implements AsyncContextManager + autonomous_database_backups: AutonomousDatabaseBackupsOperations + autonomous_database_character_sets: AutonomousDatabaseCharacterSetsOperations + autonomous_database_national_character_sets: AutonomousDatabaseNationalCharacterSetsOperations + autonomous_database_versions: AutonomousDatabaseVersionsOperations + autonomous_databases: AutonomousDatabasesOperations + cloud_exadata_infrastructures: CloudExadataInfrastructuresOperations + cloud_vm_clusters: CloudVmClustersOperations + database_editions: DatabaseEditionsOperations + database_system_shape_resources: DatabaseSystemShapeResourcesOperations + db_nodes: DbNodesOperations + db_servers: DbServersOperations + db_system_shapes: DbSystemShapesOperations + db_systems: DbSystemsOperations + db_versions: DbVersionsOperations + dns_private_views: DnsPrivateViewsOperations + dns_private_zones: DnsPrivateZonesOperations + exadb_vm_clusters: ExadbVmClustersOperations + exascale_db_nodes: ExascaleDbNodesOperations + exascale_db_storage_vaults: ExascaleDbStorageVaultsOperations + flex_components: FlexComponentsOperations + gi_minor_versions: GiMinorVersionsOperations + gi_versions: GiVersionsOperations + golden_gate_connections: GoldenGateConnectionsOperations + golden_gate_deployments: GoldenGateDeploymentsOperations + network_anchors: NetworkAnchorsOperations + operations: Operations + oracle_subscriptions: OracleSubscriptionsOperations + resource_anchors: ResourceAnchorsOperations + system_versions: SystemVersionsOperations + virtual_network_addresses: VirtualNetworkAddressesOperations + + def __init__( + self, + credential: AsyncTokenCredential, + subscription_id: str, + base_url: Optional[str] = None, + *, + api_version: str = ..., + cloud_setting: Optional[AzureClouds] = ..., + polling_interval: Optional[int] = ..., + **kwargs: Any + ) -> None: ... + + async def close(self) -> None: ... + + def send_request( + self, + request: HttpRequest, + *, + stream: bool = False, + **kwargs: Any + ) -> Awaitable[AsyncHttpResponse]: ... + + +namespace azure.mgmt.oracledatabase.aio.operations + + class azure.mgmt.oracledatabase.aio.operations.AutonomousDatabaseBackupsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: AutonomousDatabaseBackup, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabaseBackup]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: AutonomousDatabaseBackup, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabaseBackup]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabaseBackup]: ... + + @distributed_trace_async + async def begin_delete( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + properties: AutonomousDatabaseBackupUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabaseBackup]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + properties: AutonomousDatabaseBackupUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabaseBackup]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabaseBackup]: ... + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + **kwargs: Any + ) -> AutonomousDatabaseBackup: ... + + @distributed_trace + def list_by_parent( + self, + resource_group_name: str, + autonomousdatabasename: str, + **kwargs: Any + ) -> AsyncItemPaged[AutonomousDatabaseBackup]: ... + + + class azure.mgmt.oracledatabase.aio.operations.AutonomousDatabaseCharacterSetsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def get( + self, + location: str, + adbscharsetname: str, + **kwargs: Any + ) -> AutonomousDatabaseCharacterSet: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> AsyncItemPaged[AutonomousDatabaseCharacterSet]: ... + + + class azure.mgmt.oracledatabase.aio.operations.AutonomousDatabaseNationalCharacterSetsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def get( + self, + location: str, + adbsncharsetname: str, + **kwargs: Any + ) -> AutonomousDatabaseNationalCharacterSet: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> AsyncItemPaged[AutonomousDatabaseNationalCharacterSet]: ... + + + class azure.mgmt.oracledatabase.aio.operations.AutonomousDatabaseVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def get( + self, + location: str, + autonomousdbversionsname: str, + **kwargs: Any + ) -> AutonomousDbVersion: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> AsyncItemPaged[AutonomousDbVersion]: ... + + + class azure.mgmt.oracledatabase.aio.operations.AutonomousDatabasesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: AutonomousDatabaseLifecycleAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: AutonomousDatabaseLifecycleAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_change_disaster_recovery_configuration( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: DisasterRecoveryConfigurationDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_change_disaster_recovery_configuration( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: DisasterRecoveryConfigurationDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_change_disaster_recovery_configuration( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: AutonomousDatabase, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: AutonomousDatabase, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @distributed_trace_async + async def begin_delete( + self, + resource_group_name: str, + autonomousdatabasename: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: RestoreAutonomousDatabaseDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: RestoreAutonomousDatabaseDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @distributed_trace_async + async def begin_shrink( + self, + resource_group_name: str, + autonomousdatabasename: str, + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: AutonomousDatabaseUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: AutonomousDatabaseUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AutonomousDatabase]: ... + + @overload + async def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: GenerateAutonomousDatabaseWalletDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AutonomousDatabaseWalletFile: ... + + @overload + async def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: GenerateAutonomousDatabaseWalletDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AutonomousDatabaseWalletFile: ... + + @overload + async def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AutonomousDatabaseWalletFile: ... + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + autonomousdatabasename: str, + **kwargs: Any + ) -> AutonomousDatabase: ... + + @distributed_trace + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[AutonomousDatabase]: ... + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[AutonomousDatabase]: ... + + + class azure.mgmt.oracledatabase.aio.operations.CloudExadataInfrastructuresOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def begin_add_storage_capacity( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @overload + async def begin_configure_exascale( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + body: ConfigureExascaleCloudExadataInfrastructureDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @overload + async def begin_configure_exascale( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + body: ConfigureExascaleCloudExadataInfrastructureDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @overload + async def begin_configure_exascale( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + resource: CloudExadataInfrastructure, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + resource: CloudExadataInfrastructure, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @distributed_trace_async + async def begin_delete( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + properties: CloudExadataInfrastructureUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + properties: CloudExadataInfrastructureUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudExadataInfrastructure]: ... + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + **kwargs: Any + ) -> CloudExadataInfrastructure: ... + + @distributed_trace + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[CloudExadataInfrastructure]: ... + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[CloudExadataInfrastructure]: ... + + + class azure.mgmt.oracledatabase.aio.operations.CloudVmClustersOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + resource: CloudVmCluster, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + resource: CloudVmCluster, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @distributed_trace_async + async def begin_delete( + self, + resource_group_name: str, + cloudvmclustername: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: CloudVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: CloudVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[CloudVmCluster]: ... + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + cloudvmclustername: str, + **kwargs: Any + ) -> CloudVmCluster: ... + + @distributed_trace + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[CloudVmCluster]: ... + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[CloudVmCluster]: ... + + @overload + async def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: PrivateIpAddressesFilter, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> List[PrivateIpAddressProperties]: ... + + @overload + async def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: PrivateIpAddressesFilter, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> List[PrivateIpAddressProperties]: ... + + @overload + async def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> List[PrivateIpAddressProperties]: ... + + + class azure.mgmt.oracledatabase.aio.operations.DatabaseEditionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2026-04-01-preview', params_added_on={'2026-04-01-preview': ['api_version', 'subscription_id', 'location', 'databaseeditionname', 'accept']}, api_versions_list=['2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + location: str, + databaseeditionname: str, + **kwargs: Any + ) -> DatabaseEdition: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-04-01-preview', params_added_on={'2026-04-01-preview': ['api_version', 'subscription_id', 'location', 'accept']}, api_versions_list=['2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> AsyncItemPaged[DatabaseEdition]: ... + + + class azure.mgmt.oracledatabase.aio.operations.DatabaseSystemShapeResourcesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2026-04-01-preview', params_added_on={'2026-04-01-preview': ['api_version', 'subscription_id', 'location', 'databasesystemshapename', 'accept']}, api_versions_list=['2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + location: str, + databasesystemshapename: str, + **kwargs: Any + ) -> DatabaseSystemShape: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-04-01-preview', params_added_on={'2026-04-01-preview': ['api_version', 'subscription_id', 'location', 'shape_attribute', 'zone', 'availability_domain', 'database_shape_family', 'database_edition', 'accept']}, api_versions_list=['2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + *, + availability_domain: Optional[str] = ..., + database_edition: Optional[str] = ..., + database_shape_family: Optional[str] = ..., + shape_attribute: Optional[str] = ..., + zone: Optional[str] = ..., + **kwargs: Any + ) -> AsyncItemPaged[DatabaseSystemShape]: ... + + + class azure.mgmt.oracledatabase.aio.operations.DbNodesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbNode]: ... + + @overload + async def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbNode]: ... + + @overload + async def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbNode]: ... + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + **kwargs: Any + ) -> DbNode: ... + + @distributed_trace + def list_by_parent( + self, + resource_group_name: str, + cloudvmclustername: str, + **kwargs: Any + ) -> AsyncItemPaged[DbNode]: ... + + + class azure.mgmt.oracledatabase.aio.operations.DbServersOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + dbserverocid: str, + **kwargs: Any + ) -> DbServer: ... + + @distributed_trace + def list_by_parent( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + **kwargs: Any + ) -> AsyncItemPaged[DbServer]: ... + + + class azure.mgmt.oracledatabase.aio.operations.DbSystemShapesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def get( + self, + location: str, + dbsystemshapename: str, + **kwargs: Any + ) -> DbSystemShape: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'location', 'zone', 'accept'], '2025-08-01-preview': ['shape_attribute']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + *, + shape_attribute: Optional[str] = ..., + zone: Optional[str] = ..., + **kwargs: Any + ) -> AsyncItemPaged[DbSystemShape]: ... + + + class azure.mgmt.oracledatabase.aio.operations.DbSystemsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + db_system_name: str, + resource: DbSystem, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbSystem]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + db_system_name: str, + resource: DbSystem, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbSystem]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + db_system_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbSystem]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'db_system_name']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def begin_delete( + self, + resource_group_name: str, + db_system_name: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + db_system_name: str, + properties: DbSystemUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbSystem]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + db_system_name: str, + properties: DbSystemUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbSystem]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + db_system_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbSystem]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'db_system_name', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + resource_group_name: str, + db_system_name: str, + **kwargs: Any + ) -> DbSystem: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[DbSystem]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[DbSystem]: ... + + + class azure.mgmt.oracledatabase.aio.operations.DbVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'location', 'dbversionsname', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + location: str, + dbversionsname: str, + **kwargs: Any + ) -> DbVersion: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'location', 'db_system_shape', 'db_system_id', 'storage_management', 'is_upgrade_supported', 'is_database_software_image_supported', 'shape_family', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + *, + db_system_id: Optional[str] = ..., + db_system_shape: Optional[Union[str, BaseDbSystemShapes]] = ..., + is_database_software_image_supported: Optional[bool] = ..., + is_upgrade_supported: Optional[bool] = ..., + shape_family: Optional[Union[str, ShapeFamilyType]] = ..., + storage_management: Optional[Union[str, StorageManagementType]] = ..., + **kwargs: Any + ) -> AsyncItemPaged[DbVersion]: ... + + + class azure.mgmt.oracledatabase.aio.operations.DnsPrivateViewsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def get( + self, + location: str, + dnsprivateviewocid: str, + **kwargs: Any + ) -> DnsPrivateView: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> AsyncItemPaged[DnsPrivateView]: ... + + + class azure.mgmt.oracledatabase.aio.operations.DnsPrivateZonesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def get( + self, + location: str, + dnsprivatezonename: str, + **kwargs: Any + ) -> DnsPrivateZone: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> AsyncItemPaged[DnsPrivateZone]: ... + + + class azure.mgmt.oracledatabase.aio.operations.ExadbVmClustersOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + resource: ExadbVmCluster, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExadbVmCluster]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + resource: ExadbVmCluster, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExadbVmCluster]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExadbVmCluster]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exadb_vm_cluster_name']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def begin_delete( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_remove_vms( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + body: RemoveVirtualMachineFromExadbVmClusterDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExadbVmCluster]: ... + + @overload + async def begin_remove_vms( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + body: RemoveVirtualMachineFromExadbVmClusterDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExadbVmCluster]: ... + + @overload + async def begin_remove_vms( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExadbVmCluster]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + properties: ExadbVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExadbVmCluster]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + properties: ExadbVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExadbVmCluster]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExadbVmCluster]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exadb_vm_cluster_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + **kwargs: Any + ) -> ExadbVmCluster: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[ExadbVmCluster]: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[ExadbVmCluster]: ... + + + class azure.mgmt.oracledatabase.aio.operations.ExascaleDbNodesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_action( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbActionResponse]: ... + + @overload + async def begin_action( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbActionResponse]: ... + + @overload + async def begin_action( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[DbActionResponse]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exadb_vm_cluster_name', 'exascale_db_node_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + **kwargs: Any + ) -> ExascaleDbNode: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exadb_vm_cluster_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_parent( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + **kwargs: Any + ) -> AsyncItemPaged[ExascaleDbNode]: ... + + + class azure.mgmt.oracledatabase.aio.operations.ExascaleDbStorageVaultsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_create( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + resource: ExascaleDbStorageVault, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExascaleDbStorageVault]: ... + + @overload + async def begin_create( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + resource: ExascaleDbStorageVault, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExascaleDbStorageVault]: ... + + @overload + async def begin_create( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExascaleDbStorageVault]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exascale_db_storage_vault_name']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def begin_delete( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: ExascaleDbStorageVaultTagsUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExascaleDbStorageVault]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: ExascaleDbStorageVaultTagsUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExascaleDbStorageVault]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ExascaleDbStorageVault]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exascale_db_storage_vault_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + **kwargs: Any + ) -> ExascaleDbStorageVault: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[ExascaleDbStorageVault]: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[ExascaleDbStorageVault]: ... + + + class azure.mgmt.oracledatabase.aio.operations.FlexComponentsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2025-01-01-preview', params_added_on={'2025-01-01-preview': ['api_version', 'subscription_id', 'location', 'flex_component_name', 'accept']}, api_versions_list=['2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + location: str, + flex_component_name: str, + **kwargs: Any + ) -> FlexComponent: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-01-01-preview', params_added_on={'2025-01-01-preview': ['api_version', 'subscription_id', 'location', 'shape', 'accept']}, api_versions_list=['2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_parent( + self, + location: str, + *, + shape: Optional[Union[str, SystemShapes]] = ..., + **kwargs: Any + ) -> AsyncItemPaged[FlexComponent]: ... + + + class azure.mgmt.oracledatabase.aio.operations.GiMinorVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'location', 'giversionname', 'gi_minor_version_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + location: str, + giversionname: str, + gi_minor_version_name: str, + **kwargs: Any + ) -> GiMinorVersion: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'location', 'giversionname', 'shape_family', 'zone', 'accept'], '2026-04-01-preview': ['shape', 'is_gi_version_for_provisioning', 'sort_order']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_parent( + self, + location: str, + giversionname: str, + *, + is_gi_version_for_provisioning: Optional[bool] = ..., + shape: Optional[str] = ..., + shape_family: Optional[Union[str, ShapeFamily]] = ..., + sort_order: Optional[Union[str, GiMinorVersionSortOrder]] = ..., + zone: Optional[str] = ..., + **kwargs: Any + ) -> AsyncItemPaged[GiMinorVersion]: ... + + + class azure.mgmt.oracledatabase.aio.operations.GiVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def get( + self, + location: str, + giversionname: str, + **kwargs: Any + ) -> GiVersion: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'location', 'shape', 'zone', 'accept'], '2025-08-01-preview': ['shape_attribute']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + *, + shape: Optional[Union[str, SystemShapes]] = ..., + shape_attribute: Optional[str] = ..., + zone: Optional[str] = ..., + **kwargs: Any + ) -> AsyncItemPaged[GiVersion]: ... + + + class azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedDeployment]: ... + + @overload + async def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedDeployment]: ... + + @overload + async def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedDeployment]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: GoldenGateConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateConnection]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: GoldenGateConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateConnection]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateConnection]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_connection_name']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def begin_delete( + self, + resource_group_name: str, + golden_gate_connection_name: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedDeployment]: ... + + @overload + async def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedDeployment]: ... + + @overload + async def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedDeployment]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: GoldenGateConnectionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateConnection]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: GoldenGateConnectionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateConnection]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateConnection]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_connection_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + resource_group_name: str, + golden_gate_connection_name: str, + **kwargs: Any + ) -> GoldenGateConnection: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_connection_name', 'assignment_id', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get_assigned_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + assignment_id: str, + **kwargs: Any + ) -> AssignedDeployment: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_connection_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_assigned_deployments_by_parent( + self, + resource_group_name: str, + golden_gate_connection_name: str, + **kwargs: Any + ) -> AsyncItemPaged[AssignedDeployment]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[GoldenGateConnection]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[GoldenGateConnection]: ... + + + class azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedConnection]: ... + + @overload + async def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedConnection]: ... + + @overload + async def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedConnection]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: GoldenGateDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateDeployment]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: GoldenGateDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateDeployment]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateDeployment]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_deployment_name']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def begin_delete( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedConnection]: ... + + @overload + async def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedConnection]: ... + + @overload + async def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[AssignedConnection]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: GoldenGateDeploymentUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateDeployment]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: GoldenGateDeploymentUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateDeployment]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[GoldenGateDeployment]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_deployment_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + **kwargs: Any + ) -> GoldenGateDeployment: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_deployment_name', 'assignment_id', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get_assigned_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + assignment_id: str, + **kwargs: Any + ) -> AssignedConnection: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_deployment_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_assigned_connections_by_parent( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + **kwargs: Any + ) -> AsyncItemPaged[AssignedConnection]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[GoldenGateDeployment]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[GoldenGateDeployment]: ... + + + class azure.mgmt.oracledatabase.aio.operations.NetworkAnchorsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + network_anchor_name: str, + resource: NetworkAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[NetworkAnchor]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + network_anchor_name: str, + resource: NetworkAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[NetworkAnchor]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + network_anchor_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[NetworkAnchor]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'network_anchor_name']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def begin_delete( + self, + resource_group_name: str, + network_anchor_name: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + network_anchor_name: str, + properties: NetworkAnchorUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[NetworkAnchor]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + network_anchor_name: str, + properties: NetworkAnchorUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[NetworkAnchor]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + network_anchor_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[NetworkAnchor]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'network_anchor_name', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + resource_group_name: str, + network_anchor_name: str, + **kwargs: Any + ) -> NetworkAnchor: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[NetworkAnchor]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[NetworkAnchor]: ... + + + class azure.mgmt.oracledatabase.aio.operations.Operations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def list(self, **kwargs: Any) -> AsyncItemPaged[Operation]: ... + + + class azure.mgmt.oracledatabase.aio.operations.OracleSubscriptionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_add_azure_subscriptions( + self, + body: AzureSubscriptions, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_add_azure_subscriptions( + self, + body: AzureSubscriptions, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_add_azure_subscriptions( + self, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_create_or_update( + self, + resource: OracleSubscription, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[OracleSubscription]: ... + + @overload + async def begin_create_or_update( + self, + resource: OracleSubscription, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[OracleSubscription]: ... + + @overload + async def begin_create_or_update( + self, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[OracleSubscription]: ... + + @distributed_trace_async + async def begin_delete(self, **kwargs: Any) -> AsyncLROPoller[None]: ... + + @distributed_trace_async + async def begin_list_activation_links(self, **kwargs: Any) -> AsyncLROPoller[ActivationLinks]: ... + + @distributed_trace_async + async def begin_list_cloud_account_details(self, **kwargs: Any) -> AsyncLROPoller[CloudAccountDetails]: ... + + @distributed_trace_async + async def begin_list_saas_subscription_details(self, **kwargs: Any) -> AsyncLROPoller[SaasSubscriptionDetails]: ... + + @overload + async def begin_update( + self, + properties: OracleSubscriptionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[OracleSubscription]: ... + + @overload + async def begin_update( + self, + properties: OracleSubscriptionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[OracleSubscription]: ... + + @overload + async def begin_update( + self, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[OracleSubscription]: ... + + @distributed_trace_async + async def get(self, **kwargs: Any) -> OracleSubscription: ... + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[OracleSubscription]: ... + + + class azure.mgmt.oracledatabase.aio.operations.ResourceAnchorsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: ResourceAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ResourceAnchor]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: ResourceAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ResourceAnchor]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ResourceAnchor]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'resource_anchor_name']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def begin_delete( + self, + resource_group_name: str, + resource_anchor_name: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + resource_anchor_name: str, + properties: ResourceAnchorUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ResourceAnchor]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + resource_anchor_name: str, + properties: ResourceAnchorUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ResourceAnchor]: ... + + @overload + async def begin_update( + self, + resource_group_name: str, + resource_anchor_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[ResourceAnchor]: ... + + @distributed_trace_async + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'resource_anchor_name', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + async def get( + self, + resource_group_name: str, + resource_anchor_name: str, + **kwargs: Any + ) -> ResourceAnchor: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> AsyncItemPaged[ResourceAnchor]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged[ResourceAnchor]: ... + + + class azure.mgmt.oracledatabase.aio.operations.SystemVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace_async + async def get( + self, + location: str, + systemversionname: str, + **kwargs: Any + ) -> SystemVersion: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> AsyncItemPaged[SystemVersion]: ... + + + class azure.mgmt.oracledatabase.aio.operations.VirtualNetworkAddressesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: VirtualNetworkAddress, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[VirtualNetworkAddress]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: VirtualNetworkAddress, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[VirtualNetworkAddress]: ... + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[VirtualNetworkAddress]: ... + + @distributed_trace_async + async def begin_delete( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + **kwargs: Any + ) -> AsyncLROPoller[None]: ... + + @distributed_trace_async + async def get( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + **kwargs: Any + ) -> VirtualNetworkAddress: ... + + @distributed_trace + def list_by_parent( + self, + resource_group_name: str, + cloudvmclustername: str, + **kwargs: Any + ) -> AsyncItemPaged[VirtualNetworkAddress]: ... + + +namespace azure.mgmt.oracledatabase.models + + class azure.mgmt.oracledatabase.models.ActionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + INTERNAL = "Internal" + + + class azure.mgmt.oracledatabase.models.ActivationLinks(_Model): + existing_cloud_account_activation_link: Optional[str] + new_cloud_account_activation_link: Optional[str] + + + class azure.mgmt.oracledatabase.models.AddRemoveDbNode(_Model): + db_servers: list[str] + + @overload + def __init__( + self, + *, + db_servers: list[str] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AddSubscriptionOperationState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + FAILED = "Failed" + SUCCEEDED = "Succeeded" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.AllConnectionStringType(_Model): + high: Optional[str] + low: Optional[str] + medium: Optional[str] + + @overload + def __init__( + self, + *, + high: Optional[str] = ..., + low: Optional[str] = ..., + medium: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ApexDetailsType(_Model): + apex_version: Optional[str] + ords_version: Optional[str] + + @overload + def __init__( + self, + *, + apex_version: Optional[str] = ..., + ords_version: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AssignUnassignConnection(_Model): + connection_id: str + + @overload + def __init__( + self, + *, + connection_id: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AssignUnassignDeployment(_Model): + deployment_id: str + + @overload + def __init__( + self, + *, + deployment_id: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AssignedConnection(ProxyResource): + id: str + name: str + properties: Optional[DeploymentConnectionAssignmentProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DeploymentConnectionAssignmentProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AssignedDeployment(ProxyResource): + id: str + name: str + properties: Optional[DeploymentConnectionAssignmentProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DeploymentConnectionAssignmentProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabase(TrackedResource): + id: str + location: str + name: str + properties: Optional[AutonomousDatabaseBaseProperties] + system_data: SystemData + tags: dict[str, str] + type: str + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[AutonomousDatabaseBaseProperties] = ..., + tags: Optional[dict[str, str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup(ProxyResource): + id: str + name: str + properties: Optional[AutonomousDatabaseBackupProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[AutonomousDatabaseBackupProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ACTIVE = "Active" + CREATING = "Creating" + DELETING = "Deleting" + FAILED = "Failed" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupProperties(_Model): + autonomous_database_ocid: Optional[str] + backup_destination: Optional[Union[str, BackupDestinationType]] + backup_type: Optional[Union[str, AutonomousDatabaseBackupType]] + database_size_in_tbs: Optional[float] + db_version: Optional[str] + display_name: Optional[str] + is_automatic: Optional[bool] + is_restorable: Optional[bool] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, AutonomousDatabaseBackupLifecycleState]] + ocid: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + retention_period_in_days: Optional[int] + size_in_tbs: Optional[float] + time_available_til: Optional[datetime] + time_ended: Optional[str] + time_started: Optional[str] + + @overload + def __init__( + self, + *, + display_name: Optional[str] = ..., + retention_period_in_days: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + FULL = "Full" + INCREMENTAL = "Incremental" + LONG_TERM = "LongTerm" + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupUpdate(_Model): + properties: Optional[AutonomousDatabaseBackupUpdateProperties] + + @overload + def __init__( + self, + *, + properties: Optional[AutonomousDatabaseBackupUpdateProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupUpdateProperties(_Model): + retention_period_in_days: Optional[int] + + @overload + def __init__( + self, + *, + retention_period_in_days: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseBaseProperties(_Model): + actual_used_data_storage_size_in_tbs: Optional[float] + admin_password: Optional[str] + allocated_storage_size_in_tbs: Optional[float] + apex_details: Optional[ApexDetailsType] + autonomous_database_id: Optional[str] + autonomous_maintenance_schedule_type: Optional[Union[str, AutonomousMaintenanceScheduleType]] + available_upgrade_versions: Optional[list[str]] + backup_destination: Optional[Union[str, BackupDestinationType]] + backup_retention_period_in_days: Optional[int] + character_set: Optional[str] + compute_count: Optional[float] + compute_model: Optional[Union[str, ComputeModel]] + connection_strings: Optional[ConnectionStringType] + connection_urls: Optional[ConnectionUrlType] + cpu_core_count: Optional[int] + customer_contacts: Optional[list[CustomerContact]] + data_base_type: str + data_safe_status: Optional[Union[str, DataSafeStatusType]] + data_storage_size_in_gbs: Optional[int] + data_storage_size_in_tbs: Optional[int] + database_edition: Optional[Union[str, DatabaseEditionType]] + db_version: Optional[str] + db_workload: Optional[Union[str, WorkloadType]] + display_name: Optional[str] + failed_data_recovery_in_seconds: Optional[int] + in_memory_area_in_gbs: Optional[int] + is_auto_scaling_enabled: Optional[bool] + is_auto_scaling_for_storage_enabled: Optional[bool] + is_local_data_guard_enabled: Optional[bool] + is_mtls_connection_required: Optional[bool] + is_preview: Optional[bool] + is_preview_version_with_service_terms_accepted: Optional[bool] + is_remote_data_guard_enabled: Optional[bool] + is_schedule_az_update_to_earliest: Optional[bool] + license_model: Optional[Union[str, LicenseModel]] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, AutonomousDatabaseLifecycleState]] + local_adg_auto_failover_max_data_loss_limit: Optional[int] + local_disaster_recovery_type: Optional[Union[str, DisasterRecoveryType]] + local_standby_db: Optional[AutonomousDatabaseStandbySummary] + long_term_backup_schedule: Optional[LongTermBackUpScheduleDetails] + memory_per_oracle_compute_unit_in_gbs: Optional[int] + ncharacter_set: Optional[str] + network_anchor_id: Optional[str] + next_long_term_backup_time_stamp: Optional[datetime] + oci_url: Optional[str] + ocid: Optional[str] + open_mode: Optional[Union[str, OpenModeType]] + operations_insights_status: Optional[Union[str, OperationsInsightsStatusType]] + peer_db_id: Optional[str] + peer_db_ids: Optional[list[str]] + permission_level: Optional[Union[str, PermissionLevelType]] + private_endpoint: Optional[str] + private_endpoint_ip: Optional[str] + private_endpoint_label: Optional[str] + provisionable_cpus: Optional[list[int]] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + remote_disaster_recovery_configuration: Optional[DisasterRecoveryConfigurationDetails] + resource_anchor_id: Optional[str] + role: Optional[Union[str, RoleType]] + scheduled_operations_list: Optional[list[ScheduledOperationsType]] + service_console_url: Optional[str] + sql_web_developer_url: Optional[str] + subnet_id: Optional[str] + supported_regions_to_clone_to: Optional[list[str]] + time_created: Optional[datetime] + time_data_guard_role_changed: Optional[str] + time_deletion_of_free_autonomous_database: Optional[str] + time_disaster_recovery_role_changed: Optional[datetime] + time_local_data_guard_enabled: Optional[str] + time_maintenance_begin: Optional[datetime] + time_maintenance_end: Optional[datetime] + time_of_last_failover: Optional[str] + time_of_last_refresh: Optional[str] + time_of_last_refresh_point: Optional[str] + time_of_last_switchover: Optional[str] + time_reclamation_of_free_autonomous_database: Optional[str] + time_scheduled_az_update: Optional[str] + used_data_storage_size_in_gbs: Optional[int] + used_data_storage_size_in_tbs: Optional[int] + vnet_id: Optional[str] + whitelisted_ips: Optional[list[str]] + zone: Optional[str] + + @overload + def __init__( + self, + *, + admin_password: Optional[str] = ..., + autonomous_database_id: Optional[str] = ..., + autonomous_maintenance_schedule_type: Optional[Union[str, AutonomousMaintenanceScheduleType]] = ..., + backup_destination: Optional[Union[str, BackupDestinationType]] = ..., + backup_retention_period_in_days: Optional[int] = ..., + character_set: Optional[str] = ..., + compute_count: Optional[float] = ..., + compute_model: Optional[Union[str, ComputeModel]] = ..., + cpu_core_count: Optional[int] = ..., + customer_contacts: Optional[list[CustomerContact]] = ..., + data_base_type: str, + data_storage_size_in_gbs: Optional[int] = ..., + data_storage_size_in_tbs: Optional[int] = ..., + database_edition: Optional[Union[str, DatabaseEditionType]] = ..., + db_version: Optional[str] = ..., + db_workload: Optional[Union[str, WorkloadType]] = ..., + display_name: Optional[str] = ..., + is_auto_scaling_enabled: Optional[bool] = ..., + is_auto_scaling_for_storage_enabled: Optional[bool] = ..., + is_local_data_guard_enabled: Optional[bool] = ..., + is_mtls_connection_required: Optional[bool] = ..., + is_preview_version_with_service_terms_accepted: Optional[bool] = ..., + is_schedule_az_update_to_earliest: Optional[bool] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + local_adg_auto_failover_max_data_loss_limit: Optional[int] = ..., + long_term_backup_schedule: Optional[LongTermBackUpScheduleDetails] = ..., + ncharacter_set: Optional[str] = ..., + network_anchor_id: Optional[str] = ..., + open_mode: Optional[Union[str, OpenModeType]] = ..., + peer_db_id: Optional[str] = ..., + permission_level: Optional[Union[str, PermissionLevelType]] = ..., + private_endpoint_ip: Optional[str] = ..., + private_endpoint_label: Optional[str] = ..., + resource_anchor_id: Optional[str] = ..., + role: Optional[Union[str, RoleType]] = ..., + scheduled_operations_list: Optional[list[ScheduledOperationsType]] = ..., + subnet_id: Optional[str] = ..., + time_scheduled_az_update: Optional[str] = ..., + vnet_id: Optional[str] = ..., + whitelisted_ips: Optional[list[str]] = ..., + zone: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseCharacterSet(ProxyResource): + id: str + name: str + properties: Optional[AutonomousDatabaseCharacterSetProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[AutonomousDatabaseCharacterSetProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseCharacterSetProperties(_Model): + character_set: str + + @overload + def __init__( + self, + *, + character_set: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseCloneProperties(AutonomousDatabaseBaseProperties, discriminator='Clone'): + actual_used_data_storage_size_in_tbs: float + admin_password: str + allocated_storage_size_in_tbs: float + apex_details: ApexDetailsType + autonomous_database_id: str + autonomous_maintenance_schedule_type: Union[str, AutonomousMaintenanceScheduleType] + available_upgrade_versions: list[str] + backup_destination: Union[str, BackupDestinationType] + backup_retention_period_in_days: int + character_set: str + clone_type: Union[str, CloneType] + compute_count: float + compute_model: Union[str, ComputeModel] + connection_strings: ConnectionStringType + connection_urls: ConnectionUrlType + cpu_core_count: int + customer_contacts: list[CustomerContact] + data_base_type: Literal[DataBaseType.CLONE] + data_safe_status: Union[str, DataSafeStatusType] + data_storage_size_in_gbs: int + data_storage_size_in_tbs: int + database_edition: Union[str, DatabaseEditionType] + db_version: str + db_workload: Union[str, WorkloadType] + display_name: str + failed_data_recovery_in_seconds: int + in_memory_area_in_gbs: int + is_auto_scaling_enabled: bool + is_auto_scaling_for_storage_enabled: bool + is_local_data_guard_enabled: bool + is_mtls_connection_required: bool + is_preview: bool + is_preview_version_with_service_terms_accepted: bool + is_reconnect_clone_enabled: Optional[bool] + is_refreshable_clone: Optional[bool] + is_remote_data_guard_enabled: bool + is_schedule_az_update_to_earliest: bool + license_model: Union[str, LicenseModel] + lifecycle_details: str + lifecycle_state: Union[str, AutonomousDatabaseLifecycleState] + local_adg_auto_failover_max_data_loss_limit: int + local_disaster_recovery_type: Union[str, DisasterRecoveryType] + local_standby_db: AutonomousDatabaseStandbySummary + long_term_backup_schedule: LongTermBackUpScheduleDetails + memory_per_oracle_compute_unit_in_gbs: int + ncharacter_set: str + network_anchor_id: str + next_long_term_backup_time_stamp: datetime + oci_url: str + ocid: str + open_mode: Union[str, OpenModeType] + operations_insights_status: Union[str, OperationsInsightsStatusType] + peer_db_id: str + peer_db_ids: list[str] + permission_level: Union[str, PermissionLevelType] + private_endpoint: str + private_endpoint_ip: str + private_endpoint_label: str + provisionable_cpus: list[int] + provisioning_state: Union[str, AzureResourceProvisioningState] + refreshable_model: Optional[Union[str, RefreshableModelType]] + refreshable_status: Optional[Union[str, RefreshableStatusType]] + remote_disaster_recovery_configuration: DisasterRecoveryConfigurationDetails + resource_anchor_id: str + role: Union[str, RoleType] + scheduled_operations_list: list[ScheduledOperationsType] + service_console_url: str + source: Optional[Union[str, SourceType]] + source_id: str + sql_web_developer_url: str + subnet_id: str + supported_regions_to_clone_to: list[str] + time_created: datetime + time_data_guard_role_changed: str + time_deletion_of_free_autonomous_database: str + time_disaster_recovery_role_changed: datetime + time_local_data_guard_enabled: str + time_maintenance_begin: datetime + time_maintenance_end: datetime + time_of_last_failover: str + time_of_last_refresh: str + time_of_last_refresh_point: str + time_of_last_switchover: str + time_reclamation_of_free_autonomous_database: str + time_scheduled_az_update: str + time_until_reconnect_clone_enabled: Optional[str] + used_data_storage_size_in_gbs: int + used_data_storage_size_in_tbs: int + vnet_id: str + whitelisted_ips: list[str] + zone: str + + @overload + def __init__( + self, + *, + admin_password: Optional[str] = ..., + autonomous_database_id: Optional[str] = ..., + autonomous_maintenance_schedule_type: Optional[Union[str, AutonomousMaintenanceScheduleType]] = ..., + backup_destination: Optional[Union[str, BackupDestinationType]] = ..., + backup_retention_period_in_days: Optional[int] = ..., + character_set: Optional[str] = ..., + clone_type: Union[str, CloneType], + compute_count: Optional[float] = ..., + compute_model: Optional[Union[str, ComputeModel]] = ..., + cpu_core_count: Optional[int] = ..., + customer_contacts: Optional[list[CustomerContact]] = ..., + data_storage_size_in_gbs: Optional[int] = ..., + data_storage_size_in_tbs: Optional[int] = ..., + database_edition: Optional[Union[str, DatabaseEditionType]] = ..., + db_version: Optional[str] = ..., + db_workload: Optional[Union[str, WorkloadType]] = ..., + display_name: Optional[str] = ..., + is_auto_scaling_enabled: Optional[bool] = ..., + is_auto_scaling_for_storage_enabled: Optional[bool] = ..., + is_local_data_guard_enabled: Optional[bool] = ..., + is_mtls_connection_required: Optional[bool] = ..., + is_preview_version_with_service_terms_accepted: Optional[bool] = ..., + is_schedule_az_update_to_earliest: Optional[bool] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + local_adg_auto_failover_max_data_loss_limit: Optional[int] = ..., + long_term_backup_schedule: Optional[LongTermBackUpScheduleDetails] = ..., + ncharacter_set: Optional[str] = ..., + network_anchor_id: Optional[str] = ..., + open_mode: Optional[Union[str, OpenModeType]] = ..., + peer_db_id: Optional[str] = ..., + permission_level: Optional[Union[str, PermissionLevelType]] = ..., + private_endpoint_ip: Optional[str] = ..., + private_endpoint_label: Optional[str] = ..., + refreshable_model: Optional[Union[str, RefreshableModelType]] = ..., + resource_anchor_id: Optional[str] = ..., + role: Optional[Union[str, RoleType]] = ..., + scheduled_operations_list: Optional[list[ScheduledOperationsType]] = ..., + source: Optional[Union[str, SourceType]] = ..., + source_id: str, + subnet_id: Optional[str] = ..., + time_scheduled_az_update: Optional[str] = ..., + time_until_reconnect_clone_enabled: Optional[str] = ..., + vnet_id: Optional[str] = ..., + whitelisted_ips: Optional[list[str]] = ..., + zone: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseCrossRegionDisasterRecoveryProperties(AutonomousDatabaseBaseProperties, discriminator='CrossRegionDisasterRecovery'): + actual_used_data_storage_size_in_tbs: float + admin_password: str + allocated_storage_size_in_tbs: float + apex_details: ApexDetailsType + autonomous_database_id: str + autonomous_maintenance_schedule_type: Union[str, AutonomousMaintenanceScheduleType] + available_upgrade_versions: list[str] + backup_destination: Union[str, BackupDestinationType] + backup_retention_period_in_days: int + character_set: str + compute_count: float + compute_model: Union[str, ComputeModel] + connection_strings: ConnectionStringType + connection_urls: ConnectionUrlType + cpu_core_count: int + customer_contacts: list[CustomerContact] + data_base_type: Literal[DataBaseType.CROSS_REGION_DISASTER_RECOVERY] + data_safe_status: Union[str, DataSafeStatusType] + data_storage_size_in_gbs: int + data_storage_size_in_tbs: int + database_edition: Union[str, DatabaseEditionType] + db_version: str + db_workload: Union[str, WorkloadType] + display_name: str + failed_data_recovery_in_seconds: int + in_memory_area_in_gbs: int + is_auto_scaling_enabled: bool + is_auto_scaling_for_storage_enabled: bool + is_local_data_guard_enabled: bool + is_mtls_connection_required: bool + is_preview: bool + is_preview_version_with_service_terms_accepted: bool + is_remote_data_guard_enabled: bool + is_replicate_automatic_backups: Optional[bool] + is_schedule_az_update_to_earliest: bool + license_model: Union[str, LicenseModel] + lifecycle_details: str + lifecycle_state: Union[str, AutonomousDatabaseLifecycleState] + local_adg_auto_failover_max_data_loss_limit: int + local_disaster_recovery_type: Union[str, DisasterRecoveryType] + local_standby_db: AutonomousDatabaseStandbySummary + long_term_backup_schedule: LongTermBackUpScheduleDetails + memory_per_oracle_compute_unit_in_gbs: int + ncharacter_set: str + network_anchor_id: str + next_long_term_backup_time_stamp: datetime + oci_url: str + ocid: str + open_mode: Union[str, OpenModeType] + operations_insights_status: Union[str, OperationsInsightsStatusType] + peer_db_id: str + peer_db_ids: list[str] + permission_level: Union[str, PermissionLevelType] + private_endpoint: str + private_endpoint_ip: str + private_endpoint_label: str + provisionable_cpus: list[int] + provisioning_state: Union[str, AzureResourceProvisioningState] + remote_disaster_recovery_configuration: DisasterRecoveryConfigurationDetails + remote_disaster_recovery_type: Union[str, DisasterRecoveryType] + resource_anchor_id: str + role: Union[str, RoleType] + scheduled_operations_list: list[ScheduledOperationsType] + service_console_url: str + source: Literal[SourceType.CROSS_REGION_DISASTER_RECOVERY] + source_id: str + source_location: Optional[str] + source_ocid: Optional[str] + sql_web_developer_url: str + subnet_id: str + supported_regions_to_clone_to: list[str] + time_created: datetime + time_data_guard_role_changed: str + time_deletion_of_free_autonomous_database: str + time_disaster_recovery_role_changed: datetime + time_local_data_guard_enabled: str + time_maintenance_begin: datetime + time_maintenance_end: datetime + time_of_last_failover: str + time_of_last_refresh: str + time_of_last_refresh_point: str + time_of_last_switchover: str + time_reclamation_of_free_autonomous_database: str + time_scheduled_az_update: str + used_data_storage_size_in_gbs: int + used_data_storage_size_in_tbs: int + vnet_id: str + whitelisted_ips: list[str] + zone: str + + @overload + def __init__( + self, + *, + admin_password: Optional[str] = ..., + autonomous_database_id: Optional[str] = ..., + autonomous_maintenance_schedule_type: Optional[Union[str, AutonomousMaintenanceScheduleType]] = ..., + backup_destination: Optional[Union[str, BackupDestinationType]] = ..., + backup_retention_period_in_days: Optional[int] = ..., + character_set: Optional[str] = ..., + compute_count: Optional[float] = ..., + compute_model: Optional[Union[str, ComputeModel]] = ..., + cpu_core_count: Optional[int] = ..., + customer_contacts: Optional[list[CustomerContact]] = ..., + data_storage_size_in_gbs: Optional[int] = ..., + data_storage_size_in_tbs: Optional[int] = ..., + database_edition: Optional[Union[str, DatabaseEditionType]] = ..., + db_version: Optional[str] = ..., + db_workload: Optional[Union[str, WorkloadType]] = ..., + display_name: Optional[str] = ..., + is_auto_scaling_enabled: Optional[bool] = ..., + is_auto_scaling_for_storage_enabled: Optional[bool] = ..., + is_local_data_guard_enabled: Optional[bool] = ..., + is_mtls_connection_required: Optional[bool] = ..., + is_preview_version_with_service_terms_accepted: Optional[bool] = ..., + is_replicate_automatic_backups: Optional[bool] = ..., + is_schedule_az_update_to_earliest: Optional[bool] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + local_adg_auto_failover_max_data_loss_limit: Optional[int] = ..., + long_term_backup_schedule: Optional[LongTermBackUpScheduleDetails] = ..., + ncharacter_set: Optional[str] = ..., + network_anchor_id: Optional[str] = ..., + open_mode: Optional[Union[str, OpenModeType]] = ..., + peer_db_id: Optional[str] = ..., + permission_level: Optional[Union[str, PermissionLevelType]] = ..., + private_endpoint_ip: Optional[str] = ..., + private_endpoint_label: Optional[str] = ..., + remote_disaster_recovery_type: Union[str, DisasterRecoveryType], + resource_anchor_id: Optional[str] = ..., + role: Optional[Union[str, RoleType]] = ..., + scheduled_operations_list: Optional[list[ScheduledOperationsType]] = ..., + source: Literal[SourceType.CROSS_REGION_DISASTER_RECOVERY], + source_id: str, + source_location: Optional[str] = ..., + source_ocid: Optional[str] = ..., + subnet_id: Optional[str] = ..., + time_scheduled_az_update: Optional[str] = ..., + vnet_id: Optional[str] = ..., + whitelisted_ips: Optional[list[str]] = ..., + zone: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseFromBackupTimestampProperties(AutonomousDatabaseBaseProperties, discriminator='CloneFromBackupTimestamp'): + actual_used_data_storage_size_in_tbs: float + admin_password: str + allocated_storage_size_in_tbs: float + apex_details: ApexDetailsType + autonomous_database_id: str + autonomous_maintenance_schedule_type: Union[str, AutonomousMaintenanceScheduleType] + available_upgrade_versions: list[str] + backup_destination: Union[str, BackupDestinationType] + backup_retention_period_in_days: int + character_set: str + clone_type: Union[str, CloneType] + compute_count: float + compute_model: Union[str, ComputeModel] + connection_strings: ConnectionStringType + connection_urls: ConnectionUrlType + cpu_core_count: int + customer_contacts: list[CustomerContact] + data_base_type: Literal[DataBaseType.CLONE_FROM_BACKUP_TIMESTAMP] + data_safe_status: Union[str, DataSafeStatusType] + data_storage_size_in_gbs: int + data_storage_size_in_tbs: int + database_edition: Union[str, DatabaseEditionType] + db_version: str + db_workload: Union[str, WorkloadType] + display_name: str + failed_data_recovery_in_seconds: int + in_memory_area_in_gbs: int + is_auto_scaling_enabled: bool + is_auto_scaling_for_storage_enabled: bool + is_local_data_guard_enabled: bool + is_mtls_connection_required: bool + is_preview: bool + is_preview_version_with_service_terms_accepted: bool + is_remote_data_guard_enabled: bool + is_schedule_az_update_to_earliest: bool + license_model: Union[str, LicenseModel] + lifecycle_details: str + lifecycle_state: Union[str, AutonomousDatabaseLifecycleState] + local_adg_auto_failover_max_data_loss_limit: int + local_disaster_recovery_type: Union[str, DisasterRecoveryType] + local_standby_db: AutonomousDatabaseStandbySummary + long_term_backup_schedule: LongTermBackUpScheduleDetails + memory_per_oracle_compute_unit_in_gbs: int + ncharacter_set: str + network_anchor_id: str + next_long_term_backup_time_stamp: datetime + oci_url: str + ocid: str + open_mode: Union[str, OpenModeType] + operations_insights_status: Union[str, OperationsInsightsStatusType] + peer_db_id: str + peer_db_ids: list[str] + permission_level: Union[str, PermissionLevelType] + private_endpoint: str + private_endpoint_ip: str + private_endpoint_label: str + provisionable_cpus: list[int] + provisioning_state: Union[str, AzureResourceProvisioningState] + remote_disaster_recovery_configuration: DisasterRecoveryConfigurationDetails + resource_anchor_id: str + role: Union[str, RoleType] + scheduled_operations_list: list[ScheduledOperationsType] + service_console_url: str + source: Literal[SourceType.BACKUP_FROM_TIMESTAMP] + source_id: str + sql_web_developer_url: str + subnet_id: str + supported_regions_to_clone_to: list[str] + time_created: datetime + time_data_guard_role_changed: str + time_deletion_of_free_autonomous_database: str + time_disaster_recovery_role_changed: datetime + time_local_data_guard_enabled: str + time_maintenance_begin: datetime + time_maintenance_end: datetime + time_of_last_failover: str + time_of_last_refresh: str + time_of_last_refresh_point: str + time_of_last_switchover: str + time_reclamation_of_free_autonomous_database: str + time_scheduled_az_update: str + timestamp: Optional[datetime] + use_latest_available_backup_time_stamp: Optional[bool] + used_data_storage_size_in_gbs: int + used_data_storage_size_in_tbs: int + vnet_id: str + whitelisted_ips: list[str] + zone: str + + @overload + def __init__( + self, + *, + admin_password: Optional[str] = ..., + autonomous_database_id: Optional[str] = ..., + autonomous_maintenance_schedule_type: Optional[Union[str, AutonomousMaintenanceScheduleType]] = ..., + backup_destination: Optional[Union[str, BackupDestinationType]] = ..., + backup_retention_period_in_days: Optional[int] = ..., + character_set: Optional[str] = ..., + clone_type: Union[str, CloneType], + compute_count: Optional[float] = ..., + compute_model: Optional[Union[str, ComputeModel]] = ..., + cpu_core_count: Optional[int] = ..., + customer_contacts: Optional[list[CustomerContact]] = ..., + data_storage_size_in_gbs: Optional[int] = ..., + data_storage_size_in_tbs: Optional[int] = ..., + database_edition: Optional[Union[str, DatabaseEditionType]] = ..., + db_version: Optional[str] = ..., + db_workload: Optional[Union[str, WorkloadType]] = ..., + display_name: Optional[str] = ..., + is_auto_scaling_enabled: Optional[bool] = ..., + is_auto_scaling_for_storage_enabled: Optional[bool] = ..., + is_local_data_guard_enabled: Optional[bool] = ..., + is_mtls_connection_required: Optional[bool] = ..., + is_preview_version_with_service_terms_accepted: Optional[bool] = ..., + is_schedule_az_update_to_earliest: Optional[bool] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + local_adg_auto_failover_max_data_loss_limit: Optional[int] = ..., + long_term_backup_schedule: Optional[LongTermBackUpScheduleDetails] = ..., + ncharacter_set: Optional[str] = ..., + network_anchor_id: Optional[str] = ..., + open_mode: Optional[Union[str, OpenModeType]] = ..., + peer_db_id: Optional[str] = ..., + permission_level: Optional[Union[str, PermissionLevelType]] = ..., + private_endpoint_ip: Optional[str] = ..., + private_endpoint_label: Optional[str] = ..., + resource_anchor_id: Optional[str] = ..., + role: Optional[Union[str, RoleType]] = ..., + scheduled_operations_list: Optional[list[ScheduledOperationsType]] = ..., + source: Literal[SourceType.BACKUP_FROM_TIMESTAMP], + source_id: str, + subnet_id: Optional[str] = ..., + time_scheduled_az_update: Optional[str] = ..., + timestamp: Optional[datetime] = ..., + use_latest_available_backup_time_stamp: Optional[bool] = ..., + vnet_id: Optional[str] = ..., + whitelisted_ips: Optional[list[str]] = ..., + zone: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseLifecycleAction(_Model): + action: Union[str, AutonomousDatabaseLifecycleActionEnum] + + @overload + def __init__( + self, + *, + action: Union[str, AutonomousDatabaseLifecycleActionEnum] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseLifecycleActionEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): + RESTART = "Restart" + START = "Start" + STOP = "Stop" + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + AVAILABLE_NEEDS_ATTENTION = "AvailableNeedsAttention" + BACKUP_IN_PROGRESS = "BackupInProgress" + INACCESSIBLE = "Inaccessible" + MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" + PROVISIONING = "Provisioning" + RECREATING = "Recreating" + RESTARTING = "Restarting" + RESTORE_FAILED = "RestoreFailed" + RESTORE_IN_PROGRESS = "RestoreInProgress" + ROLE_CHANGE_IN_PROGRESS = "RoleChangeInProgress" + SCALE_IN_PROGRESS = "ScaleInProgress" + STANDBY = "Standby" + STARTING = "Starting" + STOPPED = "Stopped" + STOPPING = "Stopping" + TERMINATED = "Terminated" + TERMINATING = "Terminating" + UNAVAILABLE = "Unavailable" + UPDATING = "Updating" + UPGRADING = "Upgrading" + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseNationalCharacterSet(ProxyResource): + id: str + name: str + properties: Optional[AutonomousDatabaseNationalCharacterSetProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[AutonomousDatabaseNationalCharacterSetProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseNationalCharacterSetProperties(_Model): + character_set: str + + @overload + def __init__( + self, + *, + character_set: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseProperties(AutonomousDatabaseBaseProperties, discriminator='Regular'): + actual_used_data_storage_size_in_tbs: float + admin_password: str + allocated_storage_size_in_tbs: float + apex_details: ApexDetailsType + autonomous_database_id: str + autonomous_maintenance_schedule_type: Union[str, AutonomousMaintenanceScheduleType] + available_upgrade_versions: list[str] + backup_destination: Union[str, BackupDestinationType] + backup_retention_period_in_days: int + character_set: str + compute_count: float + compute_model: Union[str, ComputeModel] + connection_strings: ConnectionStringType + connection_urls: ConnectionUrlType + cpu_core_count: int + customer_contacts: list[CustomerContact] + data_base_type: Literal[DataBaseType.REGULAR] + data_safe_status: Union[str, DataSafeStatusType] + data_storage_size_in_gbs: int + data_storage_size_in_tbs: int + database_edition: Union[str, DatabaseEditionType] + db_version: str + db_workload: Union[str, WorkloadType] + display_name: str + failed_data_recovery_in_seconds: int + in_memory_area_in_gbs: int + is_auto_scaling_enabled: bool + is_auto_scaling_for_storage_enabled: bool + is_local_data_guard_enabled: bool + is_mtls_connection_required: bool + is_preview: bool + is_preview_version_with_service_terms_accepted: bool + is_remote_data_guard_enabled: bool + is_schedule_az_update_to_earliest: bool + license_model: Union[str, LicenseModel] + lifecycle_details: str + lifecycle_state: Union[str, AutonomousDatabaseLifecycleState] + local_adg_auto_failover_max_data_loss_limit: int + local_disaster_recovery_type: Union[str, DisasterRecoveryType] + local_standby_db: AutonomousDatabaseStandbySummary + long_term_backup_schedule: LongTermBackUpScheduleDetails + memory_per_oracle_compute_unit_in_gbs: int + ncharacter_set: str + network_anchor_id: str + next_long_term_backup_time_stamp: datetime + oci_url: str + ocid: str + open_mode: Union[str, OpenModeType] + operations_insights_status: Union[str, OperationsInsightsStatusType] + peer_db_id: str + peer_db_ids: list[str] + permission_level: Union[str, PermissionLevelType] + private_endpoint: str + private_endpoint_ip: str + private_endpoint_label: str + provisionable_cpus: list[int] + provisioning_state: Union[str, AzureResourceProvisioningState] + remote_disaster_recovery_configuration: DisasterRecoveryConfigurationDetails + resource_anchor_id: str + role: Union[str, RoleType] + scheduled_operations_list: list[ScheduledOperationsType] + service_console_url: str + sql_web_developer_url: str + subnet_id: str + supported_regions_to_clone_to: list[str] + time_created: datetime + time_data_guard_role_changed: str + time_deletion_of_free_autonomous_database: str + time_disaster_recovery_role_changed: datetime + time_local_data_guard_enabled: str + time_maintenance_begin: datetime + time_maintenance_end: datetime + time_of_last_failover: str + time_of_last_refresh: str + time_of_last_refresh_point: str + time_of_last_switchover: str + time_reclamation_of_free_autonomous_database: str + time_scheduled_az_update: str + used_data_storage_size_in_gbs: int + used_data_storage_size_in_tbs: int + vnet_id: str + whitelisted_ips: list[str] + zone: str + + @overload + def __init__( + self, + *, + admin_password: Optional[str] = ..., + autonomous_database_id: Optional[str] = ..., + autonomous_maintenance_schedule_type: Optional[Union[str, AutonomousMaintenanceScheduleType]] = ..., + backup_destination: Optional[Union[str, BackupDestinationType]] = ..., + backup_retention_period_in_days: Optional[int] = ..., + character_set: Optional[str] = ..., + compute_count: Optional[float] = ..., + compute_model: Optional[Union[str, ComputeModel]] = ..., + cpu_core_count: Optional[int] = ..., + customer_contacts: Optional[list[CustomerContact]] = ..., + data_storage_size_in_gbs: Optional[int] = ..., + data_storage_size_in_tbs: Optional[int] = ..., + database_edition: Optional[Union[str, DatabaseEditionType]] = ..., + db_version: Optional[str] = ..., + db_workload: Optional[Union[str, WorkloadType]] = ..., + display_name: Optional[str] = ..., + is_auto_scaling_enabled: Optional[bool] = ..., + is_auto_scaling_for_storage_enabled: Optional[bool] = ..., + is_local_data_guard_enabled: Optional[bool] = ..., + is_mtls_connection_required: Optional[bool] = ..., + is_preview_version_with_service_terms_accepted: Optional[bool] = ..., + is_schedule_az_update_to_earliest: Optional[bool] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + local_adg_auto_failover_max_data_loss_limit: Optional[int] = ..., + long_term_backup_schedule: Optional[LongTermBackUpScheduleDetails] = ..., + ncharacter_set: Optional[str] = ..., + network_anchor_id: Optional[str] = ..., + open_mode: Optional[Union[str, OpenModeType]] = ..., + peer_db_id: Optional[str] = ..., + permission_level: Optional[Union[str, PermissionLevelType]] = ..., + private_endpoint_ip: Optional[str] = ..., + private_endpoint_label: Optional[str] = ..., + resource_anchor_id: Optional[str] = ..., + role: Optional[Union[str, RoleType]] = ..., + scheduled_operations_list: Optional[list[ScheduledOperationsType]] = ..., + subnet_id: Optional[str] = ..., + time_scheduled_az_update: Optional[str] = ..., + vnet_id: Optional[str] = ..., + whitelisted_ips: Optional[list[str]] = ..., + zone: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseStandbySummary(_Model): + lag_time_in_seconds: Optional[int] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, AutonomousDatabaseLifecycleState]] + time_data_guard_role_changed: Optional[str] + time_disaster_recovery_role_changed: Optional[str] + + @overload + def __init__( + self, + *, + lag_time_in_seconds: Optional[int] = ..., + lifecycle_details: Optional[str] = ..., + lifecycle_state: Optional[Union[str, AutonomousDatabaseLifecycleState]] = ..., + time_data_guard_role_changed: Optional[str] = ..., + time_disaster_recovery_role_changed: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseUpdate(_Model): + properties: Optional[AutonomousDatabaseUpdateProperties] + tags: Optional[dict[str, str]] + + @overload + def __init__( + self, + *, + properties: Optional[AutonomousDatabaseUpdateProperties] = ..., + tags: Optional[dict[str, str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseUpdateProperties(_Model): + admin_password: Optional[str] + autonomous_maintenance_schedule_type: Optional[Union[str, AutonomousMaintenanceScheduleType]] + backup_retention_period_in_days: Optional[int] + compute_count: Optional[float] + cpu_core_count: Optional[int] + customer_contacts: Optional[list[CustomerContact]] + data_storage_size_in_gbs: Optional[int] + data_storage_size_in_tbs: Optional[int] + database_edition: Optional[Union[str, DatabaseEditionType]] + display_name: Optional[str] + is_auto_scaling_enabled: Optional[bool] + is_auto_scaling_for_storage_enabled: Optional[bool] + is_local_data_guard_enabled: Optional[bool] + is_mtls_connection_required: Optional[bool] + license_model: Optional[Union[str, LicenseModel]] + local_adg_auto_failover_max_data_loss_limit: Optional[int] + long_term_backup_schedule: Optional[LongTermBackUpScheduleDetails] + open_mode: Optional[Union[str, OpenModeType]] + peer_db_id: Optional[str] + permission_level: Optional[Union[str, PermissionLevelType]] + role: Optional[Union[str, RoleType]] + scheduled_operations_list: Optional[list[ScheduledOperationsTypeUpdate]] + whitelisted_ips: Optional[list[str]] + + @overload + def __init__( + self, + *, + admin_password: Optional[str] = ..., + autonomous_maintenance_schedule_type: Optional[Union[str, AutonomousMaintenanceScheduleType]] = ..., + backup_retention_period_in_days: Optional[int] = ..., + compute_count: Optional[float] = ..., + cpu_core_count: Optional[int] = ..., + customer_contacts: Optional[list[CustomerContact]] = ..., + data_storage_size_in_gbs: Optional[int] = ..., + data_storage_size_in_tbs: Optional[int] = ..., + database_edition: Optional[Union[str, DatabaseEditionType]] = ..., + display_name: Optional[str] = ..., + is_auto_scaling_enabled: Optional[bool] = ..., + is_auto_scaling_for_storage_enabled: Optional[bool] = ..., + is_local_data_guard_enabled: Optional[bool] = ..., + is_mtls_connection_required: Optional[bool] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + local_adg_auto_failover_max_data_loss_limit: Optional[int] = ..., + long_term_backup_schedule: Optional[LongTermBackUpScheduleDetails] = ..., + open_mode: Optional[Union[str, OpenModeType]] = ..., + peer_db_id: Optional[str] = ..., + permission_level: Optional[Union[str, PermissionLevelType]] = ..., + role: Optional[Union[str, RoleType]] = ..., + scheduled_operations_list: Optional[list[ScheduledOperationsTypeUpdate]] = ..., + whitelisted_ips: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile(_Model): + wallet_files: str + + @overload + def __init__( + self, + *, + wallet_files: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDbVersion(ProxyResource): + id: str + name: str + properties: Optional[AutonomousDbVersionProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[AutonomousDbVersionProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousDbVersionProperties(_Model): + db_workload: Optional[Union[str, WorkloadType]] + is_default_for_free: Optional[bool] + is_default_for_paid: Optional[bool] + is_free_tier_enabled: Optional[bool] + is_paid_enabled: Optional[bool] + version: str + + @overload + def __init__( + self, + *, + db_workload: Optional[Union[str, WorkloadType]] = ..., + is_default_for_free: Optional[bool] = ..., + is_default_for_paid: Optional[bool] = ..., + is_free_tier_enabled: Optional[bool] = ..., + is_paid_enabled: Optional[bool] = ..., + version: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.AutonomousMaintenanceScheduleType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + EARLY = "Early" + REGULAR = "Regular" + + + class azure.mgmt.oracledatabase.models.AzureResourceProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + CANCELED = "Canceled" + FAILED = "Failed" + PROVISIONING = "Provisioning" + SUCCEEDED = "Succeeded" + + + class azure.mgmt.oracledatabase.models.AzureSubscriptions(_Model): + azure_subscription_ids: list[str] + + @overload + def __init__( + self, + *, + azure_subscription_ids: list[str] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.BackupDestinationType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AZURE = "AZURE" + OCI = "OCI" + + + class azure.mgmt.oracledatabase.models.BackupScheduleType(_Model): + bucket_name: Optional[str] + compartment_id: Optional[str] + frequency_backup_scheduled: Optional[Union[str, FrequencyType]] + is_metadata_only: Optional[bool] + namespace_name: Optional[str] + time_backup_scheduled: Optional[str] + + @overload + def __init__( + self, + *, + bucket_name: Optional[str] = ..., + compartment_id: Optional[str] = ..., + frequency_backup_scheduled: Optional[Union[str, FrequencyType]] = ..., + is_metadata_only: Optional[bool] = ..., + namespace_name: Optional[str] = ..., + time_backup_scheduled: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.BaseDbSystemShapes(str, Enum, metaclass=CaseInsensitiveEnumMeta): + VM_BASE_DBX86 = "VM.BaseDB.x86" + VM_STANDARD_X86 = "VM.Standard.x86" + + + class azure.mgmt.oracledatabase.models.CategoryType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + DATA_REPLICATION = "DataReplication" + DATA_TRANSFORMS = "DataTransforms" + STREAM_ANALYTICS = "StreamAnalytics" + + + class azure.mgmt.oracledatabase.models.CloneType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + FULL = "Full" + METADATA = "Metadata" + + + class azure.mgmt.oracledatabase.models.CloudAccountDetails(_Model): + cloud_account_home_region: Optional[str] + cloud_account_name: Optional[str] + + + class azure.mgmt.oracledatabase.models.CloudAccountProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + PENDING = "Pending" + PROVISIONING = "Provisioning" + + + class azure.mgmt.oracledatabase.models.CloudExadataInfrastructure(TrackedResource): + id: str + location: str + name: str + properties: Optional[CloudExadataInfrastructureProperties] + system_data: SystemData + tags: dict[str, str] + type: str + zones: list[str] + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[CloudExadataInfrastructureProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: list[str] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.CloudExadataInfrastructureLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + FAILED = "Failed" + MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" + PROVISIONING = "Provisioning" + TERMINATED = "Terminated" + TERMINATING = "Terminating" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.CloudExadataInfrastructureProperties(_Model): + activated_storage_count: Optional[int] + additional_storage_count: Optional[int] + available_storage_size_in_gbs: Optional[int] + compute_count: Optional[int] + compute_model: Optional[Union[str, ComputeModel]] + cpu_count: Optional[int] + customer_contacts: Optional[list[CustomerContact]] + data_storage_size_in_tbs: Optional[float] + database_server_type: Optional[str] + db_node_storage_size_in_gbs: Optional[int] + db_server_version: Optional[str] + defined_file_system_configuration: Optional[list[DefinedFileSystemConfiguration]] + display_name: str + estimated_patching_time: Optional[EstimatedPatchingTime] + exascale_config: Optional[ExascaleConfigDetails] + last_maintenance_run_id: Optional[str] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, CloudExadataInfrastructureLifecycleState]] + maintenance_window: Optional[MaintenanceWindow] + max_cpu_count: Optional[int] + max_data_storage_in_tbs: Optional[float] + max_db_node_storage_size_in_gbs: Optional[int] + max_memory_in_gbs: Optional[int] + memory_size_in_gbs: Optional[int] + monthly_db_server_version: Optional[str] + monthly_storage_server_version: Optional[str] + next_maintenance_run_id: Optional[str] + oci_url: Optional[str] + ocid: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + proximity_placement_group: Optional[ProximityPlacementGroup] + resource_anchor_id: Optional[str] + shape: str + storage_count: Optional[int] + storage_server_type: Optional[str] + storage_server_version: Optional[str] + time_created: Optional[str] + total_storage_size_in_gbs: Optional[int] + + @overload + def __init__( + self, + *, + compute_count: Optional[int] = ..., + customer_contacts: Optional[list[CustomerContact]] = ..., + database_server_type: Optional[str] = ..., + display_name: str, + maintenance_window: Optional[MaintenanceWindow] = ..., + proximity_placement_group: Optional[ProximityPlacementGroup] = ..., + resource_anchor_id: Optional[str] = ..., + shape: str, + storage_count: Optional[int] = ..., + storage_server_type: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.CloudExadataInfrastructureUpdate(_Model): + properties: Optional[CloudExadataInfrastructureUpdateProperties] + tags: Optional[dict[str, str]] + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + properties: Optional[CloudExadataInfrastructureUpdateProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.CloudExadataInfrastructureUpdateProperties(_Model): + compute_count: Optional[int] + customer_contacts: Optional[list[CustomerContact]] + display_name: Optional[str] + maintenance_window: Optional[MaintenanceWindow] + storage_count: Optional[int] + + @overload + def __init__( + self, + *, + compute_count: Optional[int] = ..., + customer_contacts: Optional[list[CustomerContact]] = ..., + display_name: Optional[str] = ..., + maintenance_window: Optional[MaintenanceWindow] = ..., + storage_count: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.CloudVmCluster(TrackedResource): + id: str + location: str + name: str + properties: Optional[CloudVmClusterProperties] + system_data: SystemData + tags: dict[str, str] + type: str + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[CloudVmClusterProperties] = ..., + tags: Optional[dict[str, str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.CloudVmClusterLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + FAILED = "Failed" + MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" + PROVISIONING = "Provisioning" + TERMINATED = "Terminated" + TERMINATING = "Terminating" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.CloudVmClusterProperties(_Model): + backup_subnet_cidr: Optional[str] + cloud_exadata_infrastructure_id: str + cluster_name: Optional[str] + compartment_id: Optional[str] + compute_model: Optional[Union[str, ComputeModel]] + compute_nodes: Optional[list[str]] + cpu_core_count: int + data_collection_options: Optional[DataCollectionOptions] + data_storage_percentage: Optional[int] + data_storage_size_in_tbs: Optional[float] + db_node_storage_size_in_gbs: Optional[int] + db_servers: Optional[list[str]] + disk_redundancy: Optional[Union[str, DiskRedundancy]] + display_name: str + domain: Optional[str] + exascale_db_storage_vault_id: Optional[str] + file_system_configuration_details: Optional[list[FileSystemConfigurationDetails]] + gi_version: str + hostname_v2: str + iorm_config_cache: Optional[ExadataIormConfig] + is_accelerated_network_enabled: Optional[bool] + is_local_backup_enabled: Optional[bool] + is_sparse_diskgroup_enabled: Optional[bool] + last_update_history_entry_id: Optional[str] + license_model: Optional[Union[str, LicenseModel]] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, CloudVmClusterLifecycleState]] + listener_port: Optional[int] + memory_size_in_gbs: Optional[int] + network_anchor_id: Optional[str] + node_count: Optional[int] + nsg_cidrs: Optional[list[NsgCidr]] + nsg_url: Optional[str] + oci_url: Optional[str] + ocid: Optional[str] + ocpu_count: Optional[float] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + proximity_placement_group: Optional[ProximityPlacementGroup] + reco_storage_percentage: Optional[int] + resource_anchor_id: Optional[str] + scan_dns_name_v2: Optional[str] + scan_dns_record_id: Optional[str] + scan_ip_ids: Optional[list[str]] + scan_listener_port_tcp: Optional[int] + scan_listener_port_tcp_ssl: Optional[int] + shape: Optional[str] + sparse_storage_percentage: Optional[int] + ssh_public_keys: list[str] + storage_management_type: Optional[Union[str, ExadataVmClusterStorageManagementType]] + storage_size_in_gbs: Optional[int] + subnet_id: str + subnet_ocid: Optional[str] + system_version: Optional[str] + time_created: Optional[datetime] + time_zone: Optional[str] + vip_ids: Optional[list[str]] + vnet_id: str + zone_id: Optional[str] + + @overload + def __init__( + self, + *, + backup_subnet_cidr: Optional[str] = ..., + cloud_exadata_infrastructure_id: str, + cluster_name: Optional[str] = ..., + compute_nodes: Optional[list[str]] = ..., + cpu_core_count: int, + data_collection_options: Optional[DataCollectionOptions] = ..., + data_storage_percentage: Optional[int] = ..., + data_storage_size_in_tbs: Optional[float] = ..., + db_node_storage_size_in_gbs: Optional[int] = ..., + db_servers: Optional[list[str]] = ..., + display_name: str, + domain: Optional[str] = ..., + exascale_db_storage_vault_id: Optional[str] = ..., + file_system_configuration_details: Optional[list[FileSystemConfigurationDetails]] = ..., + gi_version: str, + hostname_v2: str, + is_accelerated_network_enabled: Optional[bool] = ..., + is_local_backup_enabled: Optional[bool] = ..., + is_sparse_diskgroup_enabled: Optional[bool] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + memory_size_in_gbs: Optional[int] = ..., + network_anchor_id: Optional[str] = ..., + nsg_cidrs: Optional[list[NsgCidr]] = ..., + ocpu_count: Optional[float] = ..., + proximity_placement_group: Optional[ProximityPlacementGroup] = ..., + reco_storage_percentage: Optional[int] = ..., + resource_anchor_id: Optional[str] = ..., + scan_listener_port_tcp: Optional[int] = ..., + scan_listener_port_tcp_ssl: Optional[int] = ..., + sparse_storage_percentage: Optional[int] = ..., + ssh_public_keys: list[str], + storage_size_in_gbs: Optional[int] = ..., + subnet_id: str, + system_version: Optional[str] = ..., + time_zone: Optional[str] = ..., + vnet_id: str, + zone_id: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.CloudVmClusterUpdate(_Model): + properties: Optional[CloudVmClusterUpdateProperties] + tags: Optional[dict[str, str]] + + @overload + def __init__( + self, + *, + properties: Optional[CloudVmClusterUpdateProperties] = ..., + tags: Optional[dict[str, str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.CloudVmClusterUpdateProperties(_Model): + compute_nodes: Optional[list[str]] + cpu_core_count: Optional[int] + data_collection_options: Optional[DataCollectionOptions] + data_storage_size_in_tbs: Optional[float] + db_node_storage_size_in_gbs: Optional[int] + display_name: Optional[str] + file_system_configuration_details: Optional[list[FileSystemConfigurationDetails]] + is_accelerated_network_enabled: Optional[bool] + license_model: Optional[Union[str, LicenseModel]] + memory_size_in_gbs: Optional[int] + ocpu_count: Optional[float] + ssh_public_keys: Optional[list[str]] + storage_size_in_gbs: Optional[int] + + @overload + def __init__( + self, + *, + compute_nodes: Optional[list[str]] = ..., + cpu_core_count: Optional[int] = ..., + data_collection_options: Optional[DataCollectionOptions] = ..., + data_storage_size_in_tbs: Optional[float] = ..., + db_node_storage_size_in_gbs: Optional[int] = ..., + display_name: Optional[str] = ..., + file_system_configuration_details: Optional[list[FileSystemConfigurationDetails]] = ..., + is_accelerated_network_enabled: Optional[bool] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + memory_size_in_gbs: Optional[int] = ..., + ocpu_count: Optional[float] = ..., + ssh_public_keys: Optional[list[str]] = ..., + storage_size_in_gbs: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ComputeModel(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ECPU = "ECPU" + OCPU = "OCPU" + + + class azure.mgmt.oracledatabase.models.ConfigureExascaleCloudExadataInfrastructureDetails(_Model): + total_storage_in_gbs: int + + @overload + def __init__( + self, + *, + total_storage_in_gbs: int + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ConnectionBaseProperties(_Model): + compartment_id: Optional[str] + connection_type: str + display_name: str + does_use_secret_ids: Optional[bool] + key_id: Optional[str] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, ConnectionLifecycleState]] + network_anchor_id: str + ocid: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + resource_anchor_id: str + routing_method: Optional[Union[str, RoutingMethod]] + time_created: Optional[str] + time_updated: Optional[str] + vault_id: Optional[str] + + @overload + def __init__( + self, + *, + connection_type: str, + display_name: str, + does_use_secret_ids: Optional[bool] = ..., + key_id: Optional[str] = ..., + network_anchor_id: str, + resource_anchor_id: str, + routing_method: Optional[Union[str, RoutingMethod]] = ..., + vault_id: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ConnectionLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ACTIVE = "ACTIVE" + CREATING = "CREATING" + DELETED = "DELETED" + DELETING = "DELETING" + FAILED = "FAILED" + UPDATING = "UPDATING" + + + class azure.mgmt.oracledatabase.models.ConnectionStringType(_Model): + all_connection_strings: Optional[AllConnectionStringType] + dedicated: Optional[str] + high: Optional[str] + low: Optional[str] + medium: Optional[str] + profiles: Optional[list[ProfileType]] + + @overload + def __init__( + self, + *, + all_connection_strings: Optional[AllConnectionStringType] = ..., + dedicated: Optional[str] = ..., + high: Optional[str] = ..., + low: Optional[str] = ..., + medium: Optional[str] = ..., + profiles: Optional[list[ProfileType]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ConnectionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AMAZON_KINESIS = "AMAZON_KINESIS" + AMAZON_REDSHIFT = "AMAZON_REDSHIFT" + AMAZON_S3 = "AMAZON_S3" + AZURE_DATA_LAKE_STORAGE = "AZURE_DATA_LAKE_STORAGE" + AZURE_SYNAPSE_ANALYTICS = "AZURE_SYNAPSE_ANALYTICS" + DATABRICKS = "DATABRICKS" + DB2_CONNECTION = "DB2" + ELASTICSEARCH = "ELASTICSEARCH" + GENERIC = "GENERIC" + GOLDEN_GATE = "GOLDENGATE" + GOOGLE_BIG_QUERY = "GOOGLE_BIGQUERY" + GOOGLE_CLOUD_STORAGE = "GOOGLE_CLOUD_STORAGE" + GOOGLE_PUB_SUB = "GOOGLE_PUBSUB" + HDFS = "HDFS" + ICEBERG = "ICEBERG" + JAVA_MESSAGE_SERVICE = "JAVA_MESSAGE_SERVICE" + KAFKA = "KAFKA" + KAFKA_SCHEMA_REGISTRY = "KAFKA_SCHEMA_REGISTRY" + MICROSOFT_FABRIC = "MICROSOFT_FABRIC" + MICROSOFT_SQL_SERVER = "MICROSOFT_SQLSERVER" + MONGO_DB_CONNECTION = "MONGODB" + MY_SQL = "MYSQL" + OCI_OBJECT_STORAGE = "OCI_OBJECT_STORAGE" + ORACLE = "ORACLE" + ORACLE_NO_SQL = "ORACLE_NOSQL" + POSTGRE_SQL = "POSTGRESQL" + REDIS = "REDIS" + SNOWFLAKE = "SNOWFLAKE" + + + class azure.mgmt.oracledatabase.models.ConnectionUrlType(_Model): + apex_url: Optional[str] + database_transforms_url: Optional[str] + graph_studio_url: Optional[str] + machine_learning_notebook_url: Optional[str] + mongo_db_url: Optional[str] + ords_url: Optional[str] + sql_dev_web_url: Optional[str] + + @overload + def __init__( + self, + *, + apex_url: Optional[str] = ..., + database_transforms_url: Optional[str] = ..., + graph_studio_url: Optional[str] = ..., + machine_learning_notebook_url: Optional[str] = ..., + mongo_db_url: Optional[str] = ..., + ords_url: Optional[str] = ..., + sql_dev_web_url: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ConsumerGroup(str, Enum, metaclass=CaseInsensitiveEnumMeta): + HIGH = "High" + LOW = "Low" + MEDIUM = "Medium" + TP = "Tp" + TPURGENT = "Tpurgent" + + + class azure.mgmt.oracledatabase.models.CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + APPLICATION = "Application" + KEY = "Key" + MANAGED_IDENTITY = "ManagedIdentity" + USER = "User" + + + class azure.mgmt.oracledatabase.models.CredentialType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + GOLDEN_GATE = "GoldenGate" + IAM = "IAM" + + + class azure.mgmt.oracledatabase.models.CustomerContact(_Model): + email: str + + @overload + def __init__( + self, + *, + email: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DataBaseType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + CLONE = "Clone" + CLONE_FROM_BACKUP_TIMESTAMP = "CloneFromBackupTimestamp" + CROSS_REGION_DISASTER_RECOVERY = "CrossRegionDisasterRecovery" + REGULAR = "Regular" + + + class azure.mgmt.oracledatabase.models.DataCollectionOptions(_Model): + is_diagnostics_events_enabled: Optional[bool] + is_health_monitoring_enabled: Optional[bool] + is_incident_logs_enabled: Optional[bool] + + @overload + def __init__( + self, + *, + is_diagnostics_events_enabled: Optional[bool] = ..., + is_health_monitoring_enabled: Optional[bool] = ..., + is_incident_logs_enabled: Optional[bool] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DataSafeStatusType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + DEREGISTERING = "Deregistering" + FAILED = "Failed" + NOT_REGISTERED = "NotRegistered" + REGISTERED = "Registered" + REGISTERING = "Registering" + + + class azure.mgmt.oracledatabase.models.DatabaseEdition(ProxyResource): + id: str + name: str + properties: Optional[DatabaseEditionProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DatabaseEditionProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DatabaseEditionProperties(_Model): + database_edition: Union[str, DbSystemDatabaseEditionType] + + @overload + def __init__( + self, + *, + database_edition: Union[str, DbSystemDatabaseEditionType] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DatabaseEditionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ENTERPRISE_EDITION = "EnterpriseEdition" + STANDARD_EDITION = "StandardEdition" + + + class azure.mgmt.oracledatabase.models.DatabaseSystemShape(ProxyResource): + id: str + name: str + properties: Optional[DatabaseSystemShapeProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DatabaseSystemShapeProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DatabaseSystemShapeProperties(_Model): + are_server_types_supported: Optional[bool] + available_core_count: int + available_core_count_per_node: Optional[int] + available_data_storage_in_tbs: Optional[int] + available_data_storage_per_server_in_tbs: Optional[float] + available_db_node_per_node_in_gbs: Optional[int] + available_db_node_storage_in_gbs: Optional[int] + available_memory_in_gbs: Optional[int] + available_memory_per_node_in_gbs: Optional[int] + compute_model: Optional[Union[str, ComputeModel]] + core_count_increment: Optional[int] + display_name: Optional[str] + max_storage_count: Optional[int] + maximum_node_count: Optional[int] + min_core_count_per_node: Optional[int] + min_data_storage_in_tbs: Optional[int] + min_db_node_storage_per_node_in_gbs: Optional[int] + min_memory_per_node_in_gbs: Optional[int] + min_storage_count: Optional[int] + minimum_core_count: Optional[int] + minimum_node_count: Optional[int] + runtime_minimum_core_count: Optional[int] + shape_attributes: Optional[list[str]] + shape_family: Optional[str] + shape_name: str + + @overload + def __init__( + self, + *, + are_server_types_supported: Optional[bool] = ..., + available_core_count: int, + available_core_count_per_node: Optional[int] = ..., + available_data_storage_in_tbs: Optional[int] = ..., + available_data_storage_per_server_in_tbs: Optional[float] = ..., + available_db_node_per_node_in_gbs: Optional[int] = ..., + available_db_node_storage_in_gbs: Optional[int] = ..., + available_memory_in_gbs: Optional[int] = ..., + available_memory_per_node_in_gbs: Optional[int] = ..., + compute_model: Optional[Union[str, ComputeModel]] = ..., + core_count_increment: Optional[int] = ..., + display_name: Optional[str] = ..., + max_storage_count: Optional[int] = ..., + maximum_node_count: Optional[int] = ..., + min_core_count_per_node: Optional[int] = ..., + min_data_storage_in_tbs: Optional[int] = ..., + min_db_node_storage_per_node_in_gbs: Optional[int] = ..., + min_memory_per_node_in_gbs: Optional[int] = ..., + min_storage_count: Optional[int] = ..., + minimum_core_count: Optional[int] = ..., + minimum_node_count: Optional[int] = ..., + runtime_minimum_core_count: Optional[int] = ..., + shape_attributes: Optional[list[str]] = ..., + shape_family: Optional[str] = ..., + shape_name: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DayOfWeek(_Model): + name: Union[str, DayOfWeekName] + + @overload + def __init__( + self, + *, + name: Union[str, DayOfWeekName] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DayOfWeekName(str, Enum, metaclass=CaseInsensitiveEnumMeta): + FRIDAY = "Friday" + MONDAY = "Monday" + SATURDAY = "Saturday" + SUNDAY = "Sunday" + THURSDAY = "Thursday" + TUESDAY = "Tuesday" + WEDNESDAY = "Wednesday" + + + class azure.mgmt.oracledatabase.models.DayOfWeekUpdate(_Model): + name: Optional[Union[str, DayOfWeekName]] + + @overload + def __init__( + self, + *, + name: Optional[Union[str, DayOfWeekName]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbActionResponse(_Model): + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + + @overload + def __init__( + self, + *, + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbIormConfig(_Model): + db_name: Optional[str] + flash_cache_limit: Optional[str] + share: Optional[int] + + @overload + def __init__( + self, + *, + db_name: Optional[str] = ..., + flash_cache_limit: Optional[str] = ..., + share: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbNode(ProxyResource): + id: str + name: str + properties: Optional[DbNodeProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DbNodeProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbNodeAction(_Model): + action: Union[str, DbNodeActionEnum] + + @overload + def __init__( + self, + *, + action: Union[str, DbNodeActionEnum] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbNodeActionEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): + RESET = "Reset" + SOFT_RESET = "SoftReset" + START = "Start" + STOP = "Stop" + + + class azure.mgmt.oracledatabase.models.DbNodeDetails(_Model): + db_node_id: str + + @overload + def __init__( + self, + *, + db_node_id: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbNodeMaintenanceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + VMDB_REBOOT_MIGRATION = "VmdbRebootMigration" + + + class azure.mgmt.oracledatabase.models.DbNodeProperties(_Model): + additional_details: Optional[str] + backup_ip_id: Optional[str] + backup_vnic2_id: Optional[str] + backup_vnic_id: Optional[str] + cpu_core_count: Optional[int] + db_node_storage_size_in_gbs: Optional[int] + db_server_id: Optional[str] + db_system_id: str + fault_domain: Optional[str] + host_ip_id: Optional[str] + hostname: Optional[str] + lifecycle_details: Optional[str] + lifecycle_state: Union[str, DbNodeProvisioningState] + maintenance_type: Optional[Union[str, DbNodeMaintenanceType]] + memory_size_in_gbs: Optional[int] + ocid: str + provisioning_state: Optional[Union[str, ResourceProvisioningState]] + software_storage_size_in_gb: Optional[int] + time_created: datetime + time_maintenance_window_end: Optional[datetime] + time_maintenance_window_start: Optional[datetime] + vnic2_id: Optional[str] + vnic_id: str + + @overload + def __init__( + self, + *, + additional_details: Optional[str] = ..., + backup_ip_id: Optional[str] = ..., + backup_vnic2_id: Optional[str] = ..., + backup_vnic_id: Optional[str] = ..., + cpu_core_count: Optional[int] = ..., + db_node_storage_size_in_gbs: Optional[int] = ..., + db_server_id: Optional[str] = ..., + db_system_id: str, + fault_domain: Optional[str] = ..., + host_ip_id: Optional[str] = ..., + hostname: Optional[str] = ..., + lifecycle_details: Optional[str] = ..., + lifecycle_state: Union[str, DbNodeProvisioningState], + maintenance_type: Optional[Union[str, DbNodeMaintenanceType]] = ..., + memory_size_in_gbs: Optional[int] = ..., + ocid: str, + software_storage_size_in_gb: Optional[int] = ..., + time_created: datetime, + time_maintenance_window_end: Optional[datetime] = ..., + time_maintenance_window_start: Optional[datetime] = ..., + vnic2_id: Optional[str] = ..., + vnic_id: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbNodeProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + FAILED = "Failed" + PROVISIONING = "Provisioning" + STARTING = "Starting" + STOPPED = "Stopped" + STOPPING = "Stopping" + TERMINATED = "Terminated" + TERMINATING = "Terminating" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.DbServer(ProxyResource): + id: str + name: str + properties: Optional[DbServerProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DbServerProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbServerPatchingDetails(_Model): + estimated_patch_duration: Optional[int] + patching_status: Optional[Union[str, DbServerPatchingStatus]] + time_patching_ended: Optional[datetime] + time_patching_started: Optional[datetime] + + + class azure.mgmt.oracledatabase.models.DbServerPatchingStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): + COMPLETE = "Complete" + FAILED = "Failed" + MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" + SCHEDULED = "Scheduled" + + + class azure.mgmt.oracledatabase.models.DbServerProperties(_Model): + autonomous_virtual_machine_ids: Optional[list[str]] + autonomous_vm_cluster_ids: Optional[list[str]] + compartment_id: Optional[str] + compute_model: Optional[Union[str, ComputeModel]] + cpu_core_count: Optional[int] + db_node_ids: Optional[list[str]] + db_node_storage_size_in_gbs: Optional[int] + db_server_patching_details: Optional[DbServerPatchingDetails] + display_name: Optional[str] + exadata_infrastructure_id: Optional[str] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, DbServerProvisioningState]] + max_cpu_count: Optional[int] + max_db_node_storage_in_gbs: Optional[int] + max_memory_in_gbs: Optional[int] + memory_size_in_gbs: Optional[int] + ocid: Optional[str] + provisioning_state: Optional[Union[str, ResourceProvisioningState]] + shape: Optional[str] + time_created: Optional[datetime] + vm_cluster_ids: Optional[list[str]] + + + class azure.mgmt.oracledatabase.models.DbServerProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + CREATING = "Creating" + DELETED = "Deleted" + DELETING = "Deleting" + MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" + UNAVAILABLE = "Unavailable" + + + class azure.mgmt.oracledatabase.models.DbSystem(TrackedResource): + id: str + location: str + name: str + properties: Optional[DbSystemProperties] + system_data: SystemData + tags: dict[str, str] + type: str + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[DbSystemProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbSystemBaseProperties(_Model): + character_set: Optional[str] + cluster_name: Optional[str] + compute_count: Optional[int] + compute_model: Optional[Union[str, ComputeModel]] + data_collection_options: Optional[DataCollectionOptions] + data_storage_size_in_gbs: Optional[int] + db_system_options: Optional[DbSystemOptions] + disk_redundancy: Optional[Union[str, DiskRedundancyType]] + display_name: Optional[str] + domain_v2: Optional[str] + grid_image_ocid: Optional[str] + hostname: str + initial_data_storage_size_in_gb: Optional[int] + license_model_v2: Optional[Union[str, LicenseModel]] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, DbSystemLifecycleState]] + listener_port: Optional[int] + memory_size_in_gbs: Optional[int] + ncharacter_set: Optional[str] + network_anchor_id: str + node_count: Optional[int] + oci_url: Optional[str] + ocid: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + resource_anchor_id: str + scan_dns_name: Optional[str] + scan_ips: Optional[list[str]] + shape: str + source: str + ssh_public_keys: list[str] + storage_volume_performance_mode: Optional[Union[str, StorageVolumePerformanceMode]] + time_zone: Optional[str] + version: Optional[str] + + @overload + def __init__( + self, + *, + character_set: Optional[str] = ..., + cluster_name: Optional[str] = ..., + compute_count: Optional[int] = ..., + compute_model: Optional[Union[str, ComputeModel]] = ..., + data_collection_options: Optional[DataCollectionOptions] = ..., + db_system_options: Optional[DbSystemOptions] = ..., + disk_redundancy: Optional[Union[str, DiskRedundancyType]] = ..., + display_name: Optional[str] = ..., + domain_v2: Optional[str] = ..., + hostname: str, + initial_data_storage_size_in_gb: Optional[int] = ..., + license_model_v2: Optional[Union[str, LicenseModel]] = ..., + ncharacter_set: Optional[str] = ..., + network_anchor_id: str, + node_count: Optional[int] = ..., + resource_anchor_id: str, + shape: str, + source: str = ..., + ssh_public_keys: list[str], + storage_volume_performance_mode: Optional[Union[str, StorageVolumePerformanceMode]] = ..., + time_zone: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbSystemDatabaseEditionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ENTERPRISE_EDITION = "EnterpriseEdition" + ENTERPRISE_EDITION_DEVELOPER = "EnterpriseEditionDeveloper" + ENTERPRISE_EDITION_EXTREME = "EnterpriseEditionExtreme" + ENTERPRISE_EDITION_HIGH_PERFORMANCE = "EnterpriseEditionHighPerformance" + STANDARD_EDITION = "StandardEdition" + + + class azure.mgmt.oracledatabase.models.DbSystemLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + FAILED = "Failed" + MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" + MIGRATED = "Migrated" + NEEDS_ATTENTION = "NeedsAttention" + PROVISIONING = "Provisioning" + TERMINATED = "Terminated" + TERMINATING = "Terminating" + UPDATING = "Updating" + UPGRADING = "Upgrading" + + + class azure.mgmt.oracledatabase.models.DbSystemOptions(_Model): + storage_management: Optional[Union[str, StorageManagementType]] + + @overload + def __init__( + self, + *, + storage_management: Optional[Union[str, StorageManagementType]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbSystemProperties(DbSystemBaseProperties, discriminator='None'): + admin_password: Optional[str] + character_set: str + cluster_name: str + compute_count: int + compute_model: Union[str, ComputeModel] + data_collection_options: DataCollectionOptions + data_storage_size_in_gbs: int + database_edition: Union[str, DbSystemDatabaseEditionType] + db_system_options: DbSystemOptions + db_version: str + disk_redundancy: Union[str, DiskRedundancyType] + display_name: str + domain_v2: str + grid_image_ocid: str + hostname: str + initial_data_storage_size_in_gb: int + license_model_v2: Union[str, LicenseModel] + lifecycle_details: str + lifecycle_state: Union[str, DbSystemLifecycleState] + listener_port: int + memory_size_in_gbs: int + ncharacter_set: str + network_anchor_id: str + node_count: int + oci_url: str + ocid: str + pdb_name: Optional[str] + provisioning_state: Union[str, AzureResourceProvisioningState] + resource_anchor_id: str + scan_dns_name: str + scan_ips: list[str] + shape: str + source: Literal[DbSystemSourceType.NONE] + ssh_public_keys: list[str] + storage_volume_performance_mode: Union[str, StorageVolumePerformanceMode] + time_zone: str + version: str + + @overload + def __init__( + self, + *, + admin_password: Optional[str] = ..., + character_set: Optional[str] = ..., + cluster_name: Optional[str] = ..., + compute_count: Optional[int] = ..., + compute_model: Optional[Union[str, ComputeModel]] = ..., + data_collection_options: Optional[DataCollectionOptions] = ..., + database_edition: Union[str, DbSystemDatabaseEditionType], + db_system_options: Optional[DbSystemOptions] = ..., + db_version: str, + disk_redundancy: Optional[Union[str, DiskRedundancyType]] = ..., + display_name: Optional[str] = ..., + domain_v2: Optional[str] = ..., + hostname: str, + initial_data_storage_size_in_gb: Optional[int] = ..., + license_model_v2: Optional[Union[str, LicenseModel]] = ..., + ncharacter_set: Optional[str] = ..., + network_anchor_id: str, + node_count: Optional[int] = ..., + pdb_name: Optional[str] = ..., + resource_anchor_id: str, + shape: str, + ssh_public_keys: list[str], + storage_volume_performance_mode: Optional[Union[str, StorageVolumePerformanceMode]] = ..., + time_zone: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbSystemShape(ProxyResource): + id: str + name: str + properties: Optional[DbSystemShapeProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DbSystemShapeProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbSystemShapeProperties(_Model): + are_server_types_supported: Optional[bool] + available_core_count: int + available_core_count_per_node: Optional[int] + available_data_storage_in_tbs: Optional[int] + available_data_storage_per_server_in_tbs: Optional[float] + available_db_node_per_node_in_gbs: Optional[int] + available_db_node_storage_in_gbs: Optional[int] + available_memory_in_gbs: Optional[int] + available_memory_per_node_in_gbs: Optional[int] + compute_model: Optional[Union[str, ComputeModel]] + core_count_increment: Optional[int] + display_name: Optional[str] + max_storage_count: Optional[int] + maximum_node_count: Optional[int] + min_core_count_per_node: Optional[int] + min_data_storage_in_tbs: Optional[int] + min_db_node_storage_per_node_in_gbs: Optional[int] + min_memory_per_node_in_gbs: Optional[int] + min_storage_count: Optional[int] + minimum_core_count: Optional[int] + minimum_node_count: Optional[int] + runtime_minimum_core_count: Optional[int] + shape_attributes: Optional[list[str]] + shape_family: Optional[str] + shape_name: str + + @overload + def __init__( + self, + *, + are_server_types_supported: Optional[bool] = ..., + available_core_count: int, + available_core_count_per_node: Optional[int] = ..., + available_data_storage_in_tbs: Optional[int] = ..., + available_data_storage_per_server_in_tbs: Optional[float] = ..., + available_db_node_per_node_in_gbs: Optional[int] = ..., + available_db_node_storage_in_gbs: Optional[int] = ..., + available_memory_in_gbs: Optional[int] = ..., + available_memory_per_node_in_gbs: Optional[int] = ..., + compute_model: Optional[Union[str, ComputeModel]] = ..., + core_count_increment: Optional[int] = ..., + display_name: Optional[str] = ..., + max_storage_count: Optional[int] = ..., + maximum_node_count: Optional[int] = ..., + min_core_count_per_node: Optional[int] = ..., + min_data_storage_in_tbs: Optional[int] = ..., + min_db_node_storage_per_node_in_gbs: Optional[int] = ..., + min_memory_per_node_in_gbs: Optional[int] = ..., + min_storage_count: Optional[int] = ..., + minimum_core_count: Optional[int] = ..., + minimum_node_count: Optional[int] = ..., + runtime_minimum_core_count: Optional[int] = ..., + shape_attributes: Optional[list[str]] = ..., + shape_family: Optional[str] = ..., + shape_name: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbSystemSourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + NONE = "None" + + + class azure.mgmt.oracledatabase.models.DbSystemUpdate(_Model): + properties: Optional[DbSystemUpdateProperties] + tags: Optional[dict[str, str]] + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + properties: Optional[DbSystemUpdateProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbSystemUpdateProperties(_Model): + source: Optional[Literal[DbSystemSourceType.NONE]] + + @overload + def __init__( + self, + *, + source: Optional[Literal[DbSystemSourceType.NONE]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbVersion(ProxyResource): + id: str + name: str + properties: Optional[DbVersionProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DbVersionProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DbVersionProperties(_Model): + is_latest_for_major_version: Optional[bool] + is_preview_db_version: Optional[bool] + is_upgrade_supported: Optional[bool] + supports_pdb: Optional[bool] + version: str + + @overload + def __init__( + self, + *, + is_latest_for_major_version: Optional[bool] = ..., + is_preview_db_version: Optional[bool] = ..., + is_upgrade_supported: Optional[bool] = ..., + supports_pdb: Optional[bool] = ..., + version: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DefinedFileSystemConfiguration(_Model): + is_backup_partition: Optional[bool] + is_resizable: Optional[bool] + min_size_gb: Optional[int] + mount_point: Optional[str] + + @overload + def __init__( + self, + *, + is_backup_partition: Optional[bool] = ..., + is_resizable: Optional[bool] = ..., + min_size_gb: Optional[int] = ..., + mount_point: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DeploymentConnectionAssignmentProperties(_Model): + alias_name: Optional[str] + compartment_id: Optional[str] + connection_id: str + connection_name: Optional[str] + deployment_id: str + deployment_name: Optional[str] + lifecycle_state: Optional[Union[str, GoldenGateConnectionAssignmentLifecycleState]] + ocid: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + time_created: Optional[str] + time_updated: Optional[str] + + + class azure.mgmt.oracledatabase.models.DeploymentLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ACTIVE = "Active" + CANCELED = "Canceled" + CANCELING = "Canceling" + CREATING = "Creating" + DELETED = "Deleted" + DELETING = "Deleting" + FAILED = "Failed" + IN_ACTIVE = "InActive" + IN_PROGRESS = "In Progress" + NEEDS_ATTENTION = "Needs Attention" + SUCCEEDED = "Succeeded" + UPDATING = "Updating" + WAITING = "Waiting" + + + class azure.mgmt.oracledatabase.models.DeploymentProperties(_Model): + backup_schedule: Optional[BackupScheduleType] + category: Optional[Union[str, CategoryType]] + compartment: Optional[str] + cpu_core_count: Optional[int] + deployment_type: Optional[Union[str, DeploymentType]] + deployment_url: Optional[str] + display_name: str + environment_type: Optional[Union[str, SetupType]] + ingress_ips: Optional[list[str]] + is_auto_scaling_enabled: Optional[bool] + is_public: Optional[bool] + license_model: Optional[Union[str, LicenseModel]] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, DeploymentLifecycleState]] + maintenance_configuration: Optional[MaintenanceConfigurationType] + maintenance_window: Optional[MaintenanceWindowType] + network_anchor_id: str + ocid: Optional[str] + ogg_data: Optional[OggDeploymentDetails] + private_ip_address: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + resource_anchor_id: str + storage_utilization_in_bytes: Optional[int] + time_created: Optional[str] + time_updated: Optional[str] + time_zone: Optional[str] + version: Optional[str] + + @overload + def __init__( + self, + *, + backup_schedule: Optional[BackupScheduleType] = ..., + category: Optional[Union[str, CategoryType]] = ..., + cpu_core_count: Optional[int] = ..., + deployment_type: Optional[Union[str, DeploymentType]] = ..., + display_name: str, + environment_type: Optional[Union[str, SetupType]] = ..., + is_auto_scaling_enabled: Optional[bool] = ..., + is_public: Optional[bool] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + maintenance_configuration: Optional[MaintenanceConfigurationType] = ..., + maintenance_window: Optional[MaintenanceWindowType] = ..., + network_anchor_id: str, + ogg_data: Optional[OggDeploymentDetails] = ..., + resource_anchor_id: str, + time_zone: Optional[str] = ..., + version: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DeploymentType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + BIG_DATA = "BigData" + DATABASE_DB2_I = "DATABASE_DB2I" + DATABASE_DB2_ZOS = "DatabaseDB2ZOS" + DATABASE_MICROSOFT_SQL_SERVER = "DatabaseMicrosoftSQLServer" + DATABASE_MY_SQL = "DatabaseMySQL" + DATABASE_ORACLE = "DatabaseOracle" + DATABASE_POST_GRE_SQL = "DatabasePostGreSQL" + DATA_TRANSFORMS = "DataTransforms" + GGSA = "GGSA" + OGG = "Ogg" + + + class azure.mgmt.oracledatabase.models.DisasterRecoveryConfigurationDetails(_Model): + disaster_recovery_type: Optional[Union[str, DisasterRecoveryType]] + is_replicate_automatic_backups: Optional[bool] + is_snapshot_standby: Optional[bool] + time_snapshot_standby_enabled_till: Optional[datetime] + + @overload + def __init__( + self, + *, + disaster_recovery_type: Optional[Union[str, DisasterRecoveryType]] = ..., + is_replicate_automatic_backups: Optional[bool] = ..., + is_snapshot_standby: Optional[bool] = ..., + time_snapshot_standby_enabled_till: Optional[datetime] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DisasterRecoveryType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ADG = "Adg" + BACKUP_BASED = "BackupBased" + + + class azure.mgmt.oracledatabase.models.DiskRedundancy(str, Enum, metaclass=CaseInsensitiveEnumMeta): + HIGH = "High" + NORMAL = "Normal" + + + class azure.mgmt.oracledatabase.models.DiskRedundancyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + HIGH = "High" + NORMAL = "Normal" + + + class azure.mgmt.oracledatabase.models.DnsForwardingRule(_Model): + domain_names: str + forwarding_ip_address: str + + @overload + def __init__( + self, + *, + domain_names: str, + forwarding_ip_address: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DnsPrivateView(ProxyResource): + id: str + name: str + properties: Optional[DnsPrivateViewProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DnsPrivateViewProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DnsPrivateViewProperties(_Model): + display_name: str + is_protected: bool + lifecycle_state: Union[str, DnsPrivateViewsLifecycleState] + ocid: str + provisioning_state: Optional[Union[str, ResourceProvisioningState]] + self_property: str + time_created: datetime + time_updated: datetime + + @overload + def __init__( + self, + *, + display_name: str, + is_protected: bool, + lifecycle_state: Union[str, DnsPrivateViewsLifecycleState], + ocid: str, + self_property: str, + time_created: datetime, + time_updated: datetime + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DnsPrivateViewsLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ACTIVE = "Active" + DELETED = "Deleted" + DELETING = "Deleting" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.DnsPrivateZone(ProxyResource): + id: str + name: str + properties: Optional[DnsPrivateZoneProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[DnsPrivateZoneProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DnsPrivateZoneProperties(_Model): + is_protected: bool + lifecycle_state: Union[str, DnsPrivateZonesLifecycleState] + ocid: str + provisioning_state: Optional[Union[str, ResourceProvisioningState]] + self_property: str + serial: int + time_created: datetime + version: str + view_id: Optional[str] + zone_type: Union[str, ZoneType] + + @overload + def __init__( + self, + *, + is_protected: bool, + lifecycle_state: Union[str, DnsPrivateZonesLifecycleState], + ocid: str, + self_property: str, + serial: int, + time_created: datetime, + version: str, + view_id: Optional[str] = ..., + zone_type: Union[str, ZoneType] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.DnsPrivateZonesLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ACTIVE = "Active" + CREATING = "Creating" + DELETED = "Deleted" + DELETING = "Deleting" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.ErrorAdditionalInfo(_Model): + info: Optional[Any] + type: Optional[str] + + + class azure.mgmt.oracledatabase.models.ErrorDetail(_Model): + additional_info: Optional[list[ErrorAdditionalInfo]] + code: Optional[str] + details: Optional[list[ErrorDetail]] + message: Optional[str] + target: Optional[str] + + + class azure.mgmt.oracledatabase.models.ErrorResponse(_Model): + error: Optional[ErrorDetail] + + @overload + def __init__( + self, + *, + error: Optional[ErrorDetail] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.EstimatedPatchingTime(_Model): + estimated_db_server_patching_time: Optional[int] + estimated_network_switches_patching_time: Optional[int] + estimated_storage_server_patching_time: Optional[int] + total_estimated_patching_time: Optional[int] + + + class azure.mgmt.oracledatabase.models.ExadataIormConfig(_Model): + db_plans: Optional[list[DbIormConfig]] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, IormLifecycleState]] + objective: Optional[Union[str, Objective]] + + @overload + def __init__( + self, + *, + db_plans: Optional[list[DbIormConfig]] = ..., + lifecycle_details: Optional[str] = ..., + lifecycle_state: Optional[Union[str, IormLifecycleState]] = ..., + objective: Optional[Union[str, Objective]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExadataVmClusterStorageManagementType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ASM = "ASM" + EXASCALE = "Exascale" + + + class azure.mgmt.oracledatabase.models.ExadbVmCluster(TrackedResource): + id: str + location: str + name: str + properties: Optional[ExadbVmClusterProperties] + system_data: SystemData + tags: dict[str, str] + type: str + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[ExadbVmClusterProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExadbVmClusterLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + FAILED = "Failed" + MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" + PROVISIONING = "Provisioning" + TERMINATED = "Terminated" + TERMINATING = "Terminating" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.ExadbVmClusterProperties(_Model): + backup_subnet_cidr: Optional[str] + backup_subnet_ocid: Optional[str] + cluster_name: Optional[str] + data_collection_options: Optional[DataCollectionOptions] + display_name: str + domain: Optional[str] + enabled_ecpu_count: int + exascale_db_storage_vault_id: str + gi_version: Optional[str] + grid_image_ocid: Optional[str] + grid_image_type: Optional[Union[str, GridImageType]] + hostname_v2: str + iorm_config_cache: Optional[ExadataIormConfig] + license_model: Optional[Union[str, LicenseModel]] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, ExadbVmClusterLifecycleState]] + listener_port: Optional[int] + memory_size_in_gbs: Optional[int] + node_count: int + nsg_cidrs: Optional[list[NsgCidr]] + nsg_url: Optional[str] + oci_url: Optional[str] + ocid: Optional[str] + private_zone_ocid: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + scan_dns_name_v2: Optional[str] + scan_dns_record_id: Optional[str] + scan_ip_ids: Optional[list[str]] + scan_listener_port_tcp: Optional[int] + scan_listener_port_tcp_ssl: Optional[int] + shape: str + shape_attribute: Optional[Union[str, ShapeAttribute]] + snapshot_file_system_storage: Optional[ExadbVmClusterStorageDetails] + ssh_public_keys: list[str] + subnet_id: str + subnet_ocid: Optional[str] + system_version: Optional[str] + time_zone: Optional[str] + total_ecpu_count: int + total_file_system_storage: Optional[ExadbVmClusterStorageDetails] + vip_ids: Optional[list[str]] + vm_file_system_storage: ExadbVmClusterStorageDetails + vnet_id: str + zone_ocid: Optional[str] + + @overload + def __init__( + self, + *, + backup_subnet_cidr: Optional[str] = ..., + cluster_name: Optional[str] = ..., + data_collection_options: Optional[DataCollectionOptions] = ..., + display_name: str, + domain: Optional[str] = ..., + enabled_ecpu_count: int, + exascale_db_storage_vault_id: str, + grid_image_ocid: Optional[str] = ..., + hostname_v2: str, + license_model: Optional[Union[str, LicenseModel]] = ..., + node_count: int, + nsg_cidrs: Optional[list[NsgCidr]] = ..., + private_zone_ocid: Optional[str] = ..., + scan_listener_port_tcp: Optional[int] = ..., + scan_listener_port_tcp_ssl: Optional[int] = ..., + shape: str, + shape_attribute: Optional[Union[str, ShapeAttribute]] = ..., + ssh_public_keys: list[str], + subnet_id: str, + system_version: Optional[str] = ..., + time_zone: Optional[str] = ..., + total_ecpu_count: int, + vm_file_system_storage: ExadbVmClusterStorageDetails, + vnet_id: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExadbVmClusterStorageDetails(_Model): + total_size_in_gbs: int + + @overload + def __init__( + self, + *, + total_size_in_gbs: int + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExadbVmClusterUpdate(_Model): + properties: Optional[ExadbVmClusterUpdateProperties] + tags: Optional[dict[str, str]] + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + properties: Optional[ExadbVmClusterUpdateProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExadbVmClusterUpdateProperties(_Model): + node_count: Optional[int] + + @overload + def __init__( + self, + *, + node_count: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExascaleConfigDetails(_Model): + available_storage_in_gbs: Optional[int] + total_storage_in_gbs: int + + @overload + def __init__( + self, + *, + available_storage_in_gbs: Optional[int] = ..., + total_storage_in_gbs: int + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExascaleDbNode(ProxyResource): + id: str + name: str + properties: Optional[ExascaleDbNodeProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[ExascaleDbNodeProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExascaleDbNodeProperties(_Model): + additional_details: Optional[str] + cpu_core_count: Optional[int] + db_node_storage_size_in_gbs: Optional[int] + fault_domain: Optional[str] + hostname: Optional[str] + lifecycle_state: Optional[Union[str, DbNodeProvisioningState]] + maintenance_type: Optional[str] + memory_size_in_gbs: Optional[int] + ocid: str + software_storage_size_in_gb: Optional[int] + time_maintenance_window_end: Optional[datetime] + time_maintenance_window_start: Optional[datetime] + total_cpu_core_count: Optional[int] + + @overload + def __init__( + self, + *, + additional_details: Optional[str] = ..., + cpu_core_count: Optional[int] = ..., + db_node_storage_size_in_gbs: Optional[int] = ..., + fault_domain: Optional[str] = ..., + hostname: Optional[str] = ..., + lifecycle_state: Optional[Union[str, DbNodeProvisioningState]] = ..., + maintenance_type: Optional[str] = ..., + memory_size_in_gbs: Optional[int] = ..., + ocid: str, + software_storage_size_in_gb: Optional[int] = ..., + time_maintenance_window_end: Optional[datetime] = ..., + time_maintenance_window_start: Optional[datetime] = ..., + total_cpu_core_count: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExascaleDbStorageDetails(_Model): + available_size_in_gbs: Optional[int] + total_size_in_gbs: Optional[int] + + @overload + def __init__( + self, + *, + available_size_in_gbs: Optional[int] = ..., + total_size_in_gbs: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExascaleDbStorageInputDetails(_Model): + total_size_in_gbs: int + + @overload + def __init__( + self, + *, + total_size_in_gbs: int + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExascaleDbStorageVault(TrackedResource): + id: str + location: str + name: str + properties: Optional[ExascaleDbStorageVaultProperties] + system_data: SystemData + tags: dict[str, str] + type: str + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[ExascaleDbStorageVaultProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + FAILED = "Failed" + PROVISIONING = "Provisioning" + TERMINATED = "Terminated" + TERMINATING = "Terminating" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultProperties(_Model): + additional_flash_cache_in_percent: Optional[int] + attached_shape_attributes: Optional[list[Union[str, ShapeAttribute]]] + autoscale_limit_in_gbs: Optional[int] + description: Optional[str] + display_name: str + exadata_infrastructure_id: Optional[str] + high_capacity_database_storage: Optional[ExascaleDbStorageDetails] + high_capacity_database_storage_input: ExascaleDbStorageInputDetails + is_autoscale_enabled: Optional[bool] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, ExascaleDbStorageVaultLifecycleState]] + oci_url: Optional[str] + ocid: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + time_zone: Optional[str] + vm_cluster_count: Optional[int] + + @overload + def __init__( + self, + *, + additional_flash_cache_in_percent: Optional[int] = ..., + autoscale_limit_in_gbs: Optional[int] = ..., + description: Optional[str] = ..., + display_name: str, + exadata_infrastructure_id: Optional[str] = ..., + high_capacity_database_storage_input: ExascaleDbStorageInputDetails, + is_autoscale_enabled: Optional[bool] = ..., + time_zone: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultTagsUpdate(_Model): + tags: Optional[dict[str, str]] + + @overload + def __init__( + self, + *, + tags: Optional[dict[str, str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.FileSystemConfigurationDetails(_Model): + file_system_size_gb: Optional[int] + mount_point: Optional[str] + + @overload + def __init__( + self, + *, + file_system_size_gb: Optional[int] = ..., + mount_point: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.FlexComponent(ProxyResource): + id: str + name: str + properties: Optional[FlexComponentProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[FlexComponentProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.FlexComponentProperties(_Model): + available_core_count: Optional[int] + available_db_storage_in_gbs: Optional[int] + available_local_storage_in_gbs: Optional[int] + available_memory_in_gbs: Optional[int] + compute_model: Optional[str] + description_summary: Optional[str] + hardware_type: Optional[Union[str, HardwareType]] + minimum_core_count: Optional[int] + runtime_minimum_core_count: Optional[int] + shape: Optional[str] + + + class azure.mgmt.oracledatabase.models.FrequencyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + DAILY = "Daily" + MONTHLY = "Monthly" + WEEKLY = "Weekly" + + + class azure.mgmt.oracledatabase.models.GenerateAutonomousDatabaseWalletDetails(_Model): + generate_type: Optional[Union[str, GenerateType]] + is_regional: Optional[bool] + password: str + + @overload + def __init__( + self, + *, + generate_type: Optional[Union[str, GenerateType]] = ..., + is_regional: Optional[bool] = ..., + password: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GenerateType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ALL = "All" + SINGLE = "Single" + + + class azure.mgmt.oracledatabase.models.GiMinorVersion(ProxyResource): + id: str + name: str + properties: Optional[GiMinorVersionProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[GiMinorVersionProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GiMinorVersionProperties(_Model): + grid_image_ocid: Optional[str] + version: str + + @overload + def __init__( + self, + *, + grid_image_ocid: Optional[str] = ..., + version: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GiMinorVersionSortOrder(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ASC = "ASC" + DESC = "DESC" + + + class azure.mgmt.oracledatabase.models.GiVersion(ProxyResource): + id: str + name: str + properties: Optional[GiVersionProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[GiVersionProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GiVersionProperties(_Model): + version: str + + @overload + def __init__( + self, + *, + version: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GoldenGateConnection(TrackedResource): + id: str + location: str + name: str + properties: Optional[ConnectionBaseProperties] + system_data: SystemData + tags: dict[str, str] + type: str + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[ConnectionBaseProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GoldenGateConnectionAssignmentLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + ACTIVE = "ACTIVE" + CREATING = "CREATING" + DELETED = "DELETED" + DELETING = "DELETING" + FAILED = "FAILED" + UPDATING = "UPDATING" + + + class azure.mgmt.oracledatabase.models.GoldenGateConnectionUpdate(_Model): + properties: Optional[GoldenGateConnectionUpdateProperties] + tags: Optional[dict[str, str]] + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + properties: Optional[GoldenGateConnectionUpdateProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GoldenGateConnectionUpdateProperties(_Model): + connection_type: Optional[Union[str, ConnectionType]] + display_name: Optional[str] + does_use_secret_ids: Optional[bool] + key_id: Optional[str] + routing_method: Optional[Union[str, RoutingMethod]] + vault_id: Optional[str] + + @overload + def __init__( + self, + *, + connection_type: Optional[Union[str, ConnectionType]] = ..., + display_name: Optional[str] = ..., + does_use_secret_ids: Optional[bool] = ..., + key_id: Optional[str] = ..., + routing_method: Optional[Union[str, RoutingMethod]] = ..., + vault_id: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GoldenGateDeployment(TrackedResource): + id: str + location: str + name: str + properties: Optional[DeploymentProperties] + system_data: SystemData + tags: dict[str, str] + type: str + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[DeploymentProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GoldenGateDeploymentUpdate(_Model): + properties: Optional[GoldenGateDeploymentUpdateProperties] + tags: Optional[dict[str, str]] + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + properties: Optional[GoldenGateDeploymentUpdateProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GoldenGateDeploymentUpdateProperties(_Model): + backup_schedule: Optional[BackupScheduleType] + cpu_core_count: Optional[int] + license_model: Optional[Union[str, LicenseModel]] + maintenance_configuration: Optional[MaintenanceConfigurationType] + maintenance_window: Optional[MaintenanceWindowType] + + @overload + def __init__( + self, + *, + backup_schedule: Optional[BackupScheduleType] = ..., + cpu_core_count: Optional[int] = ..., + license_model: Optional[Union[str, LicenseModel]] = ..., + maintenance_configuration: Optional[MaintenanceConfigurationType] = ..., + maintenance_window: Optional[MaintenanceWindowType] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.GridImageType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + CUSTOM_IMAGE = "CustomImage" + RELEASE_UPDATE = "ReleaseUpdate" + + + class azure.mgmt.oracledatabase.models.GroupToRolesMappingDetails(_Model): + administrator_group_id: Optional[str] + identity_domain_id: Optional[str] + key: Optional[str] + operator_group_id: Optional[str] + security_group_id: Optional[str] + user_group_id: Optional[str] + + @overload + def __init__( + self, + *, + administrator_group_id: Optional[str] = ..., + identity_domain_id: Optional[str] = ..., + key: Optional[str] = ..., + operator_group_id: Optional[str] = ..., + security_group_id: Optional[str] = ..., + user_group_id: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.HardwareType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + CELL = "CELL" + COMPUTE = "COMPUTE" + + + class azure.mgmt.oracledatabase.models.HostFormatType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + FQDN = "Fqdn" + IP = "Ip" + + + class azure.mgmt.oracledatabase.models.Intent(str, Enum, metaclass=CaseInsensitiveEnumMeta): + RESET = "Reset" + RETAIN = "Retain" + + + class azure.mgmt.oracledatabase.models.IormLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + BOOT_STRAPPING = "BootStrapping" + DISABLED = "Disabled" + ENABLED = "Enabled" + FAILED = "Failed" + UPDATING = "Updating" + + + class azure.mgmt.oracledatabase.models.KafkaBootstrapServer(_Model): + host: str + port: Optional[int] + + @overload + def __init__( + self, + *, + host: str, + port: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.KafkaConnectionDetails(ConnectionBaseProperties, discriminator='KAFKA'): + bootstrap_servers: Optional[list[KafkaBootstrapServer]] + cluster_id: Optional[str] + compartment_id: str + connection_type: Literal[ConnectionType.KAFKA] + consumer_properties: Optional[str] + display_name: str + does_use_secret_ids: bool + key_id: str + key_store_password_secret_id: Optional[str] + key_store_secret_id: Optional[str] + lifecycle_details: str + lifecycle_state: Union[str, ConnectionLifecycleState] + network_anchor_id: str + ocid: str + password_secret_id: Optional[str] + producer_properties: Optional[str] + provisioning_state: Union[str, AzureResourceProvisioningState] + resource_anchor_id: str + routing_method: Union[str, RoutingMethod] + security_protocol: Optional[str] + should_use_resource_principal: Optional[bool] + ssl_key_password_secret_id: Optional[str] + stream_pool_id: Optional[str] + technology_type: Union[str, KafkaConnectionTechnologyType] + time_created: str + time_updated: str + trust_store_password_secret_id: Optional[str] + trust_store_secret_id: Optional[str] + username: Optional[str] + vault_id: str + + @overload + def __init__( + self, + *, + bootstrap_servers: Optional[list[KafkaBootstrapServer]] = ..., + cluster_id: Optional[str] = ..., + consumer_properties: Optional[str] = ..., + display_name: str, + does_use_secret_ids: Optional[bool] = ..., + key_id: Optional[str] = ..., + key_store_password_secret_id: Optional[str] = ..., + key_store_secret_id: Optional[str] = ..., + network_anchor_id: str, + password_secret_id: Optional[str] = ..., + producer_properties: Optional[str] = ..., + resource_anchor_id: str, + routing_method: Optional[Union[str, RoutingMethod]] = ..., + security_protocol: Optional[str] = ..., + should_use_resource_principal: Optional[bool] = ..., + ssl_key_password_secret_id: Optional[str] = ..., + stream_pool_id: Optional[str] = ..., + technology_type: Union[str, KafkaConnectionTechnologyType], + trust_store_password_secret_id: Optional[str] = ..., + trust_store_secret_id: Optional[str] = ..., + username: Optional[str] = ..., + vault_id: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.KafkaConnectionTechnologyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + APACHE_KAFKA = "APACHE_KAFKA" + AZURE_EVENT_HUBS = "AZURE_EVENT_HUBS" + CONFLUENT_KAFKA = "CONFLUENT_KAFKA" + OCI_STREAMING = "OCI_STREAMING" + + + class azure.mgmt.oracledatabase.models.LicenseModel(str, Enum, metaclass=CaseInsensitiveEnumMeta): + BRING_YOUR_OWN_LICENSE = "BringYourOwnLicense" + LICENSE_INCLUDED = "LicenseIncluded" + + + class azure.mgmt.oracledatabase.models.LongTermBackUpScheduleDetails(_Model): + is_disabled: Optional[bool] + repeat_cadence: Optional[Union[str, RepeatCadenceType]] + retention_period_in_days: Optional[int] + time_of_backup: Optional[datetime] + + @overload + def __init__( + self, + *, + is_disabled: Optional[bool] = ..., + repeat_cadence: Optional[Union[str, RepeatCadenceType]] = ..., + retention_period_in_days: Optional[int] = ..., + time_of_backup: Optional[datetime] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.MaintenanceConfigurationType(_Model): + bundle_release_upgrade_period_in_days: Optional[int] + interim_release_upgrade_period_in_days: Optional[int] + is_interim_release_auto_upgrade_enabled: Optional[bool] + major_release_upgrade_period_in_days: Optional[int] + security_patch_upgrade_period_in_days: Optional[int] + + @overload + def __init__( + self, + *, + bundle_release_upgrade_period_in_days: Optional[int] = ..., + interim_release_upgrade_period_in_days: Optional[int] = ..., + is_interim_release_auto_upgrade_enabled: Optional[bool] = ..., + major_release_upgrade_period_in_days: Optional[int] = ..., + security_patch_upgrade_period_in_days: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.MaintenanceWindow(_Model): + custom_action_timeout_in_mins: Optional[int] + days_of_week: Optional[list[DayOfWeek]] + hours_of_day: Optional[list[int]] + is_custom_action_timeout_enabled: Optional[bool] + is_monthly_patching_enabled: Optional[bool] + lead_time_in_weeks: Optional[int] + months: Optional[list[Month]] + patching_mode: Optional[Union[str, PatchingMode]] + preference: Optional[Union[str, Preference]] + weeks_of_month: Optional[list[int]] + + @overload + def __init__( + self, + *, + custom_action_timeout_in_mins: Optional[int] = ..., + days_of_week: Optional[list[DayOfWeek]] = ..., + hours_of_day: Optional[list[int]] = ..., + is_custom_action_timeout_enabled: Optional[bool] = ..., + is_monthly_patching_enabled: Optional[bool] = ..., + lead_time_in_weeks: Optional[int] = ..., + months: Optional[list[Month]] = ..., + patching_mode: Optional[Union[str, PatchingMode]] = ..., + preference: Optional[Union[str, Preference]] = ..., + weeks_of_month: Optional[list[int]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.MaintenanceWindowType(_Model): + day: Optional[Union[str, DayOfWeekName]] + start_hour: Optional[int] + + @overload + def __init__( + self, + *, + day: Optional[Union[str, DayOfWeekName]] = ..., + start_hour: Optional[int] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.MicrosoftFabricConnectionDetails(ConnectionBaseProperties, discriminator='MICROSOFT_FABRIC'): + client_id: str + client_secret_secret_id: Optional[str] + compartment_id: str + connection_type: Literal[ConnectionType.MICROSOFT_FABRIC] + display_name: str + does_use_secret_ids: bool + endpoint: Optional[str] + key_id: str + lifecycle_details: str + lifecycle_state: Union[str, ConnectionLifecycleState] + network_anchor_id: str + ocid: str + provisioning_state: Union[str, AzureResourceProvisioningState] + resource_anchor_id: str + routing_method: Union[str, RoutingMethod] + technology_type: Union[str, MicrosoftFabricConnectionTechnologyType] + tenant_id: str + time_created: str + time_updated: str + vault_id: str + + @overload + def __init__( + self, + *, + client_id: str, + client_secret_secret_id: Optional[str] = ..., + display_name: str, + does_use_secret_ids: Optional[bool] = ..., + endpoint: Optional[str] = ..., + key_id: Optional[str] = ..., + network_anchor_id: str, + resource_anchor_id: str, + routing_method: Optional[Union[str, RoutingMethod]] = ..., + technology_type: Union[str, MicrosoftFabricConnectionTechnologyType], + tenant_id: str, + vault_id: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.MicrosoftFabricConnectionTechnologyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + MICROSOFT_FABRIC_LAKEHOUSE = "MICROSOFT_FABRIC_LAKEHOUSE" + MICROSOFT_FABRIC_MIRROR = "MICROSOFT_FABRIC_MIRROR" + + + class azure.mgmt.oracledatabase.models.Month(_Model): + name: Union[str, MonthName] + + @overload + def __init__( + self, + *, + name: Union[str, MonthName] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.MonthName(str, Enum, metaclass=CaseInsensitiveEnumMeta): + APRIL = "April" + AUGUST = "August" + DECEMBER = "December" + FEBRUARY = "February" + JANUARY = "January" + JULY = "July" + JUNE = "June" + MARCH = "March" + MAY = "May" + NOVEMBER = "November" + OCTOBER = "October" + SEPTEMBER = "September" + + + class azure.mgmt.oracledatabase.models.NetworkAnchor(TrackedResource): + id: str + location: str + name: str + properties: Optional[NetworkAnchorProperties] + system_data: SystemData + tags: dict[str, str] + type: str + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[NetworkAnchorProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.NetworkAnchorProperties(_Model): + cidr_block: Optional[str] + dns_forwarding_endpoint_ip_address: Optional[str] + dns_forwarding_endpoint_nsg_rules_url: Optional[str] + dns_forwarding_rules: Optional[list[DnsForwardingRule]] + dns_forwarding_rules_url: Optional[str] + dns_listening_endpoint_allowed_cidrs: Optional[str] + dns_listening_endpoint_ip_address: Optional[str] + dns_listening_endpoint_nsg_rules_url: Optional[str] + is_oracle_dns_forwarding_endpoint_enabled: Optional[bool] + is_oracle_dns_listening_endpoint_enabled: Optional[bool] + is_oracle_to_azure_dns_zone_sync_enabled: Optional[bool] + oci_backup_cidr_block: Optional[str] + oci_subnet_id: Optional[str] + oci_vcn_dns_label: Optional[str] + oci_vcn_id: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + proximity_placement_group: Optional[ProximityPlacementGroup] + resource_anchor_id: str + subnet_id: str + vnet_id: Optional[str] + + @overload + def __init__( + self, + *, + dns_forwarding_rules: Optional[list[DnsForwardingRule]] = ..., + dns_listening_endpoint_allowed_cidrs: Optional[str] = ..., + is_oracle_dns_forwarding_endpoint_enabled: Optional[bool] = ..., + is_oracle_dns_listening_endpoint_enabled: Optional[bool] = ..., + is_oracle_to_azure_dns_zone_sync_enabled: Optional[bool] = ..., + oci_backup_cidr_block: Optional[str] = ..., + oci_vcn_dns_label: Optional[str] = ..., + proximity_placement_group: Optional[ProximityPlacementGroup] = ..., + resource_anchor_id: str, + subnet_id: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.NetworkAnchorUpdate(_Model): + properties: Optional[NetworkAnchorUpdateProperties] + tags: Optional[dict[str, str]] + zones: Optional[list[str]] + + @overload + def __init__( + self, + *, + properties: Optional[NetworkAnchorUpdateProperties] = ..., + tags: Optional[dict[str, str]] = ..., + zones: Optional[list[str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.NetworkAnchorUpdateProperties(_Model): + is_oracle_dns_forwarding_endpoint_enabled: Optional[bool] + is_oracle_dns_listening_endpoint_enabled: Optional[bool] + is_oracle_to_azure_dns_zone_sync_enabled: Optional[bool] + oci_backup_cidr_block: Optional[str] + + @overload + def __init__( + self, + *, + is_oracle_dns_forwarding_endpoint_enabled: Optional[bool] = ..., + is_oracle_dns_listening_endpoint_enabled: Optional[bool] = ..., + is_oracle_to_azure_dns_zone_sync_enabled: Optional[bool] = ..., + oci_backup_cidr_block: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.NsgCidr(_Model): + destination_port_range: Optional[PortRange] + source: str + + @overload + def __init__( + self, + *, + destination_port_range: Optional[PortRange] = ..., + source: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.Objective(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AUTO = "Auto" + BALANCED = "Balanced" + BASIC = "Basic" + HIGH_THROUGHPUT = "HighThroughput" + LOW_LATENCY = "LowLatency" + + + class azure.mgmt.oracledatabase.models.OggDeploymentDetails(_Model): + admin_password: Optional[str] + admin_username: Optional[str] + certificate: Optional[str] + credential_store: Optional[Union[str, CredentialType]] + deployment_name: str + group_to_roles_mapping: Optional[GroupToRolesMappingDetails] + ogg_version: Optional[str] + password_secret_id: Optional[str] + + @overload + def __init__( + self, + *, + admin_password: Optional[str] = ..., + admin_username: Optional[str] = ..., + certificate: Optional[str] = ..., + credential_store: Optional[Union[str, CredentialType]] = ..., + deployment_name: str, + group_to_roles_mapping: Optional[GroupToRolesMappingDetails] = ..., + ogg_version: Optional[str] = ..., + password_secret_id: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.OpenModeType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + READ_ONLY = "ReadOnly" + READ_WRITE = "ReadWrite" + + + class azure.mgmt.oracledatabase.models.Operation(_Model): + action_type: Optional[Union[str, ActionType]] + display: Optional[OperationDisplay] + is_data_action: Optional[bool] + name: Optional[str] + origin: Optional[Union[str, Origin]] + + @overload + def __init__( + self, + *, + display: Optional[OperationDisplay] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.OperationDisplay(_Model): + description: Optional[str] + operation: Optional[str] + provider: Optional[str] + resource: Optional[str] + + + class azure.mgmt.oracledatabase.models.OperationsInsightsStatusType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + DISABLING = "Disabling" + ENABLED = "Enabled" + ENABLING = "Enabling" + FAILED_DISABLING = "FailedDisabling" + FAILED_ENABLING = "FailedEnabling" + NOT_ENABLED = "NotEnabled" + + + class azure.mgmt.oracledatabase.models.OracleConnectionDetails(ConnectionBaseProperties, discriminator='ORACLE'): + authentication_mode: Optional[str] + compartment_id: str + connection_string: Optional[str] + connection_type: Literal[ConnectionType.ORACLE] + database_id: Optional[str] + display_name: str + does_use_secret_ids: bool + key_id: str + lifecycle_details: str + lifecycle_state: Union[str, ConnectionLifecycleState] + network_anchor_id: str + ocid: str + password_secret_id: Optional[str] + private_ip: Optional[str] + provisioning_state: Union[str, AzureResourceProvisioningState] + resource_anchor_id: str + routing_method: Union[str, RoutingMethod] + session_mode: Optional[Union[str, SessionMode]] + technology_type: Union[str, OracleConnectionTechnologyType] + time_created: str + time_updated: str + username: str + vault_id: str + wallet_secret_id: Optional[str] + + @overload + def __init__( + self, + *, + authentication_mode: Optional[str] = ..., + connection_string: Optional[str] = ..., + database_id: Optional[str] = ..., + display_name: str, + does_use_secret_ids: Optional[bool] = ..., + key_id: Optional[str] = ..., + network_anchor_id: str, + password_secret_id: Optional[str] = ..., + private_ip: Optional[str] = ..., + resource_anchor_id: str, + routing_method: Optional[Union[str, RoutingMethod]] = ..., + session_mode: Optional[Union[str, SessionMode]] = ..., + technology_type: Union[str, OracleConnectionTechnologyType], + username: str, + vault_id: Optional[str] = ..., + wallet_secret_id: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.OracleConnectionTechnologyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AMAZON_RDS_ORACLE = "AMAZON_RDS_ORACLE" + OCI_AUTONOMOUS_DATABASE = "OCI_AUTONOMOUS_DATABASE" + ORACLE_AUTONOMOUS_DATABASE_AT_AWS = "ORACLE_AUTONOMOUS_DATABASE_AT_AWS" + ORACLE_AUTONOMOUS_DATABASE_AT_AZURE = "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE" + ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD = "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD" + ORACLE_DATABASE = "ORACLE_DATABASE" + ORACLE_EXADATA = "ORACLE_EXADATA" + ORACLE_EXADATA_DATABASE_AT_AWS = "ORACLE_EXADATA_DATABASE_AT_AWS" + ORACLE_EXADATA_DATABASE_AT_AZURE = "ORACLE_EXADATA_DATABASE_AT_AZURE" + ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD = "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD" + + + class azure.mgmt.oracledatabase.models.OracleSubscription(ProxyResource): + id: str + name: str + plan: Optional[Plan] + properties: Optional[OracleSubscriptionProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + plan: Optional[Plan] = ..., + properties: Optional[OracleSubscriptionProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.OracleSubscriptionProperties(_Model): + add_subscription_operation_state: Optional[Union[str, AddSubscriptionOperationState]] + azure_subscription_ids: Optional[list[str]] + cloud_account_id: Optional[str] + cloud_account_state: Optional[Union[str, CloudAccountProvisioningState]] + intent: Optional[Union[str, Intent]] + last_operation_status_detail: Optional[str] + product_code: Optional[str] + provisioning_state: Optional[Union[str, OracleSubscriptionProvisioningState]] + saas_subscription_id: Optional[str] + term_unit: Optional[str] + + @overload + def __init__( + self, + *, + intent: Optional[Union[str, Intent]] = ..., + product_code: Optional[str] = ..., + term_unit: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.OracleSubscriptionProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + CANCELED = "Canceled" + FAILED = "Failed" + SUCCEEDED = "Succeeded" + + + class azure.mgmt.oracledatabase.models.OracleSubscriptionUpdate(_Model): + plan: Optional[PlanUpdate] + properties: Optional[OracleSubscriptionUpdateProperties] + + @overload + def __init__( + self, + *, + plan: Optional[PlanUpdate] = ..., + properties: Optional[OracleSubscriptionUpdateProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.OracleSubscriptionUpdateProperties(_Model): + intent: Optional[Union[str, Intent]] + product_code: Optional[str] + + @overload + def __init__( + self, + *, + intent: Optional[Union[str, Intent]] = ..., + product_code: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.Origin(str, Enum, metaclass=CaseInsensitiveEnumMeta): + SYSTEM = "system" + USER = "user" + USER_SYSTEM = "user,system" + + + class azure.mgmt.oracledatabase.models.PatchingMode(str, Enum, metaclass=CaseInsensitiveEnumMeta): + NON_ROLLING = "NonRolling" + ROLLING = "Rolling" + + + class azure.mgmt.oracledatabase.models.PeerDbDetails(_Model): + peer_db_id: Optional[str] + peer_db_location: Optional[str] + peer_db_ocid: Optional[str] + + @overload + def __init__( + self, + *, + peer_db_id: Optional[str] = ..., + peer_db_location: Optional[str] = ..., + peer_db_ocid: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.PermissionLevelType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + RESTRICTED = "Restricted" + UNRESTRICTED = "Unrestricted" + + + class azure.mgmt.oracledatabase.models.Plan(_Model): + name: str + product: str + promotion_code: Optional[str] + publisher: str + version: Optional[str] + + @overload + def __init__( + self, + *, + name: str, + product: str, + promotion_code: Optional[str] = ..., + publisher: str, + version: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.PlanUpdate(_Model): + name: Optional[str] + product: Optional[str] + promotion_code: Optional[str] + publisher: Optional[str] + version: Optional[str] + + @overload + def __init__( + self, + *, + name: Optional[str] = ..., + product: Optional[str] = ..., + promotion_code: Optional[str] = ..., + publisher: Optional[str] = ..., + version: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.PortRange(_Model): + max: int + min: int + + @overload + def __init__( + self, + *, + max: int, + min: int + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.Preference(str, Enum, metaclass=CaseInsensitiveEnumMeta): + CUSTOM_PREFERENCE = "CustomPreference" + NO_PREFERENCE = "NoPreference" + + + class azure.mgmt.oracledatabase.models.PrivateIpAddressProperties(_Model): + display_name: str + hostname_label: str + ip_address: str + ocid: str + subnet_id: str + + @overload + def __init__( + self, + *, + display_name: str, + hostname_label: str, + ip_address: str, + ocid: str, + subnet_id: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.PrivateIpAddressesFilter(_Model): + subnet_id: str + vnic_id: str + + @overload + def __init__( + self, + *, + subnet_id: str, + vnic_id: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ProfileType(_Model): + consumer_group: Optional[Union[str, ConsumerGroup]] + display_name: str + host_format: Union[str, HostFormatType] + is_regional: Optional[bool] + protocol: Union[str, ProtocolType] + session_mode: Union[str, SessionModeType] + syntax_format: Union[str, SyntaxFormatType] + tls_authentication: Optional[Union[str, TlsAuthenticationType]] + value: str + + @overload + def __init__( + self, + *, + consumer_group: Optional[Union[str, ConsumerGroup]] = ..., + display_name: str, + host_format: Union[str, HostFormatType], + is_regional: Optional[bool] = ..., + protocol: Union[str, ProtocolType], + session_mode: Union[str, SessionModeType], + syntax_format: Union[str, SyntaxFormatType], + tls_authentication: Optional[Union[str, TlsAuthenticationType]] = ..., + value: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ProtocolType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + TCP = "TCP" + TCPS = "TCPS" + + + class azure.mgmt.oracledatabase.models.ProximityPlacementGroup(_Model): + entity_type_intended_to_use: Union[str, ProximityPlacementGroupEntityType] + proximity_anchor_id: Optional[str] + proximity_placement_group_id: str + + @overload + def __init__( + self, + *, + entity_type_intended_to_use: Union[str, ProximityPlacementGroupEntityType], + proximity_anchor_id: Optional[str] = ..., + proximity_placement_group_id: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ProximityPlacementGroupEntityType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + CLOUD_EXADATA_INFRASTRUCTURE = "CloudExadataInfrastructure" + OTHER_PRODUCTS = "OtherProducts" + + + class azure.mgmt.oracledatabase.models.ProxyResource(Resource): + id: str + name: str + system_data: SystemData + type: str + + + class azure.mgmt.oracledatabase.models.RefreshableModelType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AUTOMATIC = "Automatic" + MANUAL = "Manual" + + + class azure.mgmt.oracledatabase.models.RefreshableStatusType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + NOT_REFRESHING = "NotRefreshing" + REFRESHING = "Refreshing" + + + class azure.mgmt.oracledatabase.models.RemoveVirtualMachineFromExadbVmClusterDetails(_Model): + db_nodes: list[DbNodeDetails] + + @overload + def __init__( + self, + *, + db_nodes: list[DbNodeDetails] + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.RepeatCadenceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + MONTHLY = "Monthly" + ONE_TIME = "OneTime" + WEEKLY = "Weekly" + YEARLY = "Yearly" + + + class azure.mgmt.oracledatabase.models.Resource(_Model): + id: Optional[str] + name: Optional[str] + system_data: Optional[SystemData] + type: Optional[str] + + + class azure.mgmt.oracledatabase.models.ResourceAnchor(TrackedResource): + id: str + location: str + name: str + properties: Optional[ResourceAnchorProperties] + system_data: SystemData + tags: dict[str, str] + type: str + + @overload + def __init__( + self, + *, + location: str, + properties: Optional[ResourceAnchorProperties] = ..., + tags: Optional[dict[str, str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ResourceAnchorProperties(_Model): + linked_compartment_id: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + + + class azure.mgmt.oracledatabase.models.ResourceAnchorUpdate(_Model): + tags: Optional[dict[str, str]] + + @overload + def __init__( + self, + *, + tags: Optional[dict[str, str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ResourceProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + CANCELED = "Canceled" + FAILED = "Failed" + SUCCEEDED = "Succeeded" + + + class azure.mgmt.oracledatabase.models.RestoreAutonomousDatabaseDetails(_Model): + timestamp: datetime + + @overload + def __init__( + self, + *, + timestamp: datetime + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.RoleType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + BACKUP_COPY = "BackupCopy" + DISABLED_STANDBY = "DisabledStandby" + PRIMARY = "Primary" + SNAPSHOT_STANDBY = "SnapshotStandby" + STANDBY = "Standby" + + + class azure.mgmt.oracledatabase.models.RoutingMethod(str, Enum, metaclass=CaseInsensitiveEnumMeta): + DEDICATED_ENDPOINT = "DEDICATED_ENDPOINT" + SHARED_DEPLOYMENT_ENDPOINT = "SHARED_DEPLOYMENT_ENDPOINT" + SHARED_SERVICE_ENDPOINT = "SHARED_SERVICE_ENDPOINT" + + + class azure.mgmt.oracledatabase.models.SaasSubscriptionDetails(_Model): + id: Optional[str] + is_auto_renew: Optional[bool] + is_free_trial: Optional[bool] + offer_id: Optional[str] + plan_id: Optional[str] + publisher_id: Optional[str] + purchaser_email_id: Optional[str] + purchaser_tenant_id: Optional[str] + saas_subscription_status: Optional[str] + subscription_name: Optional[str] + term_unit: Optional[str] + time_created: Optional[datetime] + + + class azure.mgmt.oracledatabase.models.ScheduledOperationsType(_Model): + day_of_week: DayOfWeek + scheduled_start_time: Optional[str] + scheduled_stop_time: Optional[str] + + @overload + def __init__( + self, + *, + day_of_week: DayOfWeek, + scheduled_start_time: Optional[str] = ..., + scheduled_stop_time: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.ScheduledOperationsTypeUpdate(_Model): + day_of_week: Optional[DayOfWeekUpdate] + scheduled_start_time: Optional[str] + scheduled_stop_time: Optional[str] + + @overload + def __init__( + self, + *, + day_of_week: Optional[DayOfWeekUpdate] = ..., + scheduled_start_time: Optional[str] = ..., + scheduled_stop_time: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.SessionMode(str, Enum, metaclass=CaseInsensitiveEnumMeta): + DIRECT = "DIRECT" + REDIRECT = "REDIRECT" + + + class azure.mgmt.oracledatabase.models.SessionModeType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + DIRECT = "Direct" + REDIRECT = "Redirect" + + + class azure.mgmt.oracledatabase.models.SetupType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + DEVELOPMENT_OR_TESTING = "DevelopmentOrTesting" + PRODUCTION = "Production" + + + class azure.mgmt.oracledatabase.models.ShapeAttribute(str, Enum, metaclass=CaseInsensitiveEnumMeta): + BLOCK_STORAGE = "BLOCK_STORAGE" + SMART_STORAGE = "SMART_STORAGE" + + + class azure.mgmt.oracledatabase.models.ShapeFamily(str, Enum, metaclass=CaseInsensitiveEnumMeta): + EXADATA = "EXADATA" + EXADB_XS = "EXADB_XS" + + + class azure.mgmt.oracledatabase.models.ShapeFamilyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + EXADATA = "EXADATA" + EXADB_XS = "EXADB_XS" + SINGLE_NODE = "SINGLENODE" + VIRTUAL_MACHINE = "VIRTUALMACHINE" + + + class azure.mgmt.oracledatabase.models.SourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + BACKUP_FROM_ID = "BackupFromId" + BACKUP_FROM_TIMESTAMP = "BackupFromTimestamp" + CLONE_TO_REFRESHABLE = "CloneToRefreshable" + CROSS_REGION_DATAGUARD = "CrossRegionDataguard" + CROSS_REGION_DISASTER_RECOVERY = "CrossRegionDisasterRecovery" + DATABASE = "Database" + NONE = "None" + + + class azure.mgmt.oracledatabase.models.StorageManagementType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + LVM = "LVM" + + + class azure.mgmt.oracledatabase.models.StorageVolumePerformanceMode(str, Enum, metaclass=CaseInsensitiveEnumMeta): + BALANCED = "Balanced" + HIGH_PERFORMANCE = "HighPerformance" + + + class azure.mgmt.oracledatabase.models.SyntaxFormatType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + EZCONNECT = "Ezconnect" + EZCONNECTPLUS = "Ezconnectplus" + LONG = "Long" + + + class azure.mgmt.oracledatabase.models.SystemData(_Model): + created_at: Optional[datetime] + created_by: Optional[str] + created_by_type: Optional[Union[str, CreatedByType]] + last_modified_at: Optional[datetime] + last_modified_by: Optional[str] + last_modified_by_type: Optional[Union[str, CreatedByType]] + + @overload + def __init__( + self, + *, + created_at: Optional[datetime] = ..., + created_by: Optional[str] = ..., + created_by_type: Optional[Union[str, CreatedByType]] = ..., + last_modified_at: Optional[datetime] = ..., + last_modified_by: Optional[str] = ..., + last_modified_by_type: Optional[Union[str, CreatedByType]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.SystemShapes(str, Enum, metaclass=CaseInsensitiveEnumMeta): + EXADATA_X11_M = "Exadata.X11M" + EXADATA_X11_MV = "Exadata.X11MV" + EXADATA_X9_M = "Exadata.X9M" + EXA_DB_XS = "ExaDbXS" + + + class azure.mgmt.oracledatabase.models.SystemVersion(ProxyResource): + id: str + name: str + properties: Optional[SystemVersionProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[SystemVersionProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.SystemVersionProperties(_Model): + system_version: str + + @overload + def __init__( + self, + *, + system_version: str + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.TlsAuthenticationType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + MUTUAL = "Mutual" + SERVER = "Server" + + + class azure.mgmt.oracledatabase.models.TrackedResource(Resource): + id: str + location: str + name: str + system_data: SystemData + tags: Optional[dict[str, str]] + type: str + + @overload + def __init__( + self, + *, + location: str, + tags: Optional[dict[str, str]] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.VirtualNetworkAddress(ProxyResource): + id: str + name: str + properties: Optional[VirtualNetworkAddressProperties] + system_data: SystemData + type: str + + @overload + def __init__( + self, + *, + properties: Optional[VirtualNetworkAddressProperties] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.VirtualNetworkAddressLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AVAILABLE = "Available" + FAILED = "Failed" + PROVISIONING = "Provisioning" + TERMINATED = "Terminated" + TERMINATING = "Terminating" + + + class azure.mgmt.oracledatabase.models.VirtualNetworkAddressProperties(_Model): + domain: Optional[str] + ip_address: Optional[str] + lifecycle_details: Optional[str] + lifecycle_state: Optional[Union[str, VirtualNetworkAddressLifecycleState]] + ocid: Optional[str] + provisioning_state: Optional[Union[str, AzureResourceProvisioningState]] + time_assigned: Optional[datetime] + vm_ocid: Optional[str] + + @overload + def __init__( + self, + *, + ip_address: Optional[str] = ..., + vm_ocid: Optional[str] = ... + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: ... + + + class azure.mgmt.oracledatabase.models.WorkloadType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AJD = "AJD" + APEX = "APEX" + DW = "DW" + LH = "LH" + OLTP = "OLTP" + + + class azure.mgmt.oracledatabase.models.ZoneType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + PRIMARY = "Primary" + SECONDARY = "Secondary" + + +namespace azure.mgmt.oracledatabase.operations + + class azure.mgmt.oracledatabase.operations.AutonomousDatabaseBackupsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: AutonomousDatabaseBackup, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabaseBackup]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: AutonomousDatabaseBackup, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabaseBackup]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabaseBackup]: ... + + @distributed_trace + def begin_delete( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + properties: AutonomousDatabaseBackupUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabaseBackup]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + properties: AutonomousDatabaseBackupUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabaseBackup]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabaseBackup]: ... + + @distributed_trace + def get( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + **kwargs: Any + ) -> AutonomousDatabaseBackup: ... + + @distributed_trace + def list_by_parent( + self, + resource_group_name: str, + autonomousdatabasename: str, + **kwargs: Any + ) -> ItemPaged[AutonomousDatabaseBackup]: ... + + + class azure.mgmt.oracledatabase.operations.AutonomousDatabaseCharacterSetsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def get( + self, + location: str, + adbscharsetname: str, + **kwargs: Any + ) -> AutonomousDatabaseCharacterSet: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> ItemPaged[AutonomousDatabaseCharacterSet]: ... + + + class azure.mgmt.oracledatabase.operations.AutonomousDatabaseNationalCharacterSetsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def get( + self, + location: str, + adbsncharsetname: str, + **kwargs: Any + ) -> AutonomousDatabaseNationalCharacterSet: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> ItemPaged[AutonomousDatabaseNationalCharacterSet]: ... + + + class azure.mgmt.oracledatabase.operations.AutonomousDatabaseVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def get( + self, + location: str, + autonomousdbversionsname: str, + **kwargs: Any + ) -> AutonomousDbVersion: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> ItemPaged[AutonomousDbVersion]: ... + + + class azure.mgmt.oracledatabase.operations.AutonomousDatabasesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: AutonomousDatabaseLifecycleAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: AutonomousDatabaseLifecycleAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_change_disaster_recovery_configuration( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: DisasterRecoveryConfigurationDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_change_disaster_recovery_configuration( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: DisasterRecoveryConfigurationDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_change_disaster_recovery_configuration( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: AutonomousDatabase, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: AutonomousDatabase, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @distributed_trace + def begin_delete( + self, + resource_group_name: str, + autonomousdatabasename: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: RestoreAutonomousDatabaseDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: RestoreAutonomousDatabaseDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @distributed_trace + def begin_shrink( + self, + resource_group_name: str, + autonomousdatabasename: str, + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: AutonomousDatabaseUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: AutonomousDatabaseUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AutonomousDatabase]: ... + + @overload + def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: GenerateAutonomousDatabaseWalletDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AutonomousDatabaseWalletFile: ... + + @overload + def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: GenerateAutonomousDatabaseWalletDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AutonomousDatabaseWalletFile: ... + + @overload + def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AutonomousDatabaseWalletFile: ... + + @distributed_trace + def get( + self, + resource_group_name: str, + autonomousdatabasename: str, + **kwargs: Any + ) -> AutonomousDatabase: ... + + @distributed_trace + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[AutonomousDatabase]: ... + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[AutonomousDatabase]: ... + + + class azure.mgmt.oracledatabase.operations.CloudExadataInfrastructuresOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def begin_add_storage_capacity( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @overload + def begin_configure_exascale( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + body: ConfigureExascaleCloudExadataInfrastructureDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @overload + def begin_configure_exascale( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + body: ConfigureExascaleCloudExadataInfrastructureDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @overload + def begin_configure_exascale( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + resource: CloudExadataInfrastructure, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + resource: CloudExadataInfrastructure, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @distributed_trace + def begin_delete( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + properties: CloudExadataInfrastructureUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + properties: CloudExadataInfrastructureUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudExadataInfrastructure]: ... + + @distributed_trace + def get( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + **kwargs: Any + ) -> CloudExadataInfrastructure: ... + + @distributed_trace + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[CloudExadataInfrastructure]: ... + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[CloudExadataInfrastructure]: ... + + + class azure.mgmt.oracledatabase.operations.CloudVmClustersOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + resource: CloudVmCluster, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + resource: CloudVmCluster, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @distributed_trace + def begin_delete( + self, + resource_group_name: str, + cloudvmclustername: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: CloudVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: CloudVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[CloudVmCluster]: ... + + @distributed_trace + def get( + self, + resource_group_name: str, + cloudvmclustername: str, + **kwargs: Any + ) -> CloudVmCluster: ... + + @distributed_trace + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[CloudVmCluster]: ... + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[CloudVmCluster]: ... + + @overload + def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: PrivateIpAddressesFilter, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> List[PrivateIpAddressProperties]: ... + + @overload + def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: PrivateIpAddressesFilter, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> List[PrivateIpAddressProperties]: ... + + @overload + def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> List[PrivateIpAddressProperties]: ... + + + class azure.mgmt.oracledatabase.operations.DatabaseEditionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-04-01-preview', params_added_on={'2026-04-01-preview': ['api_version', 'subscription_id', 'location', 'databaseeditionname', 'accept']}, api_versions_list=['2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + location: str, + databaseeditionname: str, + **kwargs: Any + ) -> DatabaseEdition: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-04-01-preview', params_added_on={'2026-04-01-preview': ['api_version', 'subscription_id', 'location', 'accept']}, api_versions_list=['2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> ItemPaged[DatabaseEdition]: ... + + + class azure.mgmt.oracledatabase.operations.DatabaseSystemShapeResourcesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-04-01-preview', params_added_on={'2026-04-01-preview': ['api_version', 'subscription_id', 'location', 'databasesystemshapename', 'accept']}, api_versions_list=['2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + location: str, + databasesystemshapename: str, + **kwargs: Any + ) -> DatabaseSystemShape: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-04-01-preview', params_added_on={'2026-04-01-preview': ['api_version', 'subscription_id', 'location', 'shape_attribute', 'zone', 'availability_domain', 'database_shape_family', 'database_edition', 'accept']}, api_versions_list=['2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + *, + availability_domain: Optional[str] = ..., + database_edition: Optional[str] = ..., + database_shape_family: Optional[str] = ..., + shape_attribute: Optional[str] = ..., + zone: Optional[str] = ..., + **kwargs: Any + ) -> ItemPaged[DatabaseSystemShape]: ... + + + class azure.mgmt.oracledatabase.operations.DbNodesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbNode]: ... + + @overload + def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbNode]: ... + + @overload + def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbNode]: ... + + @distributed_trace + def get( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + **kwargs: Any + ) -> DbNode: ... + + @distributed_trace + def list_by_parent( + self, + resource_group_name: str, + cloudvmclustername: str, + **kwargs: Any + ) -> ItemPaged[DbNode]: ... + + + class azure.mgmt.oracledatabase.operations.DbServersOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def get( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + dbserverocid: str, + **kwargs: Any + ) -> DbServer: ... + + @distributed_trace + def list_by_parent( + self, + resource_group_name: str, + cloudexadatainfrastructurename: str, + **kwargs: Any + ) -> ItemPaged[DbServer]: ... + + + class azure.mgmt.oracledatabase.operations.DbSystemShapesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def get( + self, + location: str, + dbsystemshapename: str, + **kwargs: Any + ) -> DbSystemShape: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'location', 'zone', 'accept'], '2025-08-01-preview': ['shape_attribute']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + *, + shape_attribute: Optional[str] = ..., + zone: Optional[str] = ..., + **kwargs: Any + ) -> ItemPaged[DbSystemShape]: ... + + + class azure.mgmt.oracledatabase.operations.DbSystemsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + db_system_name: str, + resource: DbSystem, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbSystem]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + db_system_name: str, + resource: DbSystem, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbSystem]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + db_system_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbSystem]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'db_system_name']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def begin_delete( + self, + resource_group_name: str, + db_system_name: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + db_system_name: str, + properties: DbSystemUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbSystem]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + db_system_name: str, + properties: DbSystemUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbSystem]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + db_system_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbSystem]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'db_system_name', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + resource_group_name: str, + db_system_name: str, + **kwargs: Any + ) -> DbSystem: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[DbSystem]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[DbSystem]: ... + + + class azure.mgmt.oracledatabase.operations.DbVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'location', 'dbversionsname', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + location: str, + dbversionsname: str, + **kwargs: Any + ) -> DbVersion: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-07-01-preview', params_added_on={'2025-07-01-preview': ['api_version', 'subscription_id', 'location', 'db_system_shape', 'db_system_id', 'storage_management', 'is_upgrade_supported', 'is_database_software_image_supported', 'shape_family', 'accept']}, api_versions_list=['2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + *, + db_system_id: Optional[str] = ..., + db_system_shape: Optional[Union[str, BaseDbSystemShapes]] = ..., + is_database_software_image_supported: Optional[bool] = ..., + is_upgrade_supported: Optional[bool] = ..., + shape_family: Optional[Union[str, ShapeFamilyType]] = ..., + storage_management: Optional[Union[str, StorageManagementType]] = ..., + **kwargs: Any + ) -> ItemPaged[DbVersion]: ... + + + class azure.mgmt.oracledatabase.operations.DnsPrivateViewsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def get( + self, + location: str, + dnsprivateviewocid: str, + **kwargs: Any + ) -> DnsPrivateView: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> ItemPaged[DnsPrivateView]: ... + + + class azure.mgmt.oracledatabase.operations.DnsPrivateZonesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def get( + self, + location: str, + dnsprivatezonename: str, + **kwargs: Any + ) -> DnsPrivateZone: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> ItemPaged[DnsPrivateZone]: ... + + + class azure.mgmt.oracledatabase.operations.ExadbVmClustersOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + resource: ExadbVmCluster, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExadbVmCluster]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + resource: ExadbVmCluster, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExadbVmCluster]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExadbVmCluster]: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exadb_vm_cluster_name']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def begin_delete( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_remove_vms( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + body: RemoveVirtualMachineFromExadbVmClusterDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExadbVmCluster]: ... + + @overload + def begin_remove_vms( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + body: RemoveVirtualMachineFromExadbVmClusterDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExadbVmCluster]: ... + + @overload + def begin_remove_vms( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExadbVmCluster]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + properties: ExadbVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExadbVmCluster]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + properties: ExadbVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExadbVmCluster]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExadbVmCluster]: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exadb_vm_cluster_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + **kwargs: Any + ) -> ExadbVmCluster: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[ExadbVmCluster]: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[ExadbVmCluster]: ... + + + class azure.mgmt.oracledatabase.operations.ExascaleDbNodesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_action( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbActionResponse]: ... + + @overload + def begin_action( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbActionResponse]: ... + + @overload + def begin_action( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[DbActionResponse]: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exadb_vm_cluster_name', 'exascale_db_node_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + **kwargs: Any + ) -> ExascaleDbNode: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exadb_vm_cluster_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_parent( + self, + resource_group_name: str, + exadb_vm_cluster_name: str, + **kwargs: Any + ) -> ItemPaged[ExascaleDbNode]: ... + + + class azure.mgmt.oracledatabase.operations.ExascaleDbStorageVaultsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_create( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + resource: ExascaleDbStorageVault, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExascaleDbStorageVault]: ... + + @overload + def begin_create( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + resource: ExascaleDbStorageVault, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExascaleDbStorageVault]: ... + + @overload + def begin_create( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExascaleDbStorageVault]: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exascale_db_storage_vault_name']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def begin_delete( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: ExascaleDbStorageVaultTagsUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExascaleDbStorageVault]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: ExascaleDbStorageVaultTagsUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExascaleDbStorageVault]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ExascaleDbStorageVault]: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'exascale_db_storage_vault_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + **kwargs: Any + ) -> ExascaleDbStorageVault: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[ExascaleDbStorageVault]: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[ExascaleDbStorageVault]: ... + + + class azure.mgmt.oracledatabase.operations.FlexComponentsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-01-01-preview', params_added_on={'2025-01-01-preview': ['api_version', 'subscription_id', 'location', 'flex_component_name', 'accept']}, api_versions_list=['2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + location: str, + flex_component_name: str, + **kwargs: Any + ) -> FlexComponent: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-01-01-preview', params_added_on={'2025-01-01-preview': ['api_version', 'subscription_id', 'location', 'shape', 'accept']}, api_versions_list=['2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_parent( + self, + location: str, + *, + shape: Optional[Union[str, SystemShapes]] = ..., + **kwargs: Any + ) -> ItemPaged[FlexComponent]: ... + + + class azure.mgmt.oracledatabase.operations.GiMinorVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'location', 'giversionname', 'gi_minor_version_name', 'accept']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + location: str, + giversionname: str, + gi_minor_version_name: str, + **kwargs: Any + ) -> GiMinorVersion: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'location', 'giversionname', 'shape_family', 'zone', 'accept'], '2026-04-01-preview': ['shape', 'is_gi_version_for_provisioning', 'sort_order']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_parent( + self, + location: str, + giversionname: str, + *, + is_gi_version_for_provisioning: Optional[bool] = ..., + shape: Optional[str] = ..., + shape_family: Optional[Union[str, ShapeFamily]] = ..., + sort_order: Optional[Union[str, GiMinorVersionSortOrder]] = ..., + zone: Optional[str] = ..., + **kwargs: Any + ) -> ItemPaged[GiMinorVersion]: ... + + + class azure.mgmt.oracledatabase.operations.GiVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def get( + self, + location: str, + giversionname: str, + **kwargs: Any + ) -> GiVersion: ... + + @distributed_trace + @api_version_validation(method_added_on='2024-12-01-preview', params_added_on={'2024-12-01-preview': ['api_version', 'subscription_id', 'location', 'shape', 'zone', 'accept'], '2025-08-01-preview': ['shape_attribute']}, api_versions_list=['2024-12-01-preview', '2025-01-01-preview', '2025-03-01', '2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_location( + self, + location: str, + *, + shape: Optional[Union[str, SystemShapes]] = ..., + shape_attribute: Optional[str] = ..., + zone: Optional[str] = ..., + **kwargs: Any + ) -> ItemPaged[GiVersion]: ... + + + class azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedDeployment]: ... + + @overload + def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedDeployment]: ... + + @overload + def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedDeployment]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: GoldenGateConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateConnection]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: GoldenGateConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateConnection]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateConnection]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_connection_name']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def begin_delete( + self, + resource_group_name: str, + golden_gate_connection_name: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedDeployment]: ... + + @overload + def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedDeployment]: ... + + @overload + def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedDeployment]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: GoldenGateConnectionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateConnection]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: GoldenGateConnectionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateConnection]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateConnection]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_connection_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + resource_group_name: str, + golden_gate_connection_name: str, + **kwargs: Any + ) -> GoldenGateConnection: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_connection_name', 'assignment_id', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get_assigned_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + assignment_id: str, + **kwargs: Any + ) -> AssignedDeployment: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_connection_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_assigned_deployments_by_parent( + self, + resource_group_name: str, + golden_gate_connection_name: str, + **kwargs: Any + ) -> ItemPaged[AssignedDeployment]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[GoldenGateConnection]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[GoldenGateConnection]: ... + + + class azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedConnection]: ... + + @overload + def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedConnection]: ... + + @overload + def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedConnection]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: GoldenGateDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateDeployment]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: GoldenGateDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateDeployment]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateDeployment]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_deployment_name']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def begin_delete( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedConnection]: ... + + @overload + def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedConnection]: ... + + @overload + def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[AssignedConnection]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: GoldenGateDeploymentUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateDeployment]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: GoldenGateDeploymentUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateDeployment]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[GoldenGateDeployment]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_deployment_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + **kwargs: Any + ) -> GoldenGateDeployment: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_deployment_name', 'assignment_id', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get_assigned_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + assignment_id: str, + **kwargs: Any + ) -> AssignedConnection: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'golden_gate_deployment_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_assigned_connections_by_parent( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + **kwargs: Any + ) -> ItemPaged[AssignedConnection]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[GoldenGateDeployment]: ... + + @distributed_trace + @api_version_validation(method_added_on='2026-03-01-preview', params_added_on={'2026-03-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[GoldenGateDeployment]: ... + + + class azure.mgmt.oracledatabase.operations.NetworkAnchorsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + network_anchor_name: str, + resource: NetworkAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[NetworkAnchor]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + network_anchor_name: str, + resource: NetworkAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[NetworkAnchor]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + network_anchor_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[NetworkAnchor]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'network_anchor_name']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def begin_delete( + self, + resource_group_name: str, + network_anchor_name: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + network_anchor_name: str, + properties: NetworkAnchorUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[NetworkAnchor]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + network_anchor_name: str, + properties: NetworkAnchorUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[NetworkAnchor]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + network_anchor_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[NetworkAnchor]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'network_anchor_name', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + resource_group_name: str, + network_anchor_name: str, + **kwargs: Any + ) -> NetworkAnchor: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[NetworkAnchor]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[NetworkAnchor]: ... + + + class azure.mgmt.oracledatabase.operations.Operations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def list(self, **kwargs: Any) -> ItemPaged[Operation]: ... + + + class azure.mgmt.oracledatabase.operations.OracleSubscriptionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_add_azure_subscriptions( + self, + body: AzureSubscriptions, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_add_azure_subscriptions( + self, + body: AzureSubscriptions, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_add_azure_subscriptions( + self, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_create_or_update( + self, + resource: OracleSubscription, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[OracleSubscription]: ... + + @overload + def begin_create_or_update( + self, + resource: OracleSubscription, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[OracleSubscription]: ... + + @overload + def begin_create_or_update( + self, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[OracleSubscription]: ... + + @distributed_trace + def begin_delete(self, **kwargs: Any) -> LROPoller[None]: ... + + @distributed_trace + def begin_list_activation_links(self, **kwargs: Any) -> LROPoller[ActivationLinks]: ... + + @distributed_trace + def begin_list_cloud_account_details(self, **kwargs: Any) -> LROPoller[CloudAccountDetails]: ... + + @distributed_trace + def begin_list_saas_subscription_details(self, **kwargs: Any) -> LROPoller[SaasSubscriptionDetails]: ... + + @overload + def begin_update( + self, + properties: OracleSubscriptionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[OracleSubscription]: ... + + @overload + def begin_update( + self, + properties: OracleSubscriptionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[OracleSubscription]: ... + + @overload + def begin_update( + self, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[OracleSubscription]: ... + + @distributed_trace + def get(self, **kwargs: Any) -> OracleSubscription: ... + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[OracleSubscription]: ... + + + class azure.mgmt.oracledatabase.operations.ResourceAnchorsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: ResourceAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ResourceAnchor]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: ResourceAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ResourceAnchor]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ResourceAnchor]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'resource_anchor_name']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def begin_delete( + self, + resource_group_name: str, + resource_anchor_name: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + resource_anchor_name: str, + properties: ResourceAnchorUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ResourceAnchor]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + resource_anchor_name: str, + properties: ResourceAnchorUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ResourceAnchor]: ... + + @overload + def begin_update( + self, + resource_group_name: str, + resource_anchor_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[ResourceAnchor]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'resource_anchor_name', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def get( + self, + resource_group_name: str, + resource_anchor_name: str, + **kwargs: Any + ) -> ResourceAnchor: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'resource_group_name', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_resource_group( + self, + resource_group_name: str, + **kwargs: Any + ) -> ItemPaged[ResourceAnchor]: ... + + @distributed_trace + @api_version_validation(method_added_on='2025-04-01-preview', params_added_on={'2025-04-01-preview': ['api_version', 'subscription_id', 'accept']}, api_versions_list=['2025-04-01-preview', '2025-06-01-preview', '2025-07-01-preview', '2025-08-01-preview', '2025-08-15-preview', '2025-09-01', '2025-11-01-preview', '2025-11-15-preview', '2025-12-01-preview', '2026-01-01-preview', '2026-02-01-preview', '2026-03-01-preview', '2026-04-01-preview', '2026-05-01-preview', '2026-06-01']) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged[ResourceAnchor]: ... + + + class azure.mgmt.oracledatabase.operations.SystemVersionsOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @distributed_trace + def get( + self, + location: str, + systemversionname: str, + **kwargs: Any + ) -> SystemVersion: ... + + @distributed_trace + def list_by_location( + self, + location: str, + **kwargs: Any + ) -> ItemPaged[SystemVersion]: ... + + + class azure.mgmt.oracledatabase.operations.VirtualNetworkAddressesOperations: + + def __init__( + self, + *args, + **kwargs + ) -> None: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: VirtualNetworkAddress, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[VirtualNetworkAddress]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: VirtualNetworkAddress, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[VirtualNetworkAddress]: ... + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[VirtualNetworkAddress]: ... + + @distributed_trace + def begin_delete( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + **kwargs: Any + ) -> LROPoller[None]: ... + + @distributed_trace + def get( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + **kwargs: Any + ) -> VirtualNetworkAddress: ... + + @distributed_trace + def list_by_parent( + self, + resource_group_name: str, + cloudvmclustername: str, + **kwargs: Any + ) -> ItemPaged[VirtualNetworkAddress]: ... + + +namespace azure.mgmt.oracledatabase.types + + class azure.mgmt.oracledatabase.types.AddRemoveDbNode(TypedDict, total=False): + key "dbServers": Required[list[str]] + dbServers: list[str] + + + class azure.mgmt.oracledatabase.types.AllConnectionStringType(TypedDict, total=False): + key "high": str + key "low": str + key "medium": str + high: str + low: str + medium: str + + + class azure.mgmt.oracledatabase.types.ApexDetailsType(TypedDict, total=False): + key "apexVersion": str + key "ordsVersion": str + apexVersion: str + ordsVersion: str + + + class azure.mgmt.oracledatabase.types.AssignUnassignConnection(TypedDict, total=False): + key "connectionId": Required[str] + connectionId: str + + + class azure.mgmt.oracledatabase.types.AssignUnassignDeployment(TypedDict, total=False): + key "deploymentId": Required[str] + deploymentId: str + + + class azure.mgmt.oracledatabase.types.AutonomousDatabase(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('AutonomousDatabaseBaseProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + properties: AutonomousDatabaseBaseProperties + systemData: SystemData + tags: dict[str, str] + type: str + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseBackup(ProxyResource): + key "id": str + key "name": str + key "properties": ForwardRef('AutonomousDatabaseBackupProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + name: str + properties: AutonomousDatabaseBackupProperties + systemData: SystemData + type: str + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseBackupProperties(TypedDict, total=False): + key "autonomousDatabaseOcid": str + key "backupDestination": Union[str, BackupDestinationType] + key "backupType": Union[str, AutonomousDatabaseBackupType] + key "databaseSizeInTbs": float + key "dbVersion": str + key "displayName": str + key "isAutomatic": bool + key "isRestorable": bool + key "lifecycleDetails": str + key "lifecycleState": Union[str, AutonomousDatabaseBackupLifecycleState] + key "ocid": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "retentionPeriodInDays": int + key "sizeInTbs": float + key "timeAvailableTil": str + key "timeEnded": str + key "timeStarted": str + autonomousDatabaseOcid: str + backupDestination: Union[str, BackupDestinationType] + backupType: Union[str, AutonomousDatabaseBackupType] + databaseSizeInTbs: float + dbVersion: str + displayName: str + isAutomatic: bool + isRestorable: bool + lifecycleDetails: str + lifecycleState: Union[str, AutonomousDatabaseBackupLifecycleState] + ocid: str + provisioningState: Union[str, AzureResourceProvisioningState] + retentionPeriodInDays: int + sizeInTbs: float + timeAvailableTil: str + timeEnded: str + timeStarted: str + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseBackupUpdate(TypedDict, total=False): + key "properties": ForwardRef('AutonomousDatabaseBackupUpdateProperties', module='types') + properties: AutonomousDatabaseBackupUpdateProperties + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseBackupUpdateProperties(TypedDict, total=False): + key "retentionPeriodInDays": int + retentionPeriodInDays: int + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseCloneProperties(TypedDict, total=False): + key "actualUsedDataStorageSizeInTbs": float + key "adminPassword": str + key "allocatedStorageSizeInTbs": float + key "apexDetails": ForwardRef('ApexDetailsType', module='types') + key "autonomousDatabaseId": str + key "autonomousMaintenanceScheduleType": Union[str, AutonomousMaintenanceScheduleType] + key "backupDestination": Union[str, BackupDestinationType] + key "backupRetentionPeriodInDays": int + key "characterSet": str + key "cloneType": Required[Union[str, CloneType]] + key "computeCount": float + key "computeModel": Union[str, ComputeModel] + key "connectionStrings": ForwardRef('ConnectionStringType', module='types') + key "connectionUrls": ForwardRef('ConnectionUrlType', module='types') + key "cpuCoreCount": int + key "dataBaseType": Required[Literal[DataBaseType.CLONE]] + key "dataSafeStatus": Union[str, DataSafeStatusType] + key "dataStorageSizeInGbs": int + key "dataStorageSizeInTbs": int + key "databaseEdition": Union[str, DatabaseEditionType] + key "dbVersion": str + key "dbWorkload": Union[str, WorkloadType] + key "displayName": str + key "failedDataRecoveryInSeconds": int + key "inMemoryAreaInGbs": int + key "isAutoScalingEnabled": bool + key "isAutoScalingForStorageEnabled": bool + key "isLocalDataGuardEnabled": bool + key "isMtlsConnectionRequired": bool + key "isPreview": bool + key "isPreviewVersionWithServiceTermsAccepted": bool + key "isReconnectCloneEnabled": bool + key "isRefreshableClone": bool + key "isRemoteDataGuardEnabled": bool + key "isScheduleAzUpdateToEarliest": bool + key "licenseModel": Union[str, LicenseModel] + key "lifecycleDetails": str + key "lifecycleState": Union[str, AutonomousDatabaseLifecycleState] + key "localAdgAutoFailoverMaxDataLossLimit": int + key "localDisasterRecoveryType": Union[str, DisasterRecoveryType] + key "localStandbyDb": ForwardRef('AutonomousDatabaseStandbySummary', module='types') + key "longTermBackupSchedule": ForwardRef('LongTermBackUpScheduleDetails', module='types') + key "memoryPerOracleComputeUnitInGbs": int + key "ncharacterSet": str + key "networkAnchorId": str + key "nextLongTermBackupTimeStamp": str + key "ociUrl": str + key "ocid": str + key "openMode": Union[str, OpenModeType] + key "operationsInsightsStatus": Union[str, OperationsInsightsStatusType] + key "peerDbId": str + key "permissionLevel": Union[str, PermissionLevelType] + key "privateEndpoint": str + key "privateEndpointIp": str + key "privateEndpointLabel": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "refreshableModel": Union[str, RefreshableModelType] + key "refreshableStatus": Union[str, RefreshableStatusType] + key "remoteDisasterRecoveryConfiguration": ForwardRef('DisasterRecoveryConfigurationDetails', module='types') + key "resourceAnchorId": str + key "role": Union[str, RoleType] + key "serviceConsoleUrl": str + key "source": Union[str, SourceType] + key "sourceId": Required[str] + key "sqlWebDeveloperUrl": str + key "subnetId": str + key "timeCreated": str + key "timeDataGuardRoleChanged": str + key "timeDeletionOfFreeAutonomousDatabase": str + key "timeDisasterRecoveryRoleChanged": str + key "timeLocalDataGuardEnabled": str + key "timeMaintenanceBegin": str + key "timeMaintenanceEnd": str + key "timeOfLastFailover": str + key "timeOfLastRefresh": str + key "timeOfLastRefreshPoint": str + key "timeOfLastSwitchover": str + key "timeReclamationOfFreeAutonomousDatabase": str + key "timeScheduledAzUpdate": str + key "timeUntilReconnectCloneEnabled": str + key "usedDataStorageSizeInGbs": int + key "usedDataStorageSizeInTbs": int + key "vnetId": str + key "zone": str + actualUsedDataStorageSizeInTbs: float + adminPassword: str + allocatedStorageSizeInTbs: float + apexDetails: ApexDetailsType + autonomousDatabaseId: str + autonomousMaintenanceScheduleType: Union[str, AutonomousMaintenanceScheduleType] + availableUpgradeVersions: list[str] + backupDestination: Union[str, BackupDestinationType] + backupRetentionPeriodInDays: int + characterSet: str + cloneType: Union[str, CloneType] + computeCount: float + computeModel: Union[str, ComputeModel] + connectionStrings: ConnectionStringType + connectionUrls: ConnectionUrlType + cpuCoreCount: int + customerContacts: list[CustomerContact] + dataBaseType: Literal[DataBaseType.CLONE] + dataSafeStatus: Union[str, DataSafeStatusType] + dataStorageSizeInGbs: int + dataStorageSizeInTbs: int + databaseEdition: Union[str, DatabaseEditionType] + dbVersion: str + dbWorkload: Union[str, WorkloadType] + displayName: str + failedDataRecoveryInSeconds: int + inMemoryAreaInGbs: int + isAutoScalingEnabled: bool + isAutoScalingForStorageEnabled: bool + isLocalDataGuardEnabled: bool + isMtlsConnectionRequired: bool + isPreview: bool + isPreviewVersionWithServiceTermsAccepted: bool + isReconnectCloneEnabled: bool + isRefreshableClone: bool + isRemoteDataGuardEnabled: bool + isScheduleAzUpdateToEarliest: bool + licenseModel: Union[str, LicenseModel] + lifecycleDetails: str + lifecycleState: Union[str, AutonomousDatabaseLifecycleState] + localAdgAutoFailoverMaxDataLossLimit: int + localDisasterRecoveryType: Union[str, DisasterRecoveryType] + localStandbyDb: AutonomousDatabaseStandbySummary + longTermBackupSchedule: LongTermBackUpScheduleDetails + memoryPerOracleComputeUnitInGbs: int + ncharacterSet: str + networkAnchorId: str + nextLongTermBackupTimeStamp: str + ociUrl: str + ocid: str + openMode: Union[str, OpenModeType] + operationsInsightsStatus: Union[str, OperationsInsightsStatusType] + peerDbId: str + peerDbIds: list[str] + permissionLevel: Union[str, PermissionLevelType] + privateEndpoint: str + privateEndpointIp: str + privateEndpointLabel: str + provisionableCpus: list[int] + provisioningState: Union[str, AzureResourceProvisioningState] + refreshableModel: Union[str, RefreshableModelType] + refreshableStatus: Union[str, RefreshableStatusType] + remoteDisasterRecoveryConfiguration: DisasterRecoveryConfigurationDetails + resourceAnchorId: str + role: Union[str, RoleType] + scheduledOperationsList: list[ScheduledOperationsType] + serviceConsoleUrl: str + source: Union[str, SourceType] + sourceId: str + sqlWebDeveloperUrl: str + subnetId: str + supportedRegionsToCloneTo: list[str] + timeCreated: str + timeDataGuardRoleChanged: str + timeDeletionOfFreeAutonomousDatabase: str + timeDisasterRecoveryRoleChanged: str + timeLocalDataGuardEnabled: str + timeMaintenanceBegin: str + timeMaintenanceEnd: str + timeOfLastFailover: str + timeOfLastRefresh: str + timeOfLastRefreshPoint: str + timeOfLastSwitchover: str + timeReclamationOfFreeAutonomousDatabase: str + timeScheduledAzUpdate: str + timeUntilReconnectCloneEnabled: str + usedDataStorageSizeInGbs: int + usedDataStorageSizeInTbs: int + vnetId: str + whitelistedIps: list[str] + zone: str + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseCrossRegionDisasterRecoveryProperties(TypedDict, total=False): + key "actualUsedDataStorageSizeInTbs": float + key "adminPassword": str + key "allocatedStorageSizeInTbs": float + key "apexDetails": ForwardRef('ApexDetailsType', module='types') + key "autonomousDatabaseId": str + key "autonomousMaintenanceScheduleType": Union[str, AutonomousMaintenanceScheduleType] + key "backupDestination": Union[str, BackupDestinationType] + key "backupRetentionPeriodInDays": int + key "characterSet": str + key "computeCount": float + key "computeModel": Union[str, ComputeModel] + key "connectionStrings": ForwardRef('ConnectionStringType', module='types') + key "connectionUrls": ForwardRef('ConnectionUrlType', module='types') + key "cpuCoreCount": int + key "dataBaseType": Required[Literal[DataBaseType.CROSS_REGION_DISASTER_RECOVERY]] + key "dataSafeStatus": Union[str, DataSafeStatusType] + key "dataStorageSizeInGbs": int + key "dataStorageSizeInTbs": int + key "databaseEdition": Union[str, DatabaseEditionType] + key "dbVersion": str + key "dbWorkload": Union[str, WorkloadType] + key "displayName": str + key "failedDataRecoveryInSeconds": int + key "inMemoryAreaInGbs": int + key "isAutoScalingEnabled": bool + key "isAutoScalingForStorageEnabled": bool + key "isLocalDataGuardEnabled": bool + key "isMtlsConnectionRequired": bool + key "isPreview": bool + key "isPreviewVersionWithServiceTermsAccepted": bool + key "isRemoteDataGuardEnabled": bool + key "isReplicateAutomaticBackups": bool + key "isScheduleAzUpdateToEarliest": bool + key "licenseModel": Union[str, LicenseModel] + key "lifecycleDetails": str + key "lifecycleState": Union[str, AutonomousDatabaseLifecycleState] + key "localAdgAutoFailoverMaxDataLossLimit": int + key "localDisasterRecoveryType": Union[str, DisasterRecoveryType] + key "localStandbyDb": ForwardRef('AutonomousDatabaseStandbySummary', module='types') + key "longTermBackupSchedule": ForwardRef('LongTermBackUpScheduleDetails', module='types') + key "memoryPerOracleComputeUnitInGbs": int + key "ncharacterSet": str + key "networkAnchorId": str + key "nextLongTermBackupTimeStamp": str + key "ociUrl": str + key "ocid": str + key "openMode": Union[str, OpenModeType] + key "operationsInsightsStatus": Union[str, OperationsInsightsStatusType] + key "peerDbId": str + key "permissionLevel": Union[str, PermissionLevelType] + key "privateEndpoint": str + key "privateEndpointIp": str + key "privateEndpointLabel": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "remoteDisasterRecoveryConfiguration": ForwardRef('DisasterRecoveryConfigurationDetails', module='types') + key "remoteDisasterRecoveryType": Required[Union[str, DisasterRecoveryType]] + key "resourceAnchorId": str + key "role": Union[str, RoleType] + key "serviceConsoleUrl": str + key "source": Required[Literal[SourceType.CROSS_REGION_DISASTER_RECOVERY]] + key "sourceId": Required[str] + key "sourceLocation": str + key "sourceOcid": str + key "sqlWebDeveloperUrl": str + key "subnetId": str + key "timeCreated": str + key "timeDataGuardRoleChanged": str + key "timeDeletionOfFreeAutonomousDatabase": str + key "timeDisasterRecoveryRoleChanged": str + key "timeLocalDataGuardEnabled": str + key "timeMaintenanceBegin": str + key "timeMaintenanceEnd": str + key "timeOfLastFailover": str + key "timeOfLastRefresh": str + key "timeOfLastRefreshPoint": str + key "timeOfLastSwitchover": str + key "timeReclamationOfFreeAutonomousDatabase": str + key "timeScheduledAzUpdate": str + key "usedDataStorageSizeInGbs": int + key "usedDataStorageSizeInTbs": int + key "vnetId": str + key "zone": str + actualUsedDataStorageSizeInTbs: float + adminPassword: str + allocatedStorageSizeInTbs: float + apexDetails: ApexDetailsType + autonomousDatabaseId: str + autonomousMaintenanceScheduleType: Union[str, AutonomousMaintenanceScheduleType] + availableUpgradeVersions: list[str] + backupDestination: Union[str, BackupDestinationType] + backupRetentionPeriodInDays: int + characterSet: str + computeCount: float + computeModel: Union[str, ComputeModel] + connectionStrings: ConnectionStringType + connectionUrls: ConnectionUrlType + cpuCoreCount: int + customerContacts: list[CustomerContact] + dataBaseType: Literal[DataBaseType.CROSS_REGION_DISASTER_RECOVERY] + dataSafeStatus: Union[str, DataSafeStatusType] + dataStorageSizeInGbs: int + dataStorageSizeInTbs: int + databaseEdition: Union[str, DatabaseEditionType] + dbVersion: str + dbWorkload: Union[str, WorkloadType] + displayName: str + failedDataRecoveryInSeconds: int + inMemoryAreaInGbs: int + isAutoScalingEnabled: bool + isAutoScalingForStorageEnabled: bool + isLocalDataGuardEnabled: bool + isMtlsConnectionRequired: bool + isPreview: bool + isPreviewVersionWithServiceTermsAccepted: bool + isRemoteDataGuardEnabled: bool + isReplicateAutomaticBackups: bool + isScheduleAzUpdateToEarliest: bool + licenseModel: Union[str, LicenseModel] + lifecycleDetails: str + lifecycleState: Union[str, AutonomousDatabaseLifecycleState] + localAdgAutoFailoverMaxDataLossLimit: int + localDisasterRecoveryType: Union[str, DisasterRecoveryType] + localStandbyDb: AutonomousDatabaseStandbySummary + longTermBackupSchedule: LongTermBackUpScheduleDetails + memoryPerOracleComputeUnitInGbs: int + ncharacterSet: str + networkAnchorId: str + nextLongTermBackupTimeStamp: str + ociUrl: str + ocid: str + openMode: Union[str, OpenModeType] + operationsInsightsStatus: Union[str, OperationsInsightsStatusType] + peerDbId: str + peerDbIds: list[str] + permissionLevel: Union[str, PermissionLevelType] + privateEndpoint: str + privateEndpointIp: str + privateEndpointLabel: str + provisionableCpus: list[int] + provisioningState: Union[str, AzureResourceProvisioningState] + remoteDisasterRecoveryConfiguration: DisasterRecoveryConfigurationDetails + remoteDisasterRecoveryType: Union[str, DisasterRecoveryType] + resourceAnchorId: str + role: Union[str, RoleType] + scheduledOperationsList: list[ScheduledOperationsType] + serviceConsoleUrl: str + source: Literal[SourceType.CROSS_REGION_DISASTER_RECOVERY] + sourceId: str + sourceLocation: str + sourceOcid: str + sqlWebDeveloperUrl: str + subnetId: str + supportedRegionsToCloneTo: list[str] + timeCreated: str + timeDataGuardRoleChanged: str + timeDeletionOfFreeAutonomousDatabase: str + timeDisasterRecoveryRoleChanged: str + timeLocalDataGuardEnabled: str + timeMaintenanceBegin: str + timeMaintenanceEnd: str + timeOfLastFailover: str + timeOfLastRefresh: str + timeOfLastRefreshPoint: str + timeOfLastSwitchover: str + timeReclamationOfFreeAutonomousDatabase: str + timeScheduledAzUpdate: str + usedDataStorageSizeInGbs: int + usedDataStorageSizeInTbs: int + vnetId: str + whitelistedIps: list[str] + zone: str + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseFromBackupTimestampProperties(TypedDict, total=False): + key "actualUsedDataStorageSizeInTbs": float + key "adminPassword": str + key "allocatedStorageSizeInTbs": float + key "apexDetails": ForwardRef('ApexDetailsType', module='types') + key "autonomousDatabaseId": str + key "autonomousMaintenanceScheduleType": Union[str, AutonomousMaintenanceScheduleType] + key "backupDestination": Union[str, BackupDestinationType] + key "backupRetentionPeriodInDays": int + key "characterSet": str + key "cloneType": Required[Union[str, CloneType]] + key "computeCount": float + key "computeModel": Union[str, ComputeModel] + key "connectionStrings": ForwardRef('ConnectionStringType', module='types') + key "connectionUrls": ForwardRef('ConnectionUrlType', module='types') + key "cpuCoreCount": int + key "dataBaseType": Required[Literal[DataBaseType.CLONE_FROM_BACKUP_TIMESTAMP]] + key "dataSafeStatus": Union[str, DataSafeStatusType] + key "dataStorageSizeInGbs": int + key "dataStorageSizeInTbs": int + key "databaseEdition": Union[str, DatabaseEditionType] + key "dbVersion": str + key "dbWorkload": Union[str, WorkloadType] + key "displayName": str + key "failedDataRecoveryInSeconds": int + key "inMemoryAreaInGbs": int + key "isAutoScalingEnabled": bool + key "isAutoScalingForStorageEnabled": bool + key "isLocalDataGuardEnabled": bool + key "isMtlsConnectionRequired": bool + key "isPreview": bool + key "isPreviewVersionWithServiceTermsAccepted": bool + key "isRemoteDataGuardEnabled": bool + key "isScheduleAzUpdateToEarliest": bool + key "licenseModel": Union[str, LicenseModel] + key "lifecycleDetails": str + key "lifecycleState": Union[str, AutonomousDatabaseLifecycleState] + key "localAdgAutoFailoverMaxDataLossLimit": int + key "localDisasterRecoveryType": Union[str, DisasterRecoveryType] + key "localStandbyDb": ForwardRef('AutonomousDatabaseStandbySummary', module='types') + key "longTermBackupSchedule": ForwardRef('LongTermBackUpScheduleDetails', module='types') + key "memoryPerOracleComputeUnitInGbs": int + key "ncharacterSet": str + key "networkAnchorId": str + key "nextLongTermBackupTimeStamp": str + key "ociUrl": str + key "ocid": str + key "openMode": Union[str, OpenModeType] + key "operationsInsightsStatus": Union[str, OperationsInsightsStatusType] + key "peerDbId": str + key "permissionLevel": Union[str, PermissionLevelType] + key "privateEndpoint": str + key "privateEndpointIp": str + key "privateEndpointLabel": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "remoteDisasterRecoveryConfiguration": ForwardRef('DisasterRecoveryConfigurationDetails', module='types') + key "resourceAnchorId": str + key "role": Union[str, RoleType] + key "serviceConsoleUrl": str + key "source": Required[Literal[SourceType.BACKUP_FROM_TIMESTAMP]] + key "sourceId": Required[str] + key "sqlWebDeveloperUrl": str + key "subnetId": str + key "timeCreated": str + key "timeDataGuardRoleChanged": str + key "timeDeletionOfFreeAutonomousDatabase": str + key "timeDisasterRecoveryRoleChanged": str + key "timeLocalDataGuardEnabled": str + key "timeMaintenanceBegin": str + key "timeMaintenanceEnd": str + key "timeOfLastFailover": str + key "timeOfLastRefresh": str + key "timeOfLastRefreshPoint": str + key "timeOfLastSwitchover": str + key "timeReclamationOfFreeAutonomousDatabase": str + key "timeScheduledAzUpdate": str + key "timestamp": str + key "useLatestAvailableBackupTimeStamp": bool + key "usedDataStorageSizeInGbs": int + key "usedDataStorageSizeInTbs": int + key "vnetId": str + key "zone": str + actualUsedDataStorageSizeInTbs: float + adminPassword: str + allocatedStorageSizeInTbs: float + apexDetails: ApexDetailsType + autonomousDatabaseId: str + autonomousMaintenanceScheduleType: Union[str, AutonomousMaintenanceScheduleType] + availableUpgradeVersions: list[str] + backupDestination: Union[str, BackupDestinationType] + backupRetentionPeriodInDays: int + characterSet: str + cloneType: Union[str, CloneType] + computeCount: float + computeModel: Union[str, ComputeModel] + connectionStrings: ConnectionStringType + connectionUrls: ConnectionUrlType + cpuCoreCount: int + customerContacts: list[CustomerContact] + dataBaseType: Literal[DataBaseType.CLONE_FROM_BACKUP_TIMESTAMP] + dataSafeStatus: Union[str, DataSafeStatusType] + dataStorageSizeInGbs: int + dataStorageSizeInTbs: int + databaseEdition: Union[str, DatabaseEditionType] + dbVersion: str + dbWorkload: Union[str, WorkloadType] + displayName: str + failedDataRecoveryInSeconds: int + inMemoryAreaInGbs: int + isAutoScalingEnabled: bool + isAutoScalingForStorageEnabled: bool + isLocalDataGuardEnabled: bool + isMtlsConnectionRequired: bool + isPreview: bool + isPreviewVersionWithServiceTermsAccepted: bool + isRemoteDataGuardEnabled: bool + isScheduleAzUpdateToEarliest: bool + licenseModel: Union[str, LicenseModel] + lifecycleDetails: str + lifecycleState: Union[str, AutonomousDatabaseLifecycleState] + localAdgAutoFailoverMaxDataLossLimit: int + localDisasterRecoveryType: Union[str, DisasterRecoveryType] + localStandbyDb: AutonomousDatabaseStandbySummary + longTermBackupSchedule: LongTermBackUpScheduleDetails + memoryPerOracleComputeUnitInGbs: int + ncharacterSet: str + networkAnchorId: str + nextLongTermBackupTimeStamp: str + ociUrl: str + ocid: str + openMode: Union[str, OpenModeType] + operationsInsightsStatus: Union[str, OperationsInsightsStatusType] + peerDbId: str + peerDbIds: list[str] + permissionLevel: Union[str, PermissionLevelType] + privateEndpoint: str + privateEndpointIp: str + privateEndpointLabel: str + provisionableCpus: list[int] + provisioningState: Union[str, AzureResourceProvisioningState] + remoteDisasterRecoveryConfiguration: DisasterRecoveryConfigurationDetails + resourceAnchorId: str + role: Union[str, RoleType] + scheduledOperationsList: list[ScheduledOperationsType] + serviceConsoleUrl: str + source: Literal[SourceType.BACKUP_FROM_TIMESTAMP] + sourceId: str + sqlWebDeveloperUrl: str + subnetId: str + supportedRegionsToCloneTo: list[str] + timeCreated: str + timeDataGuardRoleChanged: str + timeDeletionOfFreeAutonomousDatabase: str + timeDisasterRecoveryRoleChanged: str + timeLocalDataGuardEnabled: str + timeMaintenanceBegin: str + timeMaintenanceEnd: str + timeOfLastFailover: str + timeOfLastRefresh: str + timeOfLastRefreshPoint: str + timeOfLastSwitchover: str + timeReclamationOfFreeAutonomousDatabase: str + timeScheduledAzUpdate: str + timestamp: str + useLatestAvailableBackupTimeStamp: bool + usedDataStorageSizeInGbs: int + usedDataStorageSizeInTbs: int + vnetId: str + whitelistedIps: list[str] + zone: str + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseLifecycleAction(TypedDict, total=False): + key "action": Required[Union[str, AutonomousDatabaseLifecycleActionEnum]] + action: Union[str, AutonomousDatabaseLifecycleActionEnum] + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseProperties(TypedDict, total=False): + key "actualUsedDataStorageSizeInTbs": float + key "adminPassword": str + key "allocatedStorageSizeInTbs": float + key "apexDetails": ForwardRef('ApexDetailsType', module='types') + key "autonomousDatabaseId": str + key "autonomousMaintenanceScheduleType": Union[str, AutonomousMaintenanceScheduleType] + key "backupDestination": Union[str, BackupDestinationType] + key "backupRetentionPeriodInDays": int + key "characterSet": str + key "computeCount": float + key "computeModel": Union[str, ComputeModel] + key "connectionStrings": ForwardRef('ConnectionStringType', module='types') + key "connectionUrls": ForwardRef('ConnectionUrlType', module='types') + key "cpuCoreCount": int + key "dataBaseType": Required[Literal[DataBaseType.REGULAR]] + key "dataSafeStatus": Union[str, DataSafeStatusType] + key "dataStorageSizeInGbs": int + key "dataStorageSizeInTbs": int + key "databaseEdition": Union[str, DatabaseEditionType] + key "dbVersion": str + key "dbWorkload": Union[str, WorkloadType] + key "displayName": str + key "failedDataRecoveryInSeconds": int + key "inMemoryAreaInGbs": int + key "isAutoScalingEnabled": bool + key "isAutoScalingForStorageEnabled": bool + key "isLocalDataGuardEnabled": bool + key "isMtlsConnectionRequired": bool + key "isPreview": bool + key "isPreviewVersionWithServiceTermsAccepted": bool + key "isRemoteDataGuardEnabled": bool + key "isScheduleAzUpdateToEarliest": bool + key "licenseModel": Union[str, LicenseModel] + key "lifecycleDetails": str + key "lifecycleState": Union[str, AutonomousDatabaseLifecycleState] + key "localAdgAutoFailoverMaxDataLossLimit": int + key "localDisasterRecoveryType": Union[str, DisasterRecoveryType] + key "localStandbyDb": ForwardRef('AutonomousDatabaseStandbySummary', module='types') + key "longTermBackupSchedule": ForwardRef('LongTermBackUpScheduleDetails', module='types') + key "memoryPerOracleComputeUnitInGbs": int + key "ncharacterSet": str + key "networkAnchorId": str + key "nextLongTermBackupTimeStamp": str + key "ociUrl": str + key "ocid": str + key "openMode": Union[str, OpenModeType] + key "operationsInsightsStatus": Union[str, OperationsInsightsStatusType] + key "peerDbId": str + key "permissionLevel": Union[str, PermissionLevelType] + key "privateEndpoint": str + key "privateEndpointIp": str + key "privateEndpointLabel": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "remoteDisasterRecoveryConfiguration": ForwardRef('DisasterRecoveryConfigurationDetails', module='types') + key "resourceAnchorId": str + key "role": Union[str, RoleType] + key "serviceConsoleUrl": str + key "sqlWebDeveloperUrl": str + key "subnetId": str + key "timeCreated": str + key "timeDataGuardRoleChanged": str + key "timeDeletionOfFreeAutonomousDatabase": str + key "timeDisasterRecoveryRoleChanged": str + key "timeLocalDataGuardEnabled": str + key "timeMaintenanceBegin": str + key "timeMaintenanceEnd": str + key "timeOfLastFailover": str + key "timeOfLastRefresh": str + key "timeOfLastRefreshPoint": str + key "timeOfLastSwitchover": str + key "timeReclamationOfFreeAutonomousDatabase": str + key "timeScheduledAzUpdate": str + key "usedDataStorageSizeInGbs": int + key "usedDataStorageSizeInTbs": int + key "vnetId": str + key "zone": str + actualUsedDataStorageSizeInTbs: float + adminPassword: str + allocatedStorageSizeInTbs: float + apexDetails: ApexDetailsType + autonomousDatabaseId: str + autonomousMaintenanceScheduleType: Union[str, AutonomousMaintenanceScheduleType] + availableUpgradeVersions: list[str] + backupDestination: Union[str, BackupDestinationType] + backupRetentionPeriodInDays: int + characterSet: str + computeCount: float + computeModel: Union[str, ComputeModel] + connectionStrings: ConnectionStringType + connectionUrls: ConnectionUrlType + cpuCoreCount: int + customerContacts: list[CustomerContact] + dataBaseType: Literal[DataBaseType.REGULAR] + dataSafeStatus: Union[str, DataSafeStatusType] + dataStorageSizeInGbs: int + dataStorageSizeInTbs: int + databaseEdition: Union[str, DatabaseEditionType] + dbVersion: str + dbWorkload: Union[str, WorkloadType] + displayName: str + failedDataRecoveryInSeconds: int + inMemoryAreaInGbs: int + isAutoScalingEnabled: bool + isAutoScalingForStorageEnabled: bool + isLocalDataGuardEnabled: bool + isMtlsConnectionRequired: bool + isPreview: bool + isPreviewVersionWithServiceTermsAccepted: bool + isRemoteDataGuardEnabled: bool + isScheduleAzUpdateToEarliest: bool + licenseModel: Union[str, LicenseModel] + lifecycleDetails: str + lifecycleState: Union[str, AutonomousDatabaseLifecycleState] + localAdgAutoFailoverMaxDataLossLimit: int + localDisasterRecoveryType: Union[str, DisasterRecoveryType] + localStandbyDb: AutonomousDatabaseStandbySummary + longTermBackupSchedule: LongTermBackUpScheduleDetails + memoryPerOracleComputeUnitInGbs: int + ncharacterSet: str + networkAnchorId: str + nextLongTermBackupTimeStamp: str + ociUrl: str + ocid: str + openMode: Union[str, OpenModeType] + operationsInsightsStatus: Union[str, OperationsInsightsStatusType] + peerDbId: str + peerDbIds: list[str] + permissionLevel: Union[str, PermissionLevelType] + privateEndpoint: str + privateEndpointIp: str + privateEndpointLabel: str + provisionableCpus: list[int] + provisioningState: Union[str, AzureResourceProvisioningState] + remoteDisasterRecoveryConfiguration: DisasterRecoveryConfigurationDetails + resourceAnchorId: str + role: Union[str, RoleType] + scheduledOperationsList: list[ScheduledOperationsType] + serviceConsoleUrl: str + sqlWebDeveloperUrl: str + subnetId: str + supportedRegionsToCloneTo: list[str] + timeCreated: str + timeDataGuardRoleChanged: str + timeDeletionOfFreeAutonomousDatabase: str + timeDisasterRecoveryRoleChanged: str + timeLocalDataGuardEnabled: str + timeMaintenanceBegin: str + timeMaintenanceEnd: str + timeOfLastFailover: str + timeOfLastRefresh: str + timeOfLastRefreshPoint: str + timeOfLastSwitchover: str + timeReclamationOfFreeAutonomousDatabase: str + timeScheduledAzUpdate: str + usedDataStorageSizeInGbs: int + usedDataStorageSizeInTbs: int + vnetId: str + whitelistedIps: list[str] + zone: str + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseStandbySummary(TypedDict, total=False): + key "lagTimeInSeconds": int + key "lifecycleDetails": str + key "lifecycleState": Union[str, AutonomousDatabaseLifecycleState] + key "timeDataGuardRoleChanged": str + key "timeDisasterRecoveryRoleChanged": str + lagTimeInSeconds: int + lifecycleDetails: str + lifecycleState: Union[str, AutonomousDatabaseLifecycleState] + timeDataGuardRoleChanged: str + timeDisasterRecoveryRoleChanged: str + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseUpdate(TypedDict, total=False): + key "properties": ForwardRef('AutonomousDatabaseUpdateProperties', module='types') + properties: AutonomousDatabaseUpdateProperties + tags: dict[str, str] + + + class azure.mgmt.oracledatabase.types.AutonomousDatabaseUpdateProperties(TypedDict, total=False): + key "adminPassword": str + key "autonomousMaintenanceScheduleType": Union[str, AutonomousMaintenanceScheduleType] + key "backupRetentionPeriodInDays": int + key "computeCount": float + key "cpuCoreCount": int + key "dataStorageSizeInGbs": int + key "dataStorageSizeInTbs": int + key "databaseEdition": Union[str, DatabaseEditionType] + key "displayName": str + key "isAutoScalingEnabled": bool + key "isAutoScalingForStorageEnabled": bool + key "isLocalDataGuardEnabled": bool + key "isMtlsConnectionRequired": bool + key "licenseModel": Union[str, LicenseModel] + key "localAdgAutoFailoverMaxDataLossLimit": int + key "longTermBackupSchedule": ForwardRef('LongTermBackUpScheduleDetails', module='types') + key "openMode": Union[str, OpenModeType] + key "peerDbId": str + key "permissionLevel": Union[str, PermissionLevelType] + key "role": Union[str, RoleType] + adminPassword: str + autonomousMaintenanceScheduleType: Union[str, AutonomousMaintenanceScheduleType] + backupRetentionPeriodInDays: int + computeCount: float + cpuCoreCount: int + customerContacts: list[CustomerContact] + dataStorageSizeInGbs: int + dataStorageSizeInTbs: int + databaseEdition: Union[str, DatabaseEditionType] + displayName: str + isAutoScalingEnabled: bool + isAutoScalingForStorageEnabled: bool + isLocalDataGuardEnabled: bool + isMtlsConnectionRequired: bool + licenseModel: Union[str, LicenseModel] + localAdgAutoFailoverMaxDataLossLimit: int + longTermBackupSchedule: LongTermBackUpScheduleDetails + openMode: Union[str, OpenModeType] + peerDbId: str + permissionLevel: Union[str, PermissionLevelType] + role: Union[str, RoleType] + scheduledOperationsList: list[ScheduledOperationsTypeUpdate] + whitelistedIps: list[str] + + + class azure.mgmt.oracledatabase.types.AzureSubscriptions(TypedDict, total=False): + key "azureSubscriptionIds": Required[list[str]] + azureSubscriptionIds: list[str] + + + class azure.mgmt.oracledatabase.types.BackupScheduleType(TypedDict, total=False): + key "bucketName": str + key "compartmentId": str + key "frequencyBackupScheduled": Union[str, FrequencyType] + key "isMetadataOnly": bool + key "namespaceName": str + key "timeBackupScheduled": str + bucketName: str + compartmentId: str + frequencyBackupScheduled: Union[str, FrequencyType] + isMetadataOnly: bool + namespaceName: str + timeBackupScheduled: str + + + class azure.mgmt.oracledatabase.types.CloudExadataInfrastructure(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('CloudExadataInfrastructureProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + key "zones": Required[list[str]] + id: str + location: str + name: str + properties: CloudExadataInfrastructureProperties + systemData: SystemData + tags: dict[str, str] + type: str + zones: list[str] + + + class azure.mgmt.oracledatabase.types.CloudExadataInfrastructureProperties(TypedDict, total=False): + key "activatedStorageCount": int + key "additionalStorageCount": int + key "availableStorageSizeInGbs": int + key "computeCount": int + key "computeModel": Union[str, ComputeModel] + key "cpuCount": int + key "dataStorageSizeInTbs": float + key "databaseServerType": str + key "dbNodeStorageSizeInGbs": int + key "dbServerVersion": str + key "displayName": Required[str] + key "estimatedPatchingTime": ForwardRef('EstimatedPatchingTime', module='types') + key "exascaleConfig": ForwardRef('ExascaleConfigDetails', module='types') + key "lastMaintenanceRunId": str + key "lifecycleDetails": str + key "lifecycleState": Union[str, CloudExadataInfrastructureLifecycleState] + key "maintenanceWindow": ForwardRef('MaintenanceWindow', module='types') + key "maxCpuCount": int + key "maxDataStorageInTbs": float + key "maxDbNodeStorageSizeInGbs": int + key "maxMemoryInGbs": int + key "memorySizeInGbs": int + key "monthlyDbServerVersion": str + key "monthlyStorageServerVersion": str + key "nextMaintenanceRunId": str + key "ociUrl": str + key "ocid": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "proximityPlacementGroup": ForwardRef('ProximityPlacementGroup', module='types') + key "resourceAnchorId": str + key "shape": Required[str] + key "storageCount": int + key "storageServerType": str + key "storageServerVersion": str + key "timeCreated": str + key "totalStorageSizeInGbs": int + activatedStorageCount: int + additionalStorageCount: int + availableStorageSizeInGbs: int + computeCount: int + computeModel: Union[str, ComputeModel] + cpuCount: int + customerContacts: list[CustomerContact] + dataStorageSizeInTbs: float + databaseServerType: str + dbNodeStorageSizeInGbs: int + dbServerVersion: str + definedFileSystemConfiguration: list[DefinedFileSystemConfiguration] + displayName: str + estimatedPatchingTime: EstimatedPatchingTime + exascaleConfig: ExascaleConfigDetails + lastMaintenanceRunId: str + lifecycleDetails: str + lifecycleState: Union[str, CloudExadataInfrastructureLifecycleState] + maintenanceWindow: MaintenanceWindow + maxCpuCount: int + maxDataStorageInTbs: float + maxDbNodeStorageSizeInGbs: int + maxMemoryInGbs: int + memorySizeInGbs: int + monthlyDbServerVersion: str + monthlyStorageServerVersion: str + nextMaintenanceRunId: str + ociUrl: str + ocid: str + provisioningState: Union[str, AzureResourceProvisioningState] + proximityPlacementGroup: ProximityPlacementGroup + resourceAnchorId: str + shape: str + storageCount: int + storageServerType: str + storageServerVersion: str + timeCreated: str + totalStorageSizeInGbs: int + + + class azure.mgmt.oracledatabase.types.CloudExadataInfrastructureUpdate(TypedDict, total=False): + key "properties": ForwardRef('CloudExadataInfrastructureUpdateProperties', module='types') + properties: CloudExadataInfrastructureUpdateProperties + tags: dict[str, str] + zones: list[str] + + + class azure.mgmt.oracledatabase.types.CloudExadataInfrastructureUpdateProperties(TypedDict, total=False): + key "computeCount": int + key "displayName": str + key "maintenanceWindow": ForwardRef('MaintenanceWindow', module='types') + key "storageCount": int + computeCount: int + customerContacts: list[CustomerContact] + displayName: str + maintenanceWindow: MaintenanceWindow + storageCount: int + + + class azure.mgmt.oracledatabase.types.CloudVmCluster(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('CloudVmClusterProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + properties: CloudVmClusterProperties + systemData: SystemData + tags: dict[str, str] + type: str + + + class azure.mgmt.oracledatabase.types.CloudVmClusterProperties(TypedDict, total=False): + key "backupSubnetCidr": str + key "cloudExadataInfrastructureId": Required[str] + key "clusterName": str + key "compartmentId": str + key "computeModel": Union[str, ComputeModel] + key "cpuCoreCount": Required[int] + key "dataCollectionOptions": ForwardRef('DataCollectionOptions', module='types') + key "dataStoragePercentage": int + key "dataStorageSizeInTbs": float + key "dbNodeStorageSizeInGbs": int + key "diskRedundancy": Union[str, DiskRedundancy] + key "displayName": Required[str] + key "domain": str + key "exascaleDbStorageVaultId": str + key "giVersion": Required[str] + key "hostname": Required[str] + key "iormConfigCache": ForwardRef('ExadataIormConfig', module='types') + key "isAcceleratedNetworkEnabled": bool + key "isLocalBackupEnabled": bool + key "isSparseDiskgroupEnabled": bool + key "lastUpdateHistoryEntryId": str + key "licenseModel": Union[str, LicenseModel] + key "lifecycleDetails": str + key "lifecycleState": Union[str, CloudVmClusterLifecycleState] + key "listenerPort": int + key "memorySizeInGbs": int + key "networkAnchorId": str + key "nodeCount": int + key "nsgUrl": str + key "ociUrl": str + key "ocid": str + key "ocpuCount": float + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "proximityPlacementGroup": ForwardRef('ProximityPlacementGroup', module='types') + key "recoStoragePercentage": int + key "resourceAnchorId": str + key "scanDnsName": str + key "scanDnsRecordId": str + key "scanListenerPortTcp": int + key "scanListenerPortTcpSsl": int + key "shape": str + key "sparseStoragePercentage": int + key "sshPublicKeys": Required[list[str]] + key "storageManagementType": Union[str, ExadataVmClusterStorageManagementType] + key "storageSizeInGbs": int + key "subnetId": Required[str] + key "subnetOcid": str + key "systemVersion": str + key "timeCreated": str + key "timeZone": str + key "vnetId": Required[str] + key "zoneId": str + backupSubnetCidr: str + cloudExadataInfrastructureId: str + clusterName: str + compartmentId: str + computeModel: Union[str, ComputeModel] + computeNodes: list[str] + cpuCoreCount: int + dataCollectionOptions: DataCollectionOptions + dataStoragePercentage: int + dataStorageSizeInTbs: float + dbNodeStorageSizeInGbs: int + dbServers: list[str] + diskRedundancy: Union[str, DiskRedundancy] + displayName: str + domain: str + exascaleDbStorageVaultId: str + fileSystemConfigurationDetails: list[FileSystemConfigurationDetails] + giVersion: str + hostname: str + iormConfigCache: ExadataIormConfig + isAcceleratedNetworkEnabled: bool + isLocalBackupEnabled: bool + isSparseDiskgroupEnabled: bool + lastUpdateHistoryEntryId: str + licenseModel: Union[str, LicenseModel] + lifecycleDetails: str + lifecycleState: Union[str, CloudVmClusterLifecycleState] + listenerPort: int + memorySizeInGbs: int + networkAnchorId: str + nodeCount: int + nsgCidrs: list[NsgCidr] + nsgUrl: str + ociUrl: str + ocid: str + ocpuCount: float + provisioningState: Union[str, AzureResourceProvisioningState] + proximityPlacementGroup: ProximityPlacementGroup + recoStoragePercentage: int + resourceAnchorId: str + scanDnsName: str + scanDnsRecordId: str + scanIpIds: list[str] + scanListenerPortTcp: int + scanListenerPortTcpSsl: int + shape: str + sparseStoragePercentage: int + sshPublicKeys: list[str] + storageManagementType: Union[str, ExadataVmClusterStorageManagementType] + storageSizeInGbs: int + subnetId: str + subnetOcid: str + systemVersion: str + timeCreated: str + timeZone: str + vipIds: list[str] + vnetId: str + zoneId: str + + + class azure.mgmt.oracledatabase.types.CloudVmClusterUpdate(TypedDict, total=False): + key "properties": ForwardRef('CloudVmClusterUpdateProperties', module='types') + properties: CloudVmClusterUpdateProperties + tags: dict[str, str] + + + class azure.mgmt.oracledatabase.types.CloudVmClusterUpdateProperties(TypedDict, total=False): + key "cpuCoreCount": int + key "dataCollectionOptions": ForwardRef('DataCollectionOptions', module='types') + key "dataStorageSizeInTbs": float + key "dbNodeStorageSizeInGbs": int + key "displayName": str + key "isAcceleratedNetworkEnabled": bool + key "licenseModel": Union[str, LicenseModel] + key "memorySizeInGbs": int + key "ocpuCount": float + key "storageSizeInGbs": int + computeNodes: list[str] + cpuCoreCount: int + dataCollectionOptions: DataCollectionOptions + dataStorageSizeInTbs: float + dbNodeStorageSizeInGbs: int + displayName: str + fileSystemConfigurationDetails: list[FileSystemConfigurationDetails] + isAcceleratedNetworkEnabled: bool + licenseModel: Union[str, LicenseModel] + memorySizeInGbs: int + ocpuCount: float + sshPublicKeys: list[str] + storageSizeInGbs: int + + + class azure.mgmt.oracledatabase.types.ConfigureExascaleCloudExadataInfrastructureDetails(TypedDict, total=False): + key "totalStorageInGbs": Required[int] + totalStorageInGbs: int + + + class azure.mgmt.oracledatabase.types.ConnectionStringType(TypedDict, total=False): + key "allConnectionStrings": ForwardRef('AllConnectionStringType', module='types') + key "dedicated": str + key "high": str + key "low": str + key "medium": str + allConnectionStrings: AllConnectionStringType + dedicated: str + high: str + low: str + medium: str + profiles: list[ProfileType] + + + class azure.mgmt.oracledatabase.types.ConnectionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + AMAZON_KINESIS = "AMAZON_KINESIS" + AMAZON_REDSHIFT = "AMAZON_REDSHIFT" + AMAZON_S3 = "AMAZON_S3" + AZURE_DATA_LAKE_STORAGE = "AZURE_DATA_LAKE_STORAGE" + AZURE_SYNAPSE_ANALYTICS = "AZURE_SYNAPSE_ANALYTICS" + DATABRICKS = "DATABRICKS" + DB2_CONNECTION = "DB2" + ELASTICSEARCH = "ELASTICSEARCH" + GENERIC = "GENERIC" + GOLDEN_GATE = "GOLDENGATE" + GOOGLE_BIG_QUERY = "GOOGLE_BIGQUERY" + GOOGLE_CLOUD_STORAGE = "GOOGLE_CLOUD_STORAGE" + GOOGLE_PUB_SUB = "GOOGLE_PUBSUB" + HDFS = "HDFS" + ICEBERG = "ICEBERG" + JAVA_MESSAGE_SERVICE = "JAVA_MESSAGE_SERVICE" + KAFKA = "KAFKA" + KAFKA_SCHEMA_REGISTRY = "KAFKA_SCHEMA_REGISTRY" + MICROSOFT_FABRIC = "MICROSOFT_FABRIC" + MICROSOFT_SQL_SERVER = "MICROSOFT_SQLSERVER" + MONGO_DB_CONNECTION = "MONGODB" + MY_SQL = "MYSQL" + OCI_OBJECT_STORAGE = "OCI_OBJECT_STORAGE" + ORACLE = "ORACLE" + ORACLE_NO_SQL = "ORACLE_NOSQL" + POSTGRE_SQL = "POSTGRESQL" + REDIS = "REDIS" + SNOWFLAKE = "SNOWFLAKE" + + + class azure.mgmt.oracledatabase.types.ConnectionUrlType(TypedDict, total=False): + key "apexUrl": str + key "databaseTransformsUrl": str + key "graphStudioUrl": str + key "machineLearningNotebookUrl": str + key "mongoDbUrl": str + key "ordsUrl": str + key "sqlDevWebUrl": str + apexUrl: str + databaseTransformsUrl: str + graphStudioUrl: str + machineLearningNotebookUrl: str + mongoDbUrl: str + ordsUrl: str + sqlDevWebUrl: str + + + class azure.mgmt.oracledatabase.types.CustomerContact(TypedDict, total=False): + key "email": Required[str] + email: str + + + class azure.mgmt.oracledatabase.types.DataBaseType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + CLONE = "Clone" + CLONE_FROM_BACKUP_TIMESTAMP = "CloneFromBackupTimestamp" + CROSS_REGION_DISASTER_RECOVERY = "CrossRegionDisasterRecovery" + REGULAR = "Regular" + + + class azure.mgmt.oracledatabase.types.DataCollectionOptions(TypedDict, total=False): + key "isDiagnosticsEventsEnabled": bool + key "isHealthMonitoringEnabled": bool + key "isIncidentLogsEnabled": bool + isDiagnosticsEventsEnabled: bool + isHealthMonitoringEnabled: bool + isIncidentLogsEnabled: bool + + + class azure.mgmt.oracledatabase.types.DayOfWeek(TypedDict, total=False): + key "name": Required[Union[str, DayOfWeekName]] + name: Union[str, DayOfWeekName] + + + class azure.mgmt.oracledatabase.types.DayOfWeekUpdate(TypedDict, total=False): + key "name": Union[str, DayOfWeekName] + name: Union[str, DayOfWeekName] + + + class azure.mgmt.oracledatabase.types.DbIormConfig(TypedDict, total=False): + key "dbName": str + key "flashCacheLimit": str + key "share": int + dbName: str + flashCacheLimit: str + share: int + + + class azure.mgmt.oracledatabase.types.DbNodeAction(TypedDict, total=False): + key "action": Required[Union[str, DbNodeActionEnum]] + action: Union[str, DbNodeActionEnum] + + + class azure.mgmt.oracledatabase.types.DbNodeDetails(TypedDict, total=False): + key "dbNodeId": Required[str] + dbNodeId: str + + + class azure.mgmt.oracledatabase.types.DbSystem(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('DbSystemProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + properties: DbSystemProperties + systemData: SystemData + tags: dict[str, str] + type: str + zones: list[str] + + + class azure.mgmt.oracledatabase.types.DbSystemBaseProperties(TypedDict, total=False): + key "adminPassword": str + key "characterSet": str + key "clusterName": str + key "computeCount": int + key "computeModel": Union[str, ComputeModel] + key "dataCollectionOptions": ForwardRef('DataCollectionOptions', module='types') + key "dataStorageSizeInGbs": int + key "databaseEdition": Required[Union[str, DbSystemDatabaseEditionType]] + key "dbSystemOptions": ForwardRef('DbSystemOptions', module='types') + key "dbVersion": Required[str] + key "diskRedundancy": Union[str, DiskRedundancyType] + key "displayName": str + key "domain": str + key "gridImageOcid": str + key "hostname": Required[str] + key "initialDataStorageSizeInGb": int + key "licenseModel": Union[str, LicenseModel] + key "lifecycleDetails": str + key "lifecycleState": Union[str, DbSystemLifecycleState] + key "listenerPort": int + key "memorySizeInGbs": int + key "ncharacterSet": str + key "networkAnchorId": Required[str] + key "nodeCount": int + key "ociUrl": str + key "ocid": str + key "pdbName": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "resourceAnchorId": Required[str] + key "scanDnsName": str + key "shape": Required[str] + key "source": Required[Literal[DbSystemSourceType.NONE]] + key "sshPublicKeys": Required[list[str]] + key "storageVolumePerformanceMode": Union[str, StorageVolumePerformanceMode] + key "timeZone": str + key "version": str + adminPassword: str + characterSet: str + clusterName: str + computeCount: int + computeModel: Union[str, ComputeModel] + dataCollectionOptions: DataCollectionOptions + dataStorageSizeInGbs: int + databaseEdition: Union[str, DbSystemDatabaseEditionType] + dbSystemOptions: DbSystemOptions + dbVersion: str + diskRedundancy: Union[str, DiskRedundancyType] + displayName: str + domain: str + gridImageOcid: str + hostname: str + initialDataStorageSizeInGb: int + licenseModel: Union[str, LicenseModel] + lifecycleDetails: str + lifecycleState: Union[str, DbSystemLifecycleState] + listenerPort: int + memorySizeInGbs: int + ncharacterSet: str + networkAnchorId: str + nodeCount: int + ociUrl: str + ocid: str + pdbName: str + provisioningState: Union[str, AzureResourceProvisioningState] + resourceAnchorId: str + scanDnsName: str + scanIps: list[str] + shape: str + source: Literal[DbSystemSourceType.NONE] + sshPublicKeys: list[str] + storageVolumePerformanceMode: Union[str, StorageVolumePerformanceMode] + timeZone: str + version: str + + + class azure.mgmt.oracledatabase.types.DbSystemOptions(TypedDict, total=False): + key "storageManagement": Union[str, StorageManagementType] + storageManagement: Union[str, StorageManagementType] + + + class azure.mgmt.oracledatabase.types.DbSystemProperties(TypedDict, total=False): + key "adminPassword": str + key "characterSet": str + key "clusterName": str + key "computeCount": int + key "computeModel": Union[str, ComputeModel] + key "dataCollectionOptions": ForwardRef('DataCollectionOptions', module='types') + key "dataStorageSizeInGbs": int + key "databaseEdition": Required[Union[str, DbSystemDatabaseEditionType]] + key "dbSystemOptions": ForwardRef('DbSystemOptions', module='types') + key "dbVersion": Required[str] + key "diskRedundancy": Union[str, DiskRedundancyType] + key "displayName": str + key "domain": str + key "gridImageOcid": str + key "hostname": Required[str] + key "initialDataStorageSizeInGb": int + key "licenseModel": Union[str, LicenseModel] + key "lifecycleDetails": str + key "lifecycleState": Union[str, DbSystemLifecycleState] + key "listenerPort": int + key "memorySizeInGbs": int + key "ncharacterSet": str + key "networkAnchorId": Required[str] + key "nodeCount": int + key "ociUrl": str + key "ocid": str + key "pdbName": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "resourceAnchorId": Required[str] + key "scanDnsName": str + key "shape": Required[str] + key "source": Required[Literal[DbSystemSourceType.NONE]] + key "sshPublicKeys": Required[list[str]] + key "storageVolumePerformanceMode": Union[str, StorageVolumePerformanceMode] + key "timeZone": str + key "version": str + adminPassword: str + characterSet: str + clusterName: str + computeCount: int + computeModel: Union[str, ComputeModel] + dataCollectionOptions: DataCollectionOptions + dataStorageSizeInGbs: int + databaseEdition: Union[str, DbSystemDatabaseEditionType] + dbSystemOptions: DbSystemOptions + dbVersion: str + diskRedundancy: Union[str, DiskRedundancyType] + displayName: str + domain: str + gridImageOcid: str + hostname: str + initialDataStorageSizeInGb: int + licenseModel: Union[str, LicenseModel] + lifecycleDetails: str + lifecycleState: Union[str, DbSystemLifecycleState] + listenerPort: int + memorySizeInGbs: int + ncharacterSet: str + networkAnchorId: str + nodeCount: int + ociUrl: str + ocid: str + pdbName: str + provisioningState: Union[str, AzureResourceProvisioningState] + resourceAnchorId: str + scanDnsName: str + scanIps: list[str] + shape: str + source: Literal[DbSystemSourceType.NONE] + sshPublicKeys: list[str] + storageVolumePerformanceMode: Union[str, StorageVolumePerformanceMode] + timeZone: str + version: str + + + class azure.mgmt.oracledatabase.types.DbSystemSourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + NONE = "None" + + + class azure.mgmt.oracledatabase.types.DbSystemUpdate(TypedDict, total=False): + key "properties": ForwardRef('DbSystemUpdateProperties', module='types') + properties: DbSystemUpdateProperties + tags: dict[str, str] + zones: list[str] + + + class azure.mgmt.oracledatabase.types.DbSystemUpdateProperties(TypedDict, total=False): + key "source": Literal[DbSystemSourceType.NONE] + source: Literal[DbSystemSourceType.NONE] + + + class azure.mgmt.oracledatabase.types.DefinedFileSystemConfiguration(TypedDict, total=False): + key "isBackupPartition": bool + key "isResizable": bool + key "minSizeGb": int + key "mountPoint": str + isBackupPartition: bool + isResizable: bool + minSizeGb: int + mountPoint: str + + + class azure.mgmt.oracledatabase.types.DeploymentProperties(TypedDict, total=False): + key "backupSchedule": ForwardRef('BackupScheduleType', module='types') + key "category": Union[str, CategoryType] + key "compartment": str + key "cpuCoreCount": int + key "deploymentType": Union[str, DeploymentType] + key "deploymentUrl": str + key "displayName": Required[str] + key "environmentType": Union[str, SetupType] + key "isAutoScalingEnabled": bool + key "isPublic": bool + key "licenseModel": Union[str, LicenseModel] + key "lifecycleDetails": str + key "lifecycleState": Union[str, DeploymentLifecycleState] + key "maintenanceConfiguration": ForwardRef('MaintenanceConfigurationType', module='types') + key "maintenanceWindow": ForwardRef('MaintenanceWindowType', module='types') + key "networkAnchorId": Required[str] + key "ocid": str + key "oggData": ForwardRef('OggDeploymentDetails', module='types') + key "privateIpAddress": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "resourceAnchorId": Required[str] + key "storageUtilizationInBytes": int + key "timeCreated": str + key "timeUpdated": str + key "timeZone": str + key "version": str + backupSchedule: BackupScheduleType + category: Union[str, CategoryType] + compartment: str + cpuCoreCount: int + deploymentType: Union[str, DeploymentType] + deploymentUrl: str + displayName: str + environmentType: Union[str, SetupType] + ingressIps: list[str] + isAutoScalingEnabled: bool + isPublic: bool + licenseModel: Union[str, LicenseModel] + lifecycleDetails: str + lifecycleState: Union[str, DeploymentLifecycleState] + maintenanceConfiguration: MaintenanceConfigurationType + maintenanceWindow: MaintenanceWindowType + networkAnchorId: str + ocid: str + oggData: OggDeploymentDetails + privateIpAddress: str + provisioningState: Union[str, AzureResourceProvisioningState] + resourceAnchorId: str + storageUtilizationInBytes: int + timeCreated: str + timeUpdated: str + timeZone: str + version: str + + + class azure.mgmt.oracledatabase.types.DisasterRecoveryConfigurationDetails(TypedDict, total=False): + key "disasterRecoveryType": Union[str, DisasterRecoveryType] + key "isReplicateAutomaticBackups": bool + key "isSnapshotStandby": bool + key "timeSnapshotStandbyEnabledTill": str + disasterRecoveryType: Union[str, DisasterRecoveryType] + isReplicateAutomaticBackups: bool + isSnapshotStandby: bool + timeSnapshotStandbyEnabledTill: str + + + class azure.mgmt.oracledatabase.types.DnsForwardingRule(TypedDict, total=False): + key "domainNames": Required[str] + key "forwardingIpAddress": Required[str] + domainNames: str + forwardingIpAddress: str + + + class azure.mgmt.oracledatabase.types.EstimatedPatchingTime(TypedDict, total=False): + key "estimatedDbServerPatchingTime": int + key "estimatedNetworkSwitchesPatchingTime": int + key "estimatedStorageServerPatchingTime": int + key "totalEstimatedPatchingTime": int + estimatedDbServerPatchingTime: int + estimatedNetworkSwitchesPatchingTime: int + estimatedStorageServerPatchingTime: int + totalEstimatedPatchingTime: int + + + class azure.mgmt.oracledatabase.types.ExadataIormConfig(TypedDict, total=False): + key "lifecycleDetails": str + key "lifecycleState": Union[str, IormLifecycleState] + key "objective": Union[str, Objective] + dbPlans: list[DbIormConfig] + lifecycleDetails: str + lifecycleState: Union[str, IormLifecycleState] + objective: Union[str, Objective] + + + class azure.mgmt.oracledatabase.types.ExadbVmCluster(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('ExadbVmClusterProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + properties: ExadbVmClusterProperties + systemData: SystemData + tags: dict[str, str] + type: str + zones: list[str] + + + class azure.mgmt.oracledatabase.types.ExadbVmClusterProperties(TypedDict, total=False): + key "backupSubnetCidr": str + key "backupSubnetOcid": str + key "clusterName": str + key "dataCollectionOptions": ForwardRef('DataCollectionOptions', module='types') + key "displayName": Required[str] + key "domain": str + key "enabledEcpuCount": Required[int] + key "exascaleDbStorageVaultId": Required[str] + key "giVersion": str + key "gridImageOcid": str + key "gridImageType": Union[str, GridImageType] + key "hostname": Required[str] + key "iormConfigCache": ForwardRef('ExadataIormConfig', module='types') + key "licenseModel": Union[str, LicenseModel] + key "lifecycleDetails": str + key "lifecycleState": Union[str, ExadbVmClusterLifecycleState] + key "listenerPort": int + key "memorySizeInGbs": int + key "nodeCount": Required[int] + key "nsgUrl": str + key "ociUrl": str + key "ocid": str + key "privateZoneOcid": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "scanDnsName": str + key "scanDnsRecordId": str + key "scanListenerPortTcp": int + key "scanListenerPortTcpSsl": int + key "shape": Required[str] + key "shapeAttribute": Union[str, ShapeAttribute] + key "snapshotFileSystemStorage": ForwardRef('ExadbVmClusterStorageDetails', module='types') + key "sshPublicKeys": Required[list[str]] + key "subnetId": Required[str] + key "subnetOcid": str + key "systemVersion": str + key "timeZone": str + key "totalEcpuCount": Required[int] + key "totalFileSystemStorage": ForwardRef('ExadbVmClusterStorageDetails', module='types') + key "vmFileSystemStorage": Required[ExadbVmClusterStorageDetails] + key "vnetId": Required[str] + key "zoneOcid": str + backupSubnetCidr: str + backupSubnetOcid: str + clusterName: str + dataCollectionOptions: DataCollectionOptions + displayName: str + domain: str + enabledEcpuCount: int + exascaleDbStorageVaultId: str + giVersion: str + gridImageOcid: str + gridImageType: Union[str, GridImageType] + hostname: str + iormConfigCache: ExadataIormConfig + licenseModel: Union[str, LicenseModel] + lifecycleDetails: str + lifecycleState: Union[str, ExadbVmClusterLifecycleState] + listenerPort: int + memorySizeInGbs: int + nodeCount: int + nsgCidrs: list[NsgCidr] + nsgUrl: str + ociUrl: str + ocid: str + privateZoneOcid: str + provisioningState: Union[str, AzureResourceProvisioningState] + scanDnsName: str + scanDnsRecordId: str + scanIpIds: list[str] + scanListenerPortTcp: int + scanListenerPortTcpSsl: int + shape: str + shapeAttribute: Union[str, ShapeAttribute] + snapshotFileSystemStorage: ExadbVmClusterStorageDetails + sshPublicKeys: list[str] + subnetId: str + subnetOcid: str + systemVersion: str + timeZone: str + totalEcpuCount: int + totalFileSystemStorage: ExadbVmClusterStorageDetails + vipIds: list[str] + vmFileSystemStorage: ExadbVmClusterStorageDetails + vnetId: str + zoneOcid: str + + + class azure.mgmt.oracledatabase.types.ExadbVmClusterStorageDetails(TypedDict, total=False): + key "totalSizeInGbs": Required[int] + totalSizeInGbs: int + + + class azure.mgmt.oracledatabase.types.ExadbVmClusterUpdate(TypedDict, total=False): + key "properties": ForwardRef('ExadbVmClusterUpdateProperties', module='types') + properties: ExadbVmClusterUpdateProperties + tags: dict[str, str] + zones: list[str] + + + class azure.mgmt.oracledatabase.types.ExadbVmClusterUpdateProperties(TypedDict, total=False): + key "nodeCount": int + nodeCount: int + + + class azure.mgmt.oracledatabase.types.ExascaleConfigDetails(TypedDict, total=False): + key "availableStorageInGbs": int + key "totalStorageInGbs": Required[int] + availableStorageInGbs: int + totalStorageInGbs: int + + + class azure.mgmt.oracledatabase.types.ExascaleDbStorageDetails(TypedDict, total=False): + key "availableSizeInGbs": int + key "totalSizeInGbs": int + availableSizeInGbs: int + totalSizeInGbs: int + + + class azure.mgmt.oracledatabase.types.ExascaleDbStorageInputDetails(TypedDict, total=False): + key "totalSizeInGbs": Required[int] + totalSizeInGbs: int + + + class azure.mgmt.oracledatabase.types.ExascaleDbStorageVault(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('ExascaleDbStorageVaultProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + properties: ExascaleDbStorageVaultProperties + systemData: SystemData + tags: dict[str, str] + type: str + zones: list[str] + + + class azure.mgmt.oracledatabase.types.ExascaleDbStorageVaultProperties(TypedDict, total=False): + key "additionalFlashCacheInPercent": int + key "autoscaleLimitInGbs": int + key "description": str + key "displayName": Required[str] + key "exadataInfrastructureId": str + key "highCapacityDatabaseStorage": ForwardRef('ExascaleDbStorageDetails', module='types') + key "highCapacityDatabaseStorageInput": Required[ExascaleDbStorageInputDetails] + key "isAutoscaleEnabled": bool + key "lifecycleDetails": str + key "lifecycleState": Union[str, ExascaleDbStorageVaultLifecycleState] + key "ociUrl": str + key "ocid": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "timeZone": str + key "vmClusterCount": int + additionalFlashCacheInPercent: int + attachedShapeAttributes: list[Union[str, ShapeAttribute]] + autoscaleLimitInGbs: int + description: str + displayName: str + exadataInfrastructureId: str + highCapacityDatabaseStorage: ExascaleDbStorageDetails + highCapacityDatabaseStorageInput: ExascaleDbStorageInputDetails + isAutoscaleEnabled: bool + lifecycleDetails: str + lifecycleState: Union[str, ExascaleDbStorageVaultLifecycleState] + ociUrl: str + ocid: str + provisioningState: Union[str, AzureResourceProvisioningState] + timeZone: str + vmClusterCount: int + + + class azure.mgmt.oracledatabase.types.ExascaleDbStorageVaultTagsUpdate(TypedDict, total=False): + tags: dict[str, str] + + + class azure.mgmt.oracledatabase.types.FileSystemConfigurationDetails(TypedDict, total=False): + key "fileSystemSizeGb": int + key "mountPoint": str + fileSystemSizeGb: int + mountPoint: str + + + class azure.mgmt.oracledatabase.types.GenerateAutonomousDatabaseWalletDetails(TypedDict, total=False): + key "generateType": Union[str, GenerateType] + key "isRegional": bool + key "password": Required[str] + generateType: Union[str, GenerateType] + isRegional: bool + password: str + + + class azure.mgmt.oracledatabase.types.GoldenGateConnection(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('ConnectionBaseProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + properties: ConnectionBaseProperties + systemData: SystemData + tags: dict[str, str] + type: str + zones: list[str] + + + class azure.mgmt.oracledatabase.types.GoldenGateConnectionUpdate(TypedDict, total=False): + key "properties": ForwardRef('GoldenGateConnectionUpdateProperties', module='types') + properties: GoldenGateConnectionUpdateProperties + tags: dict[str, str] + zones: list[str] + + + class azure.mgmt.oracledatabase.types.GoldenGateConnectionUpdateProperties(TypedDict, total=False): + key "connectionType": Union[str, ConnectionType] + key "displayName": str + key "doesUseSecretIds": bool + key "keyId": str + key "routingMethod": Union[str, RoutingMethod] + key "vaultId": str + connectionType: Union[str, ConnectionType] + displayName: str + doesUseSecretIds: bool + keyId: str + routingMethod: Union[str, RoutingMethod] + vaultId: str + + + class azure.mgmt.oracledatabase.types.GoldenGateDeployment(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('DeploymentProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + properties: DeploymentProperties + systemData: SystemData + tags: dict[str, str] + type: str + zones: list[str] + + + class azure.mgmt.oracledatabase.types.GoldenGateDeploymentUpdate(TypedDict, total=False): + key "properties": ForwardRef('GoldenGateDeploymentUpdateProperties', module='types') + properties: GoldenGateDeploymentUpdateProperties + tags: dict[str, str] + zones: list[str] + + + class azure.mgmt.oracledatabase.types.GoldenGateDeploymentUpdateProperties(TypedDict, total=False): + key "backupSchedule": ForwardRef('BackupScheduleType', module='types') + key "cpuCoreCount": int + key "licenseModel": Union[str, LicenseModel] + key "maintenanceConfiguration": ForwardRef('MaintenanceConfigurationType', module='types') + key "maintenanceWindow": ForwardRef('MaintenanceWindowType', module='types') + backupSchedule: BackupScheduleType + cpuCoreCount: int + licenseModel: Union[str, LicenseModel] + maintenanceConfiguration: MaintenanceConfigurationType + maintenanceWindow: MaintenanceWindowType + + + class azure.mgmt.oracledatabase.types.GroupToRolesMappingDetails(TypedDict, total=False): + key "administratorGroupId": str + key "identityDomainId": str + key "key": str + key "operatorGroupId": str + key "securityGroupId": str + key "userGroupId": str + administratorGroupId: str + identityDomainId: str + key: str + operatorGroupId: str + securityGroupId: str + userGroupId: str + + + class azure.mgmt.oracledatabase.types.KafkaBootstrapServer(TypedDict, total=False): + key "host": Required[str] + key "port": int + host: str + port: int + + + class azure.mgmt.oracledatabase.types.KafkaConnectionDetails(TypedDict, total=False): + key "clusterId": str + key "compartmentId": str + key "connectionType": Required[Literal[ConnectionType.KAFKA]] + key "consumerProperties": str + key "displayName": Required[str] + key "doesUseSecretIds": bool + key "keyId": str + key "keyStorePasswordSecretId": str + key "keyStoreSecretId": str + key "lifecycleDetails": str + key "lifecycleState": Union[str, ConnectionLifecycleState] + key "networkAnchorId": Required[str] + key "ocid": str + key "passwordSecretId": str + key "producerProperties": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "resourceAnchorId": Required[str] + key "routingMethod": Union[str, RoutingMethod] + key "securityProtocol": str + key "shouldUseResourcePrincipal": bool + key "sslKeyPasswordSecretId": str + key "streamPoolId": str + key "technologyType": Required[Union[str, KafkaConnectionTechnologyType]] + key "timeCreated": str + key "timeUpdated": str + key "trustStorePasswordSecretId": str + key "trustStoreSecretId": str + key "username": str + key "vaultId": str + bootstrapServers: list[KafkaBootstrapServer] + clusterId: str + compartmentId: str + connectionType: Literal[ConnectionType.KAFKA] + consumerProperties: str + displayName: str + doesUseSecretIds: bool + keyId: str + keyStorePasswordSecretId: str + keyStoreSecretId: str + lifecycleDetails: str + lifecycleState: Union[str, ConnectionLifecycleState] + networkAnchorId: str + ocid: str + passwordSecretId: str + producerProperties: str + provisioningState: Union[str, AzureResourceProvisioningState] + resourceAnchorId: str + routingMethod: Union[str, RoutingMethod] + securityProtocol: str + shouldUseResourcePrincipal: bool + sslKeyPasswordSecretId: str + streamPoolId: str + technologyType: Union[str, KafkaConnectionTechnologyType] + timeCreated: str + timeUpdated: str + trustStorePasswordSecretId: str + trustStoreSecretId: str + username: str + vaultId: str + + + class azure.mgmt.oracledatabase.types.LongTermBackUpScheduleDetails(TypedDict, total=False): + key "isDisabled": bool + key "repeatCadence": Union[str, RepeatCadenceType] + key "retentionPeriodInDays": int + key "timeOfBackup": str + isDisabled: bool + repeatCadence: Union[str, RepeatCadenceType] + retentionPeriodInDays: int + timeOfBackup: str + + + class azure.mgmt.oracledatabase.types.MaintenanceConfigurationType(TypedDict, total=False): + key "bundleReleaseUpgradePeriodInDays": int + key "interimReleaseUpgradePeriodInDays": int + key "isInterimReleaseAutoUpgradeEnabled": bool + key "majorReleaseUpgradePeriodInDays": int + key "securityPatchUpgradePeriodInDays": int + bundleReleaseUpgradePeriodInDays: int + interimReleaseUpgradePeriodInDays: int + isInterimReleaseAutoUpgradeEnabled: bool + majorReleaseUpgradePeriodInDays: int + securityPatchUpgradePeriodInDays: int + + + class azure.mgmt.oracledatabase.types.MaintenanceWindow(TypedDict, total=False): + key "customActionTimeoutInMins": int + key "isCustomActionTimeoutEnabled": bool + key "isMonthlyPatchingEnabled": bool + key "leadTimeInWeeks": int + key "patchingMode": Union[str, PatchingMode] + key "preference": Union[str, Preference] + customActionTimeoutInMins: int + daysOfWeek: list[DayOfWeek] + hoursOfDay: list[int] + isCustomActionTimeoutEnabled: bool + isMonthlyPatchingEnabled: bool + leadTimeInWeeks: int + months: list[Month] + patchingMode: Union[str, PatchingMode] + preference: Union[str, Preference] + weeksOfMonth: list[int] + + + class azure.mgmt.oracledatabase.types.MaintenanceWindowType(TypedDict, total=False): + key "day": Union[str, DayOfWeekName] + key "startHour": int + day: Union[str, DayOfWeekName] + startHour: int + + + class azure.mgmt.oracledatabase.types.MicrosoftFabricConnectionDetails(TypedDict, total=False): + key "clientId": Required[str] + key "clientSecretSecretId": str + key "compartmentId": str + key "connectionType": Required[Literal[ConnectionType.MICROSOFT_FABRIC]] + key "displayName": Required[str] + key "doesUseSecretIds": bool + key "endpoint": str + key "keyId": str + key "lifecycleDetails": str + key "lifecycleState": Union[str, ConnectionLifecycleState] + key "networkAnchorId": Required[str] + key "ocid": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "resourceAnchorId": Required[str] + key "routingMethod": Union[str, RoutingMethod] + key "technologyType": Required[Union[str, MicrosoftFabricConnectionTechnologyType]] + key "tenantId": Required[str] + key "timeCreated": str + key "timeUpdated": str + key "vaultId": str + clientId: str + clientSecretSecretId: str + compartmentId: str + connectionType: Literal[ConnectionType.MICROSOFT_FABRIC] + displayName: str + doesUseSecretIds: bool + endpoint: str + keyId: str + lifecycleDetails: str + lifecycleState: Union[str, ConnectionLifecycleState] + networkAnchorId: str + ocid: str + provisioningState: Union[str, AzureResourceProvisioningState] + resourceAnchorId: str + routingMethod: Union[str, RoutingMethod] + technologyType: Union[str, MicrosoftFabricConnectionTechnologyType] + tenantId: str + timeCreated: str + timeUpdated: str + vaultId: str + + + class azure.mgmt.oracledatabase.types.Month(TypedDict, total=False): + key "name": Required[Union[str, MonthName]] + name: Union[str, MonthName] + + + class azure.mgmt.oracledatabase.types.NetworkAnchor(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('NetworkAnchorProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + properties: NetworkAnchorProperties + systemData: SystemData + tags: dict[str, str] + type: str + zones: list[str] + + + class azure.mgmt.oracledatabase.types.NetworkAnchorProperties(TypedDict, total=False): + key "cidrBlock": str + key "dnsForwardingEndpointIpAddress": str + key "dnsForwardingEndpointNsgRulesUrl": str + key "dnsForwardingRulesUrl": str + key "dnsListeningEndpointAllowedCidrs": str + key "dnsListeningEndpointIpAddress": str + key "dnsListeningEndpointNsgRulesUrl": str + key "isOracleDnsForwardingEndpointEnabled": bool + key "isOracleDnsListeningEndpointEnabled": bool + key "isOracleToAzureDnsZoneSyncEnabled": bool + key "ociBackupCidrBlock": str + key "ociSubnetId": str + key "ociVcnDnsLabel": str + key "ociVcnId": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "proximityPlacementGroup": ForwardRef('ProximityPlacementGroup', module='types') + key "resourceAnchorId": Required[str] + key "subnetId": Required[str] + key "vnetId": str + cidrBlock: str + dnsForwardingEndpointIpAddress: str + dnsForwardingEndpointNsgRulesUrl: str + dnsForwardingRules: list[DnsForwardingRule] + dnsForwardingRulesUrl: str + dnsListeningEndpointAllowedCidrs: str + dnsListeningEndpointIpAddress: str + dnsListeningEndpointNsgRulesUrl: str + isOracleDnsForwardingEndpointEnabled: bool + isOracleDnsListeningEndpointEnabled: bool + isOracleToAzureDnsZoneSyncEnabled: bool + ociBackupCidrBlock: str + ociSubnetId: str + ociVcnDnsLabel: str + ociVcnId: str + provisioningState: Union[str, AzureResourceProvisioningState] + proximityPlacementGroup: ProximityPlacementGroup + resourceAnchorId: str + subnetId: str + vnetId: str + + + class azure.mgmt.oracledatabase.types.NetworkAnchorUpdate(TypedDict, total=False): + key "properties": ForwardRef('NetworkAnchorUpdateProperties', module='types') + properties: NetworkAnchorUpdateProperties + tags: dict[str, str] + zones: list[str] + + + class azure.mgmt.oracledatabase.types.NetworkAnchorUpdateProperties(TypedDict, total=False): + key "isOracleDnsForwardingEndpointEnabled": bool + key "isOracleDnsListeningEndpointEnabled": bool + key "isOracleToAzureDnsZoneSyncEnabled": bool + key "ociBackupCidrBlock": str + isOracleDnsForwardingEndpointEnabled: bool + isOracleDnsListeningEndpointEnabled: bool + isOracleToAzureDnsZoneSyncEnabled: bool + ociBackupCidrBlock: str + + + class azure.mgmt.oracledatabase.types.NsgCidr(TypedDict, total=False): + key "destinationPortRange": ForwardRef('PortRange', module='types') + key "source": Required[str] + destinationPortRange: PortRange + source: str + + + class azure.mgmt.oracledatabase.types.OggDeploymentDetails(TypedDict, total=False): + key "adminPassword": str + key "adminUsername": str + key "certificate": str + key "credentialStore": Union[str, CredentialType] + key "deploymentName": Required[str] + key "groupToRolesMapping": ForwardRef('GroupToRolesMappingDetails', module='types') + key "oggVersion": str + key "passwordSecretId": str + adminPassword: str + adminUsername: str + certificate: str + credentialStore: Union[str, CredentialType] + deploymentName: str + groupToRolesMapping: GroupToRolesMappingDetails + oggVersion: str + passwordSecretId: str + + + class azure.mgmt.oracledatabase.types.OracleConnectionDetails(TypedDict, total=False): + key "authenticationMode": str + key "compartmentId": str + key "connectionString": str + key "connectionType": Required[Literal[ConnectionType.ORACLE]] + key "databaseId": str + key "displayName": Required[str] + key "doesUseSecretIds": bool + key "keyId": str + key "lifecycleDetails": str + key "lifecycleState": Union[str, ConnectionLifecycleState] + key "networkAnchorId": Required[str] + key "ocid": str + key "passwordSecretId": str + key "privateIp": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "resourceAnchorId": Required[str] + key "routingMethod": Union[str, RoutingMethod] + key "sessionMode": Union[str, SessionMode] + key "technologyType": Required[Union[str, OracleConnectionTechnologyType]] + key "timeCreated": str + key "timeUpdated": str + key "username": Required[str] + key "vaultId": str + key "walletSecretId": str + authenticationMode: str + compartmentId: str + connectionString: str + connectionType: Literal[ConnectionType.ORACLE] + databaseId: str + displayName: str + doesUseSecretIds: bool + keyId: str + lifecycleDetails: str + lifecycleState: Union[str, ConnectionLifecycleState] + networkAnchorId: str + ocid: str + passwordSecretId: str + privateIp: str + provisioningState: Union[str, AzureResourceProvisioningState] + resourceAnchorId: str + routingMethod: Union[str, RoutingMethod] + sessionMode: Union[str, SessionMode] + technologyType: Union[str, OracleConnectionTechnologyType] + timeCreated: str + timeUpdated: str + username: str + vaultId: str + walletSecretId: str + + + class azure.mgmt.oracledatabase.types.OracleSubscription(ProxyResource): + key "id": str + key "name": str + key "plan": ForwardRef('Plan', module='types') + key "properties": ForwardRef('OracleSubscriptionProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + name: str + plan: Plan + properties: OracleSubscriptionProperties + systemData: SystemData + type: str + + + class azure.mgmt.oracledatabase.types.OracleSubscriptionProperties(TypedDict, total=False): + key "addSubscriptionOperationState": Union[str, AddSubscriptionOperationState] + key "cloudAccountId": str + key "cloudAccountState": Union[str, CloudAccountProvisioningState] + key "intent": Union[str, Intent] + key "lastOperationStatusDetail": str + key "productCode": str + key "provisioningState": Union[str, OracleSubscriptionProvisioningState] + key "saasSubscriptionId": str + key "termUnit": str + addSubscriptionOperationState: Union[str, AddSubscriptionOperationState] + azureSubscriptionIds: list[str] + cloudAccountId: str + cloudAccountState: Union[str, CloudAccountProvisioningState] + intent: Union[str, Intent] + lastOperationStatusDetail: str + productCode: str + provisioningState: Union[str, OracleSubscriptionProvisioningState] + saasSubscriptionId: str + termUnit: str + + + class azure.mgmt.oracledatabase.types.OracleSubscriptionUpdate(TypedDict, total=False): + key "plan": ForwardRef('PlanUpdate', module='types') + key "properties": ForwardRef('OracleSubscriptionUpdateProperties', module='types') + plan: PlanUpdate + properties: OracleSubscriptionUpdateProperties + + + class azure.mgmt.oracledatabase.types.OracleSubscriptionUpdateProperties(TypedDict, total=False): + key "intent": Union[str, Intent] + key "productCode": str + intent: Union[str, Intent] + productCode: str + + + class azure.mgmt.oracledatabase.types.PeerDbDetails(TypedDict, total=False): + key "peerDbId": str + key "peerDbLocation": str + key "peerDbOcid": str + peerDbId: str + peerDbLocation: str + peerDbOcid: str + + + class azure.mgmt.oracledatabase.types.Plan(TypedDict, total=False): + key "name": Required[str] + key "product": Required[str] + key "promotionCode": str + key "publisher": Required[str] + key "version": str + name: str + product: str + promotionCode: str + publisher: str + version: str + + + class azure.mgmt.oracledatabase.types.PlanUpdate(TypedDict, total=False): + key "name": str + key "product": str + key "promotionCode": str + key "publisher": str + key "version": str + name: str + product: str + promotionCode: str + publisher: str + version: str + + + class azure.mgmt.oracledatabase.types.PortRange(TypedDict, total=False): + key "max": Required[int] + key "min": Required[int] + max: int + min: int + + + class azure.mgmt.oracledatabase.types.PrivateIpAddressesFilter(TypedDict, total=False): + key "subnetId": Required[str] + key "vnicId": Required[str] + subnetId: str + vnicId: str + + + class azure.mgmt.oracledatabase.types.ProfileType(TypedDict, total=False): + key "consumerGroup": Union[str, ConsumerGroup] + key "displayName": Required[str] + key "hostFormat": Required[Union[str, HostFormatType]] + key "isRegional": bool + key "protocol": Required[Union[str, ProtocolType]] + key "sessionMode": Required[Union[str, SessionModeType]] + key "syntaxFormat": Required[Union[str, SyntaxFormatType]] + key "tlsAuthentication": Union[str, TlsAuthenticationType] + key "value": Required[str] + consumerGroup: Union[str, ConsumerGroup] + displayName: str + hostFormat: Union[str, HostFormatType] + isRegional: bool + protocol: Union[str, ProtocolType] + sessionMode: Union[str, SessionModeType] + syntaxFormat: Union[str, SyntaxFormatType] + tlsAuthentication: Union[str, TlsAuthenticationType] + value: str + + + class azure.mgmt.oracledatabase.types.ProximityPlacementGroup(TypedDict, total=False): + key "entityTypeIntendedToUse": Required[Union[str, ProximityPlacementGroupEntityType]] + key "proximityAnchorId": str + key "proximityPlacementGroupId": Required[str] + entityTypeIntendedToUse: Union[str, ProximityPlacementGroupEntityType] + proximityAnchorId: str + proximityPlacementGroupId: str + + + class azure.mgmt.oracledatabase.types.ProxyResource(Resource): + key "id": str + key "name": str + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + name: str + systemData: SystemData + type: str + + + class azure.mgmt.oracledatabase.types.RemoveVirtualMachineFromExadbVmClusterDetails(TypedDict, total=False): + key "dbNodes": Required[list[DbNodeDetails]] + dbNodes: list[DbNodeDetails] + + + class azure.mgmt.oracledatabase.types.Resource(TypedDict, total=False): + key "id": str + key "name": str + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + name: str + systemData: SystemData + type: str + + + class azure.mgmt.oracledatabase.types.ResourceAnchor(TrackedResource): + key "id": str + key "location": Required[str] + key "name": str + key "properties": ForwardRef('ResourceAnchorProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + properties: ResourceAnchorProperties + systemData: SystemData + tags: dict[str, str] + type: str + + + class azure.mgmt.oracledatabase.types.ResourceAnchorProperties(TypedDict, total=False): + key "linkedCompartmentId": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + linkedCompartmentId: str + provisioningState: Union[str, AzureResourceProvisioningState] + + + class azure.mgmt.oracledatabase.types.ResourceAnchorUpdate(TypedDict, total=False): + tags: dict[str, str] + + + class azure.mgmt.oracledatabase.types.RestoreAutonomousDatabaseDetails(TypedDict, total=False): + key "timestamp": Required[str] + timestamp: str + + + class azure.mgmt.oracledatabase.types.ScheduledOperationsType(TypedDict, total=False): + key "dayOfWeek": Required[DayOfWeek] + key "scheduledStartTime": str + key "scheduledStopTime": str + dayOfWeek: DayOfWeek + scheduledStartTime: str + scheduledStopTime: str + + + class azure.mgmt.oracledatabase.types.ScheduledOperationsTypeUpdate(TypedDict, total=False): + key "dayOfWeek": ForwardRef('DayOfWeekUpdate', module='types') + key "scheduledStartTime": str + key "scheduledStopTime": str + dayOfWeek: DayOfWeekUpdate + scheduledStartTime: str + scheduledStopTime: str + + + class azure.mgmt.oracledatabase.types.SourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + BACKUP_FROM_ID = "BackupFromId" + BACKUP_FROM_TIMESTAMP = "BackupFromTimestamp" + CLONE_TO_REFRESHABLE = "CloneToRefreshable" + CROSS_REGION_DATAGUARD = "CrossRegionDataguard" + CROSS_REGION_DISASTER_RECOVERY = "CrossRegionDisasterRecovery" + DATABASE = "Database" + NONE = "None" + + + class azure.mgmt.oracledatabase.types.SystemData(TypedDict, total=False): + key "createdAt": str + key "createdBy": str + key "createdByType": Union[str, CreatedByType] + key "lastModifiedAt": str + key "lastModifiedBy": str + key "lastModifiedByType": Union[str, CreatedByType] + createdAt: str + createdBy: str + createdByType: Union[str, CreatedByType] + lastModifiedAt: str + lastModifiedBy: str + lastModifiedByType: Union[str, CreatedByType] + + + class azure.mgmt.oracledatabase.types.TrackedResource(Resource): + key "id": str + key "location": Required[str] + key "name": str + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + location: str + name: str + systemData: SystemData + tags: dict[str, str] + type: str + + + class azure.mgmt.oracledatabase.types.VirtualNetworkAddress(ProxyResource): + key "id": str + key "name": str + key "properties": ForwardRef('VirtualNetworkAddressProperties', module='types') + key "systemData": ForwardRef('SystemData', module='types') + key "type": str + id: str + name: str + properties: VirtualNetworkAddressProperties + systemData: SystemData + type: str + + + class azure.mgmt.oracledatabase.types.VirtualNetworkAddressProperties(TypedDict, total=False): + key "domain": str + key "ipAddress": str + key "lifecycleDetails": str + key "lifecycleState": Union[str, VirtualNetworkAddressLifecycleState] + key "ocid": str + key "provisioningState": Union[str, AzureResourceProvisioningState] + key "timeAssigned": str + key "vmOcid": str + domain: str + ipAddress: str + lifecycleDetails: str + lifecycleState: Union[str, VirtualNetworkAddressLifecycleState] + ocid: str + provisioningState: Union[str, AzureResourceProvisioningState] + timeAssigned: str + vmOcid: str + + +``` \ No newline at end of file diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/api.metadata.yml b/sdk/oracledatabase/azure-mgmt-oracledatabase/api.metadata.yml new file mode 100644 index 000000000000..7dd9357cc5c3 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/api.metadata.yml @@ -0,0 +1,3 @@ +apiMdSha256: c24493d17291cc064c11626be612b8781ba0db85c29df83417d05c6cb58fb4a1 +parserVersion: 0.3.31 +pythonVersion: 3.13.15 diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/apiview-properties.json b/sdk/oracledatabase/azure-mgmt-oracledatabase/apiview-properties.json index b00d7642244b..0014be589da9 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/apiview-properties.json +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/apiview-properties.json @@ -6,9 +6,13 @@ "azure.mgmt.oracledatabase.models.AllConnectionStringType": "Oracle.Database.AllConnectionStringType", "azure.mgmt.oracledatabase.models.ApexDetailsType": "Oracle.Database.ApexDetailsType", "azure.mgmt.oracledatabase.models.Resource": "Azure.ResourceManager.CommonTypes.Resource", + "azure.mgmt.oracledatabase.models.ProxyResource": "Azure.ResourceManager.CommonTypes.ProxyResource", + "azure.mgmt.oracledatabase.models.AssignedConnection": "Oracle.Database.AssignedConnection", + "azure.mgmt.oracledatabase.models.AssignedDeployment": "Oracle.Database.AssignedDeployment", + "azure.mgmt.oracledatabase.models.AssignUnassignConnection": "Oracle.Database.AssignUnassignConnection", + "azure.mgmt.oracledatabase.models.AssignUnassignDeployment": "Oracle.Database.AssignUnassignDeployment", "azure.mgmt.oracledatabase.models.TrackedResource": "Azure.ResourceManager.CommonTypes.TrackedResource", "azure.mgmt.oracledatabase.models.AutonomousDatabase": "Oracle.Database.AutonomousDatabase", - "azure.mgmt.oracledatabase.models.ProxyResource": "Azure.ResourceManager.CommonTypes.ProxyResource", "azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup": "Oracle.Database.AutonomousDatabaseBackup", "azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupProperties": "Oracle.Database.AutonomousDatabaseBackupProperties", "azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupUpdate": "Azure.ResourceManager.Foundations.ResourceUpdateModel", @@ -30,6 +34,7 @@ "azure.mgmt.oracledatabase.models.AutonomousDbVersion": "Oracle.Database.AutonomousDbVersion", "azure.mgmt.oracledatabase.models.AutonomousDbVersionProperties": "Oracle.Database.AutonomousDbVersionProperties", "azure.mgmt.oracledatabase.models.AzureSubscriptions": "Oracle.Database.AzureSubscriptions", + "azure.mgmt.oracledatabase.models.BackupScheduleType": "Oracle.Database.BackupScheduleType", "azure.mgmt.oracledatabase.models.CloudAccountDetails": "Oracle.Database.CloudAccountDetails", "azure.mgmt.oracledatabase.models.CloudExadataInfrastructure": "Oracle.Database.CloudExadataInfrastructure", "azure.mgmt.oracledatabase.models.CloudExadataInfrastructureProperties": "Oracle.Database.CloudExadataInfrastructureProperties", @@ -40,9 +45,14 @@ "azure.mgmt.oracledatabase.models.CloudVmClusterUpdate": "Azure.ResourceManager.Foundations.ResourceUpdateModel", "azure.mgmt.oracledatabase.models.CloudVmClusterUpdateProperties": "Azure.ResourceManager.Foundations.ResourceUpdateModelProperties", "azure.mgmt.oracledatabase.models.ConfigureExascaleCloudExadataInfrastructureDetails": "Oracle.Database.ConfigureExascaleCloudExadataInfrastructureDetails", + "azure.mgmt.oracledatabase.models.ConnectionBaseProperties": "Oracle.Database.ConnectionBaseProperties", "azure.mgmt.oracledatabase.models.ConnectionStringType": "Oracle.Database.ConnectionStringType", "azure.mgmt.oracledatabase.models.ConnectionUrlType": "Oracle.Database.ConnectionUrlType", "azure.mgmt.oracledatabase.models.CustomerContact": "Oracle.Database.CustomerContact", + "azure.mgmt.oracledatabase.models.DatabaseEdition": "Oracle.Database.DatabaseEdition", + "azure.mgmt.oracledatabase.models.DatabaseEditionProperties": "Oracle.Database.DatabaseEditionProperties", + "azure.mgmt.oracledatabase.models.DatabaseSystemShape": "Oracle.Database.DatabaseSystemShape", + "azure.mgmt.oracledatabase.models.DatabaseSystemShapeProperties": "Oracle.Database.DatabaseSystemShapeProperties", "azure.mgmt.oracledatabase.models.DataCollectionOptions": "Oracle.Database.DataCollectionOptions", "azure.mgmt.oracledatabase.models.DayOfWeek": "Oracle.Database.DayOfWeek", "azure.mgmt.oracledatabase.models.DayOfWeekUpdate": "Oracle.Database.DayOfWeekUpdate", @@ -66,6 +76,8 @@ "azure.mgmt.oracledatabase.models.DbVersion": "Oracle.Database.DbVersion", "azure.mgmt.oracledatabase.models.DbVersionProperties": "Oracle.Database.DbVersionProperties", "azure.mgmt.oracledatabase.models.DefinedFileSystemConfiguration": "Oracle.Database.DefinedFileSystemConfiguration", + "azure.mgmt.oracledatabase.models.DeploymentConnectionAssignmentProperties": "Oracle.Database.DeploymentConnectionAssignmentProperties", + "azure.mgmt.oracledatabase.models.DeploymentProperties": "Oracle.Database.DeploymentProperties", "azure.mgmt.oracledatabase.models.DisasterRecoveryConfigurationDetails": "Oracle.Database.DisasterRecoveryConfigurationDetails", "azure.mgmt.oracledatabase.models.DnsForwardingRule": "Oracle.Database.DnsForwardingRule", "azure.mgmt.oracledatabase.models.DnsPrivateView": "Oracle.Database.DnsPrivateView", @@ -98,16 +110,30 @@ "azure.mgmt.oracledatabase.models.GiMinorVersionProperties": "Oracle.Database.GiMinorVersionProperties", "azure.mgmt.oracledatabase.models.GiVersion": "Oracle.Database.GiVersion", "azure.mgmt.oracledatabase.models.GiVersionProperties": "Oracle.Database.GiVersionProperties", + "azure.mgmt.oracledatabase.models.GoldenGateConnection": "Oracle.Database.GoldenGateConnection", + "azure.mgmt.oracledatabase.models.GoldenGateConnectionUpdate": "Azure.ResourceManager.Foundations.ResourceUpdateModel", + "azure.mgmt.oracledatabase.models.GoldenGateConnectionUpdateProperties": "Azure.ResourceManager.Foundations.ResourceUpdateModelProperties", + "azure.mgmt.oracledatabase.models.GoldenGateDeployment": "Oracle.Database.GoldenGateDeployment", + "azure.mgmt.oracledatabase.models.GoldenGateDeploymentUpdate": "Azure.ResourceManager.Foundations.ResourceUpdateModel", + "azure.mgmt.oracledatabase.models.GoldenGateDeploymentUpdateProperties": "Azure.ResourceManager.Foundations.ResourceUpdateModelProperties", + "azure.mgmt.oracledatabase.models.GroupToRolesMappingDetails": "Oracle.Database.GroupToRolesMappingDetails", + "azure.mgmt.oracledatabase.models.KafkaBootstrapServer": "Oracle.Database.KafkaBootstrapServer", + "azure.mgmt.oracledatabase.models.KafkaConnectionDetails": "Oracle.Database.KafkaConnectionDetails", "azure.mgmt.oracledatabase.models.LongTermBackUpScheduleDetails": "Oracle.Database.LongTermBackUpScheduleDetails", + "azure.mgmt.oracledatabase.models.MaintenanceConfigurationType": "Oracle.Database.MaintenanceConfigurationType", "azure.mgmt.oracledatabase.models.MaintenanceWindow": "Oracle.Database.MaintenanceWindow", + "azure.mgmt.oracledatabase.models.MaintenanceWindowType": "Oracle.Database.MaintenanceWindowType", + "azure.mgmt.oracledatabase.models.MicrosoftFabricConnectionDetails": "Oracle.Database.MicrosoftFabricConnectionDetails", "azure.mgmt.oracledatabase.models.Month": "Oracle.Database.Month", "azure.mgmt.oracledatabase.models.NetworkAnchor": "Oracle.Database.NetworkAnchor", "azure.mgmt.oracledatabase.models.NetworkAnchorProperties": "Oracle.Database.NetworkAnchorProperties", "azure.mgmt.oracledatabase.models.NetworkAnchorUpdate": "Azure.ResourceManager.Foundations.ResourceUpdateModel", "azure.mgmt.oracledatabase.models.NetworkAnchorUpdateProperties": "Azure.ResourceManager.Foundations.ResourceUpdateModelProperties", "azure.mgmt.oracledatabase.models.NsgCidr": "Oracle.Database.NsgCidr", + "azure.mgmt.oracledatabase.models.OggDeploymentDetails": "Oracle.Database.OggDeploymentDetails", "azure.mgmt.oracledatabase.models.Operation": "Azure.ResourceManager.CommonTypes.Operation", "azure.mgmt.oracledatabase.models.OperationDisplay": "Azure.ResourceManager.CommonTypes.OperationDisplay", + "azure.mgmt.oracledatabase.models.OracleConnectionDetails": "Oracle.Database.OracleConnectionDetails", "azure.mgmt.oracledatabase.models.OracleSubscription": "Oracle.Database.OracleSubscription", "azure.mgmt.oracledatabase.models.OracleSubscriptionProperties": "Oracle.Database.OracleSubscriptionProperties", "azure.mgmt.oracledatabase.models.OracleSubscriptionUpdate": "Azure.ResourceManager.Foundations.ResourceUpdateModel", @@ -119,6 +145,7 @@ "azure.mgmt.oracledatabase.models.PrivateIpAddressesFilter": "Oracle.Database.PrivateIpAddressesFilter", "azure.mgmt.oracledatabase.models.PrivateIpAddressProperties": "Oracle.Database.PrivateIpAddressProperties", "azure.mgmt.oracledatabase.models.ProfileType": "Oracle.Database.ProfileType", + "azure.mgmt.oracledatabase.models.ProximityPlacementGroup": "Oracle.Database.ProximityPlacementGroup", "azure.mgmt.oracledatabase.models.RemoveVirtualMachineFromExadbVmClusterDetails": "Oracle.Database.RemoveVirtualMachineFromExadbVmClusterDetails", "azure.mgmt.oracledatabase.models.ResourceAnchor": "Oracle.Database.ResourceAnchor", "azure.mgmt.oracledatabase.models.ResourceAnchorProperties": "Oracle.Database.ResourceAnchorProperties", @@ -141,6 +168,7 @@ "azure.mgmt.oracledatabase.models.PatchingMode": "Oracle.Database.PatchingMode", "azure.mgmt.oracledatabase.models.AzureResourceProvisioningState": "Oracle.Database.AzureResourceProvisioningState", "azure.mgmt.oracledatabase.models.CloudExadataInfrastructureLifecycleState": "Oracle.Database.CloudExadataInfrastructureLifecycleState", + "azure.mgmt.oracledatabase.models.ProximityPlacementGroupEntityType": "Oracle.Database.ProximityPlacementGroupEntityType", "azure.mgmt.oracledatabase.models.ComputeModel": "Oracle.Database.ComputeModel", "azure.mgmt.oracledatabase.models.DbServerPatchingStatus": "Oracle.Database.DbServerPatchingStatus", "azure.mgmt.oracledatabase.models.DbServerProvisioningState": "Oracle.Database.DbServerProvisioningState", @@ -161,6 +189,7 @@ "azure.mgmt.oracledatabase.models.DbNodeActionEnum": "Oracle.Database.DbNodeActionEnum", "azure.mgmt.oracledatabase.models.SystemShapes": "Oracle.Database.SystemShapes", "azure.mgmt.oracledatabase.models.ShapeFamily": "Oracle.Database.ShapeFamily", + "azure.mgmt.oracledatabase.models.GiMinorVersionSortOrder": "Oracle.Database.GiMinorVersionSortOrder", "azure.mgmt.oracledatabase.models.DnsPrivateViewsLifecycleState": "Oracle.Database.DnsPrivateViewsLifecycleState", "azure.mgmt.oracledatabase.models.DnsPrivateZonesLifecycleState": "Oracle.Database.DnsPrivateZonesLifecycleState", "azure.mgmt.oracledatabase.models.ZoneType": "Oracle.Database.ZoneType", @@ -183,6 +212,7 @@ "azure.mgmt.oracledatabase.models.OperationsInsightsStatusType": "Oracle.Database.OperationsInsightsStatusType", "azure.mgmt.oracledatabase.models.PermissionLevelType": "Oracle.Database.PermissionLevelType", "azure.mgmt.oracledatabase.models.RoleType": "Oracle.Database.RoleType", + "azure.mgmt.oracledatabase.models.BackupDestinationType": "Oracle.Database.BackupDestinationType", "azure.mgmt.oracledatabase.models.SourceType": "Oracle.Database.SourceType", "azure.mgmt.oracledatabase.models.CloneType": "Oracle.Database.CloneType", "azure.mgmt.oracledatabase.models.RefreshableModelType": "Oracle.Database.RefreshableModelType", @@ -203,6 +233,20 @@ "azure.mgmt.oracledatabase.models.DbSystemDatabaseEditionType": "Oracle.Database.DbSystemDatabaseEditionType", "azure.mgmt.oracledatabase.models.BaseDbSystemShapes": "Oracle.Database.BaseDbSystemShapes", "azure.mgmt.oracledatabase.models.ShapeFamilyType": "Oracle.Database.ShapeFamilyType", + "azure.mgmt.oracledatabase.models.ConnectionType": "Oracle.Database.ConnectionType", + "azure.mgmt.oracledatabase.models.RoutingMethod": "Oracle.Database.RoutingMethod", + "azure.mgmt.oracledatabase.models.ConnectionLifecycleState": "Oracle.Database.ConnectionLifecycleState", + "azure.mgmt.oracledatabase.models.KafkaConnectionTechnologyType": "Oracle.Database.KafkaConnectionTechnologyType", + "azure.mgmt.oracledatabase.models.MicrosoftFabricConnectionTechnologyType": "Oracle.Database.MicrosoftFabricConnectionTechnologyType", + "azure.mgmt.oracledatabase.models.OracleConnectionTechnologyType": "Oracle.Database.OracleConnectionTechnologyType", + "azure.mgmt.oracledatabase.models.SessionMode": "Oracle.Database.SessionMode", + "azure.mgmt.oracledatabase.models.GoldenGateConnectionAssignmentLifecycleState": "Oracle.Database.GoldenGateConnectionAssignmentLifecycleState", + "azure.mgmt.oracledatabase.models.FrequencyType": "Oracle.Database.FrequencyType", + "azure.mgmt.oracledatabase.models.CategoryType": "Oracle.Database.CategoryType", + "azure.mgmt.oracledatabase.models.DeploymentType": "Oracle.Database.DeploymentType", + "azure.mgmt.oracledatabase.models.SetupType": "Oracle.Database.SetupType", + "azure.mgmt.oracledatabase.models.DeploymentLifecycleState": "Oracle.Database.DeploymentLifecycleState", + "azure.mgmt.oracledatabase.models.CredentialType": "Oracle.Database.CredentialType", "azure.mgmt.oracledatabase.operations.Operations.list": "Azure.ResourceManager.Operations.list", "azure.mgmt.oracledatabase.aio.operations.Operations.list": "Azure.ResourceManager.Operations.list", "azure.mgmt.oracledatabase.operations.CloudExadataInfrastructuresOperations.list_by_subscription": "Azure.ResourceManager.CloudExadataInfrastructures.listBySubscription", @@ -422,6 +466,55 @@ "azure.mgmt.oracledatabase.operations.DbVersionsOperations.get": "Oracle.Database.DbVersions.get", "azure.mgmt.oracledatabase.aio.operations.DbVersionsOperations.get": "Oracle.Database.DbVersions.get", "azure.mgmt.oracledatabase.operations.DbVersionsOperations.list_by_location": "Oracle.Database.DbVersions.listByLocation", - "azure.mgmt.oracledatabase.aio.operations.DbVersionsOperations.list_by_location": "Oracle.Database.DbVersions.listByLocation" - } + "azure.mgmt.oracledatabase.aio.operations.DbVersionsOperations.list_by_location": "Oracle.Database.DbVersions.listByLocation", + "azure.mgmt.oracledatabase.operations.DatabaseEditionsOperations.get": "Oracle.Database.DatabaseEditions.get", + "azure.mgmt.oracledatabase.aio.operations.DatabaseEditionsOperations.get": "Oracle.Database.DatabaseEditions.get", + "azure.mgmt.oracledatabase.operations.DatabaseEditionsOperations.list_by_location": "Oracle.Database.DatabaseEditions.listByLocation", + "azure.mgmt.oracledatabase.aio.operations.DatabaseEditionsOperations.list_by_location": "Oracle.Database.DatabaseEditions.listByLocation", + "azure.mgmt.oracledatabase.operations.DatabaseSystemShapeResourcesOperations.get": "Oracle.Database.DatabaseSystemShapeResources.get", + "azure.mgmt.oracledatabase.aio.operations.DatabaseSystemShapeResourcesOperations.get": "Oracle.Database.DatabaseSystemShapeResources.get", + "azure.mgmt.oracledatabase.operations.DatabaseSystemShapeResourcesOperations.list_by_location": "Oracle.Database.DatabaseSystemShapeResources.listByLocation", + "azure.mgmt.oracledatabase.aio.operations.DatabaseSystemShapeResourcesOperations.list_by_location": "Oracle.Database.DatabaseSystemShapeResources.listByLocation", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.list_by_subscription": "Azure.ResourceManager.GoldenGateConnections.listBySubscription", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.list_by_subscription": "Azure.ResourceManager.GoldenGateConnections.listBySubscription", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.begin_create_or_update": "Azure.ResourceManager.GoldenGateConnections.createOrUpdate", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.begin_create_or_update": "Azure.ResourceManager.GoldenGateConnections.createOrUpdate", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.get": "Azure.ResourceManager.GoldenGateConnections.get", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.get": "Azure.ResourceManager.GoldenGateConnections.get", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.begin_update": "Azure.ResourceManager.GoldenGateConnections.update", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.begin_update": "Azure.ResourceManager.GoldenGateConnections.update", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.begin_delete": "Azure.ResourceManager.GoldenGateConnections.delete", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.begin_delete": "Azure.ResourceManager.GoldenGateConnections.delete", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.list_by_resource_group": "Oracle.Database.GoldenGateConnections.listByResourceGroup", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.list_by_resource_group": "Oracle.Database.GoldenGateConnections.listByResourceGroup", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.begin_assign_deployment": "Oracle.Database.GoldenGateConnections.assignDeployment", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.begin_assign_deployment": "Oracle.Database.GoldenGateConnections.assignDeployment", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.begin_unassign_deployment": "Oracle.Database.GoldenGateConnections.unassignDeployment", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.begin_unassign_deployment": "Oracle.Database.GoldenGateConnections.unassignDeployment", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.list_assigned_deployments_by_parent": "Oracle.Database.GoldenGateConnections.listAssignedDeploymentsByParent", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.list_assigned_deployments_by_parent": "Oracle.Database.GoldenGateConnections.listAssignedDeploymentsByParent", + "azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations.get_assigned_deployment": "Oracle.Database.GoldenGateConnections.getAssignedDeployment", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations.get_assigned_deployment": "Oracle.Database.GoldenGateConnections.getAssignedDeployment", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.list_by_subscription": "Azure.ResourceManager.GoldenGateDeployments.listBySubscription", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.list_by_subscription": "Azure.ResourceManager.GoldenGateDeployments.listBySubscription", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.begin_create_or_update": "Azure.ResourceManager.GoldenGateDeployments.createOrUpdate", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.begin_create_or_update": "Azure.ResourceManager.GoldenGateDeployments.createOrUpdate", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.get": "Azure.ResourceManager.GoldenGateDeployments.get", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.get": "Azure.ResourceManager.GoldenGateDeployments.get", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.begin_update": "Azure.ResourceManager.GoldenGateDeployments.update", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.begin_update": "Azure.ResourceManager.GoldenGateDeployments.update", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.begin_delete": "Azure.ResourceManager.GoldenGateDeployments.delete", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.begin_delete": "Azure.ResourceManager.GoldenGateDeployments.delete", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.list_by_resource_group": "Oracle.Database.GoldenGateDeployments.listByResourceGroup", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.list_by_resource_group": "Oracle.Database.GoldenGateDeployments.listByResourceGroup", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.begin_assign_connection": "Oracle.Database.GoldenGateDeployments.assignConnection", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.begin_assign_connection": "Oracle.Database.GoldenGateDeployments.assignConnection", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.begin_unassign_connection": "Oracle.Database.GoldenGateDeployments.unassignConnection", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.begin_unassign_connection": "Oracle.Database.GoldenGateDeployments.unassignConnection", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.list_assigned_connections_by_parent": "Oracle.Database.GoldenGateDeployments.listAssignedConnectionsByParent", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.list_assigned_connections_by_parent": "Oracle.Database.GoldenGateDeployments.listAssignedConnectionsByParent", + "azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations.get_assigned_connection": "Oracle.Database.GoldenGateDeployments.getAssignedConnection", + "azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations.get_assigned_connection": "Oracle.Database.GoldenGateDeployments.getAssignedConnection" + }, + "CrossLanguageVersion": "3bd046aa372c" } \ No newline at end of file diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_client.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_client.py index f3d7a22c1efe..4a3b356de838 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_client.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_client.py @@ -1,3 +1,4 @@ +# pylint: disable=line-too-long,useless-suppression # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -7,8 +8,8 @@ # -------------------------------------------------------------------------- from copy import deepcopy +import sys from typing import Any, Optional, TYPE_CHECKING, cast -from typing_extensions import Self from azure.core.pipeline import policies from azure.core.rest import HttpRequest, HttpResponse @@ -27,6 +28,8 @@ AutonomousDatabasesOperations, CloudExadataInfrastructuresOperations, CloudVmClustersOperations, + DatabaseEditionsOperations, + DatabaseSystemShapeResourcesOperations, DbNodesOperations, DbServersOperations, DbSystemShapesOperations, @@ -40,6 +43,8 @@ FlexComponentsOperations, GiMinorVersionsOperations, GiVersionsOperations, + GoldenGateConnectionsOperations, + GoldenGateDeploymentsOperations, NetworkAnchorsOperations, Operations, OracleSubscriptionsOperations, @@ -48,12 +53,17 @@ VirtualNetworkAddressesOperations, ) +if sys.version_info >= (3, 11): + from typing import Self +else: + from typing_extensions import Self # type: ignore + if TYPE_CHECKING: from azure.core import AzureClouds from azure.core.credentials import TokenCredential -class OracleDatabaseMgmtClient: # pylint: disable=too-many-instance-attributes +class OracleDatabaseMgmtClient: # pylint: disable=too-many-instance-attributes,docstring-keyword-should-match-keyword-only """OracleDatabaseMgmtClient. :ivar operations: Operations operations @@ -118,6 +128,17 @@ class OracleDatabaseMgmtClient: # pylint: disable=too-many-instance-attributes :vartype db_systems: azure.mgmt.oracledatabase.operations.DbSystemsOperations :ivar db_versions: DbVersionsOperations operations :vartype db_versions: azure.mgmt.oracledatabase.operations.DbVersionsOperations + :ivar database_editions: DatabaseEditionsOperations operations + :vartype database_editions: azure.mgmt.oracledatabase.operations.DatabaseEditionsOperations + :ivar database_system_shape_resources: DatabaseSystemShapeResourcesOperations operations + :vartype database_system_shape_resources: + azure.mgmt.oracledatabase.operations.DatabaseSystemShapeResourcesOperations + :ivar golden_gate_connections: GoldenGateConnectionsOperations operations + :vartype golden_gate_connections: + azure.mgmt.oracledatabase.operations.GoldenGateConnectionsOperations + :ivar golden_gate_deployments: GoldenGateDeploymentsOperations operations + :vartype golden_gate_deployments: + azure.mgmt.oracledatabase.operations.GoldenGateDeploymentsOperations :param credential: Credential used to authenticate requests to the service. Required. :type credential: ~azure.core.credentials.TokenCredential :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. @@ -127,7 +148,8 @@ class OracleDatabaseMgmtClient: # pylint: disable=too-many-instance-attributes :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is None. :paramtype cloud_setting: ~azure.core.AzureClouds - :keyword api_version: The API version to use for this operation. Default value is "2025-09-01". + :keyword api_version: The API version to use for this operation. Known values are "2026-06-01" + and None. Default value is None. If not set, the operation's default API version will be used. Note that overriding this default value may result in unsupported behavior. :paramtype api_version: str :keyword int polling_interval: Default waiting time between two polls for LRO operations if no @@ -239,6 +261,18 @@ def __init__( ) self.db_systems = DbSystemsOperations(self._client, self._config, self._serialize, self._deserialize) self.db_versions = DbVersionsOperations(self._client, self._config, self._serialize, self._deserialize) + self.database_editions = DatabaseEditionsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.database_system_shape_resources = DatabaseSystemShapeResourcesOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.golden_gate_connections = GoldenGateConnectionsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.golden_gate_deployments = GoldenGateDeploymentsOperations( + self._client, self._config, self._serialize, self._deserialize + ) def send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: """Runs the network request through the client's chained policies. diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_configuration.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_configuration.py index 0fc485431d57..da6931283a3e 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_configuration.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_configuration.py @@ -1,3 +1,4 @@ +# pylint: disable=line-too-long,useless-suppression # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -18,7 +19,7 @@ from azure.core.credentials import TokenCredential -class OracleDatabaseMgmtClientConfiguration: # pylint: disable=too-many-instance-attributes +class OracleDatabaseMgmtClientConfiguration: # pylint: disable=too-many-instance-attributes,docstring-keyword-should-match-keyword-only """Configuration for OracleDatabaseMgmtClient. Note that all parameters used to create this instance are saved as instance @@ -33,7 +34,8 @@ class OracleDatabaseMgmtClientConfiguration: # pylint: disable=too-many-instanc :param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is None. :type cloud_setting: ~azure.core.AzureClouds - :keyword api_version: The API version to use for this operation. Default value is "2025-09-01". + :keyword api_version: The API version to use for this operation. Known values are "2026-06-01" + and None. Default value is None. If not set, the operation's default API version will be used. Note that overriding this default value may result in unsupported behavior. :paramtype api_version: str """ @@ -46,7 +48,7 @@ def __init__( cloud_setting: Optional["AzureClouds"] = None, **kwargs: Any ) -> None: - api_version: str = kwargs.pop("api_version", "2025-09-01") + api_version: str = kwargs.pop("api_version", "2026-06-01") if credential is None: raise ValueError("Parameter 'credential' must not be None.") diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_patch.py index 8bcb627aa475..b6400f50d7ce 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_patch.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_patch.py @@ -7,6 +7,7 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ + from typing import List __all__: List[str] = [] # Add all objects you want publicly available to users at this package level diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_utils/model_base.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_utils/model_base.py index 12926fa98dcf..35d5fc024978 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_utils/model_base.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_utils/model_base.py @@ -23,20 +23,26 @@ from json import JSONEncoder import xml.etree.ElementTree as ET from collections.abc import MutableMapping -from typing_extensions import Self import isodate from azure.core.exceptions import DeserializationError from azure.core import CaseInsensitiveEnumMeta from azure.core.pipeline import PipelineResponse from azure.core.serialization import _Null + from azure.core.rest import HttpResponse +if sys.version_info >= (3, 11): + from typing import Self +else: + from typing_extensions import Self + _LOGGER = logging.getLogger(__name__) __all__ = ["SdkJSONEncoder", "Model", "rest_field", "rest_discriminator"] TZ_UTC = timezone.utc _T = typing.TypeVar("_T") +_NONE_TYPE = type(None) def _timedelta_as_isostr(td: timedelta) -> str: @@ -103,6 +109,29 @@ def _serialize_bytes(o, format: typing.Optional[str] = None) -> str: return encoded +def _serialize_duration(td: timedelta, format: typing.Optional[str] = None): + """Serialize a timedelta to its wire representation. + + For the ``seconds``/``milliseconds`` encodings the value is converted to a + numeric value, otherwise it falls back to an ISO 8601 duration string. + + :param timedelta td: The timedelta to serialize. + :param str format: The duration encoding format. + :rtype: int or float or str + :return: serialized duration + """ + seconds = td.total_seconds() + if format == "duration-seconds-int": + return int(seconds) + if format == "duration-seconds-float": + return seconds + if format == "duration-milliseconds-int": + return int(seconds * 1000) + if format == "duration-milliseconds-float": + return seconds * 1000 + return _timedelta_as_isostr(td) + + def _serialize_datetime(o, format: typing.Optional[str] = None): if hasattr(o, "year") and hasattr(o, "hour"): if format == "rfc7231": @@ -129,7 +158,15 @@ def _is_readonly(p): class SdkJSONEncoder(JSONEncoder): - """A JSON encoder that's capable of serializing datetime objects and bytes.""" + """A JSON encoder that's capable of serializing datetime objects and bytes. + + :param args: Additional positional arguments passed to the base ``JSONEncoder``. + :type args: typing.Any + :keyword exclude_readonly: Whether to exclude readonly properties. Defaults to False. + :paramtype exclude_readonly: bool + :keyword format: The format to use for serialization. Defaults to None. + :paramtype format: typing.Optional[str] + """ def __init__(self, *args, exclude_readonly: bool = False, format: typing.Optional[str] = None, **kwargs): super().__init__(*args, **kwargs) @@ -171,6 +208,21 @@ def default(self, o): # pylint: disable=too-many-return-statements r"(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s\d{4}\s\d{2}:\d{2}:\d{2}\sGMT" ) +_ARRAY_ENCODE_MAPPING = { + "pipeDelimited": "|", + "spaceDelimited": " ", + "commaDelimited": ",", + "newlineDelimited": "\n", +} + + +def _deserialize_array_encoded(delimit: str, attr): + if isinstance(attr, str): + if attr == "": + return [] + return attr.split(delimit) + return attr + def _deserialize_datetime(attr: typing.Union[str, datetime]) -> datetime: """Deserialize ISO-8601 formatted string into Datetime object. @@ -202,7 +254,7 @@ def _deserialize_datetime(attr: typing.Union[str, datetime]) -> datetime: test_utc = date_obj.utctimetuple() if test_utc.tm_year > 9999 or test_utc.tm_year < 1: raise OverflowError("Hit max or min date") - return date_obj + return date_obj # type: ignore[no-any-return] def _deserialize_datetime_rfc7231(attr: typing.Union[str, datetime]) -> datetime: @@ -256,7 +308,7 @@ def _deserialize_time(attr: typing.Union[str, time]) -> time: """ if isinstance(attr, time): return attr - return isodate.parse_time(attr) + return isodate.parse_time(attr) # type: ignore[no-any-return] def _deserialize_bytes(attr): @@ -280,6 +332,12 @@ def _deserialize_duration(attr): return isodate.parse_duration(attr) +def _deserialize_duration_numeric(attr, unit): + if isinstance(attr, timedelta): + return attr + return timedelta(**{unit: float(attr)}) + + def _deserialize_decimal(attr): if isinstance(attr, decimal.Decimal): return attr @@ -292,6 +350,12 @@ def _deserialize_int_as_str(attr): return int(attr) +def _deserialize_bool_as_str(attr): + if isinstance(attr, bool): + return attr + return attr.lower() == "true" + + _DESERIALIZE_MAPPING = { datetime: _deserialize_datetime, date: _deserialize_date, @@ -309,12 +373,20 @@ def _deserialize_int_as_str(attr): "unix-timestamp": _deserialize_datetime_unix_timestamp, "base64": _deserialize_bytes, "base64url": _deserialize_bytes_base64, + "duration-seconds-int": functools.partial(_deserialize_duration_numeric, unit="seconds"), + "duration-seconds-float": functools.partial(_deserialize_duration_numeric, unit="seconds"), + "duration-milliseconds-int": functools.partial(_deserialize_duration_numeric, unit="milliseconds"), + "duration-milliseconds-float": functools.partial(_deserialize_duration_numeric, unit="milliseconds"), } def get_deserializer(annotation: typing.Any, rf: typing.Optional["_RestField"] = None): if annotation is int and rf and rf._format == "str": return _deserialize_int_as_str + if annotation is bool and rf and rf._format == "str": + return _deserialize_bool_as_str + if annotation is str and rf and rf._format in _ARRAY_ENCODE_MAPPING: + return functools.partial(_deserialize_array_encoded, _ARRAY_ENCODE_MAPPING[rf._format]) if rf and rf._format: return _DESERIALIZE_MAPPING_WITHFORMAT.get(rf._format) return _DESERIALIZE_MAPPING.get(annotation) # pyright: ignore @@ -353,9 +425,39 @@ def __contains__(self, key: typing.Any) -> bool: return key in self._data def __getitem__(self, key: str) -> typing.Any: + # If this key has been deserialized (for mutable types), we need to handle serialization + if hasattr(self, "_attr_to_rest_field"): + cache_attr = f"_deserialized_{key}" + if hasattr(self, cache_attr): + rf = _get_rest_field(getattr(self, "_attr_to_rest_field"), key) + if rf: + value = self._data.get(key) + if isinstance(value, (dict, list, set)): + # For mutable types, serialize and return + # But also update _data with serialized form and clear flag + # so mutations via this returned value affect _data + serialized = _serialize(value, rf._format) + # If serialized form is same type (no transformation needed), + # return _data directly so mutations work + if isinstance(serialized, type(value)) and serialized == value: + return self._data.get(key) + # Otherwise return serialized copy and clear flag + try: + object.__delattr__(self, cache_attr) + except AttributeError: + pass + # Store serialized form back + self._data[key] = serialized + return serialized return self._data.__getitem__(key) def __setitem__(self, key: str, value: typing.Any) -> None: + # Clear any cached deserialized value when setting through dictionary access + cache_attr = f"_deserialized_{key}" + try: + object.__delattr__(self, cache_attr) + except AttributeError: + pass self._data.__setitem__(key, value) def __delitem__(self, key: str) -> None: @@ -372,21 +474,21 @@ def __ne__(self, other: typing.Any) -> bool: def keys(self) -> typing.KeysView[str]: """ - :returns: a set-like object providing a view on D's keys + :returns: a set-like object providing a view on the mapping's keys :rtype: ~typing.KeysView """ return self._data.keys() def values(self) -> typing.ValuesView[typing.Any]: """ - :returns: an object providing a view on D's values + :returns: an object providing a view on the mapping's values :rtype: ~typing.ValuesView """ return self._data.values() def items(self) -> typing.ItemsView[str, typing.Any]: """ - :returns: set-like object providing a view on D's items + :returns: a set-like object providing a view on the mapping's items :rtype: ~typing.ItemsView """ return self._data.items() @@ -396,7 +498,7 @@ def get(self, key: str, default: typing.Any = None) -> typing.Any: Get the value for key if key is in the dictionary, else default. :param str key: The key to look up. :param any default: The value to return if key is not in the dictionary. Defaults to None - :returns: D[k] if k in D, else d. + :returns: The value for key if key is in the dictionary, else default. :rtype: any """ try: @@ -431,19 +533,19 @@ def popitem(self) -> tuple[str, typing.Any]: Removes and returns some (key, value) pair :returns: The (key, value) pair. :rtype: tuple - :raises KeyError: if D is empty. + :raises KeyError: if the dictionary is empty. """ return self._data.popitem() def clear(self) -> None: """ - Remove all items from D. + Remove all items from the dictionary. """ self._data.clear() def update(self, *args: typing.Any, **kwargs: typing.Any) -> None: # pylint: disable=arguments-differ """ - Updates D from mapping/iterable E and F. + Update the dictionary from a mapping or an iterable of key-value pairs. :param any args: Either a mapping object or an iterable of key-value pairs. """ self._data.update(*args, **kwargs) @@ -456,10 +558,11 @@ def setdefault(self, key: str, default: typing.Any) -> typing.Any: ... # pylint def setdefault(self, key: str, default: typing.Any = _UNSET) -> typing.Any: """ - Same as calling D.get(k, d), and setting D[k]=d if k not found + Return the value for key if key is in the dictionary; otherwise set the key to + default and return default. :param str key: The key to look up. :param any default: The value to set if key is not in the dictionary - :returns: D[k] if k in D, else d. + :returns: The value for key if key is in the dictionary, else default. :rtype: any """ if default is _UNSET: @@ -467,6 +570,8 @@ def setdefault(self, key: str, default: typing.Any = _UNSET) -> typing.Any: return self._data.setdefault(key, default) def __eq__(self, other: typing.Any) -> bool: + if isinstance(other, _MyMutableMapping): + return self._data == other._data try: other_model = self.__class__(other) except Exception: @@ -483,6 +588,8 @@ def _is_model(obj: typing.Any) -> bool: def _serialize(o, format: typing.Optional[str] = None): # pylint: disable=too-many-return-statements if isinstance(o, list): + if format in _ARRAY_ENCODE_MAPPING and all(isinstance(x, str) for x in o): + return _ARRAY_ENCODE_MAPPING[format].join(o) return [_serialize(x, format) for x in o] if isinstance(o, dict): return {k: _serialize(v, format) for k, v in o.items()} @@ -507,7 +614,7 @@ def _serialize(o, format: typing.Optional[str] = None): # pylint: disable=too-m pass # Last, try datetime.timedelta try: - return _timedelta_as_isostr(o) + return _serialize_duration(o, format) except AttributeError: # This will be raised when it hits value.total_seconds in the method above pass @@ -533,6 +640,239 @@ def _create_value(rf: typing.Optional["_RestField"], value: typing.Any) -> typin return _serialize(value, rf._format) +# ============================================================================ +# Fast-path scalar deserializer functions for rest_field(deserializer=...) +# These are referenced from rest_field declarations to bypass the generic +# _deserialize -> _deserialize_with_callable chain. +# Only simple/primitive types — no models or container types. +# ============================================================================ + + +def _xml_deser_str(value): + if isinstance(value, ET.Element): + return value.text or "" + return str(value) if value is not None else None + + +def _xml_deser_int(value): + if isinstance(value, ET.Element): + return int(value.text) if value.text else None + return int(value) if value is not None else None + + +def _xml_deser_float(value): + if isinstance(value, ET.Element): + return float(value.text) if value.text else None + return float(value) if value is not None else None + + +def _xml_deser_bool(value): + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + if text in (True, False): + return text + return text.lower() == "true" + + +# pylint: disable=docstring-missing-param +def _xml_deser_bytes(value): + """Deserialize bytes from XML (base64).""" + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + return _deserialize_bytes(text) + + +def _xml_deser_bytes_base64url(value): + """Deserialize bytes from XML (base64url).""" + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + return _deserialize_bytes_base64(text) + + +def _xml_deser_datetime(value): + """Deserialize a datetime from XML (ISO 8601 / rfc3339).""" + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + return _deserialize_datetime(text) + + +def _xml_deser_datetime_rfc7231(value): + """Deserialize a datetime from XML (RFC7231 format).""" + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + return _deserialize_datetime_rfc7231(text) + + +def _xml_deser_datetime_unix_timestamp(value): + """Deserialize a datetime from XML (Unix timestamp).""" + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + return _deserialize_datetime_unix_timestamp(float(text)) + + +def _xml_deser_date(value): + """Deserialize a date from XML (ISO 8601).""" + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + return _deserialize_date(text) + + +def _xml_deser_time(value): + """Deserialize a time from XML (ISO 8601).""" + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + return _deserialize_time(text) + + +def _xml_deser_duration(value): + """Deserialize a timedelta from XML (ISO 8601 duration).""" + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + return _deserialize_duration(text) + + +def _xml_deser_decimal(value): + """Deserialize a Decimal from XML.""" + if isinstance(value, ET.Element): + text = value.text + else: + text = value + if text is None: + return None + return _deserialize_decimal(text) + + +def _xml_deser_enum_or_str(enum_cls, value): + """Deserialize a Union[EnumType, str] from XML.""" + text = value.text if isinstance(value, ET.Element) else value + if text is None: + return None + try: + return enum_cls(text) + except ValueError: + return text + + +def _extract_xml_model_type(rf_type): + """Extract the concrete Model class from a resolved rf._type partial chain. + + Unwraps ``Optional[Model]`` and ``_deserialize_model(Model, ...)`` + wrappers. Only handles Model and Optional[Model] — other composite + types (List, Dict, Union, etc.) return None and fall through to the + generic ``_deserialize`` path at runtime. + """ + if rf_type is None: + return None + if isinstance(rf_type, type) and _is_model(rf_type): + return rf_type + if not isinstance(rf_type, functools.partial): + return None + func = rf_type.func + args = rf_type.args + if func is _deserialize_with_optional and args: + return _extract_xml_model_type(args[0]) + if func is _deserialize_model and args: + cls = args[0] + return cls if isinstance(cls, type) and _is_model(cls) else None + return None + + +def _build_xml_field_plan( # pylint: disable=docstring-missing-return, docstring-missing-rtype, unused-variable + cls, attr_to_rest_field: dict +) -> list: + """Build a precomputed XML field plan for fast _init_from_xml iteration. + + Called once per model class in __new__. Returns a list of tuples: + (rest_name, xml_name, kind, deser, rf_type, is_optional, items_name) + + kind: 0=wrapped, 1=attribute, 2=unwrapped, 3=text + + For Model and Optional[Model] fields that lack a scalar + ``_deserializer``, this function precomputes the Model class as the + deserializer so ``_init_from_xml`` can call ``ModelClass(element)`` + directly instead of going through the expensive + ``_get_deserialize_callable_from_annotation`` chain at runtime. + """ + model_meta = getattr(cls, "_xml", {}) + model_ns = model_meta.get("ns") or model_meta.get("namespace") + plan = [] + + for rf in attr_to_rest_field.values(): + prop_meta = getattr(rf, "_xml", {}) + deser = rf._deserializer + + xml_name = prop_meta.get("name", rf._rest_name) + xml_ns = _resolve_xml_ns(prop_meta, model_meta) + if xml_ns: + xml_name = "{" + xml_ns + "}" + xml_name + + is_optional = rf._is_optional + + # For Model / Optional[Model] fields without a scalar deserializer, + # precompute the Model class as the deserializer. + if deser is None and rf._type is not None: + model_cls = _extract_xml_model_type(rf._type) + if model_cls is not None: + deser = model_cls + + if prop_meta.get("attribute", False): + plan.append((rf._rest_name, xml_name, 1, deser, rf._type, is_optional, None)) + elif prop_meta.get("unwrapped", False): + items_name = prop_meta.get("itemsName") + if items_name: + items_ns = prop_meta.get("itemsNs") + if items_ns is not None: + xml_ns = items_ns + if xml_ns: + items_name = "{" + xml_ns + "}" + items_name + else: + items_name = xml_name + plan.append((rf._rest_name, xml_name, 2, deser, rf._type, is_optional, items_name)) + elif prop_meta.get("text", False): + plan.append((rf._rest_name, xml_name, 3, deser, rf._type, is_optional, None)) + else: + plan.append((rf._rest_name, xml_name, 0, deser, rf._type, is_optional, None)) + + return plan + + +# pylint: enable=docstring-missing-param class Model(_MyMutableMapping): _is_model = True # label whether current class's _attr_to_rest_field has been calculated @@ -543,59 +883,10 @@ def __init__(self, *args: typing.Any, **kwargs: typing.Any) -> None: class_name = self.__class__.__name__ if len(args) > 1: raise TypeError(f"{class_name}.__init__() takes 2 positional arguments but {len(args) + 1} were given") - dict_to_pass = { - rest_field._rest_name: rest_field._default - for rest_field in self._attr_to_rest_field.values() - if rest_field._default is not _UNSET - } - if args: # pylint: disable=too-many-nested-blocks + dict_to_pass: dict[str, typing.Any] = {} + if args: if isinstance(args[0], ET.Element): - existed_attr_keys = [] - model_meta = getattr(self, "_xml", {}) - - for rf in self._attr_to_rest_field.values(): - prop_meta = getattr(rf, "_xml", {}) - xml_name = prop_meta.get("name", rf._rest_name) - xml_ns = prop_meta.get("ns", model_meta.get("ns", None)) - if xml_ns: - xml_name = "{" + xml_ns + "}" + xml_name - - # attribute - if prop_meta.get("attribute", False) and args[0].get(xml_name) is not None: - existed_attr_keys.append(xml_name) - dict_to_pass[rf._rest_name] = _deserialize(rf._type, args[0].get(xml_name)) - continue - - # unwrapped element is array - if prop_meta.get("unwrapped", False): - # unwrapped array could either use prop items meta/prop meta - if prop_meta.get("itemsName"): - xml_name = prop_meta.get("itemsName") - xml_ns = prop_meta.get("itemNs") - if xml_ns: - xml_name = "{" + xml_ns + "}" + xml_name - items = args[0].findall(xml_name) # pyright: ignore - if len(items) > 0: - existed_attr_keys.append(xml_name) - dict_to_pass[rf._rest_name] = _deserialize(rf._type, items) - continue - - # text element is primitive type - if prop_meta.get("text", False): - if args[0].text is not None: - dict_to_pass[rf._rest_name] = _deserialize(rf._type, args[0].text) - continue - - # wrapped element could be normal property or array, it should only have one element - item = args[0].find(xml_name) - if item is not None: - existed_attr_keys.append(xml_name) - dict_to_pass[rf._rest_name] = _deserialize(rf._type, item) - - # rest thing is additional properties - for e in args[0]: - if e.tag not in existed_attr_keys: - dict_to_pass[e.tag] = _convert_element(e) + dict_to_pass.update(self._init_from_xml(args[0])) else: dict_to_pass.update( {k: _create_value(_get_rest_field(self._attr_to_rest_field, k), v) for k, v in args[0].items()} @@ -612,8 +903,117 @@ def __init__(self, *args: typing.Any, **kwargs: typing.Any) -> None: if v is not None } ) + # Apply client default values for fields the caller didn't set so that + # defaults are part of `_data` and therefore included during serialization. + for rf in self._attr_to_rest_field.values(): + if rf._default is _UNSET: + continue + if rf._rest_name in dict_to_pass: + continue + dict_to_pass[rf._rest_name] = _create_value(rf, rf._default) super().__init__(dict_to_pass) + def _init_from_xml( # pylint: disable=too-many-branches, too-many-statements + self, element: ET.Element + ) -> dict[str, typing.Any]: + """Deserialize an XML element into a dict mapping rest field names to values. + + :param ET.Element element: The XML element to deserialize from. + :returns: A dictionary of rest_name to deserialized value pairs. + :rtype: dict + """ + result: dict[str, typing.Any] = {} + existed_attr_keys: list[str] = [] + + field_plan = getattr(self, "_xml_field_plan", None) + if field_plan: + for rest_name, xml_name, kind, deser, rf_type, is_optional, items_name in field_plan: + if kind == 0: # wrapped element (most common) + item = element.find(xml_name) + if item is not None: + existed_attr_keys.append(xml_name) + if deser: + result[rest_name] = deser(item) + else: + result[rest_name] = _deserialize(rf_type, item) + elif kind == 1: # attribute + attr_val = element.get(xml_name) + if attr_val is not None: + existed_attr_keys.append(xml_name) + if deser: + result[rest_name] = deser(attr_val) + else: + result[rest_name] = attr_val + elif kind == 2: # unwrapped array + items = element.findall(items_name) # pyright: ignore + if len(items) > 0: + existed_attr_keys.append(items_name) + if deser: + result[rest_name] = deser(items) + else: + result[rest_name] = _deserialize(rf_type, items) + elif not is_optional: + existed_attr_keys.append(items_name) + result[rest_name] = [] + elif kind == 3: # text + if element.text is not None: + if deser: + result[rest_name] = deser(element.text) + else: + result[rest_name] = element.text + else: + model_meta = getattr(self, "_xml", {}) + for rf in self._attr_to_rest_field.values(): + prop_meta = getattr(rf, "_xml", {}) + xml_name = prop_meta.get("name", rf._rest_name) + xml_ns = _resolve_xml_ns(prop_meta, model_meta) + if xml_ns: + xml_name = "{" + xml_ns + "}" + xml_name + + # attribute + if prop_meta.get("attribute", False) and element.get(xml_name) is not None: + existed_attr_keys.append(xml_name) + result[rf._rest_name] = _deserialize(rf._type, element.get(xml_name)) + continue + + # unwrapped element is array + if prop_meta.get("unwrapped", False): + _items_name = prop_meta.get("itemsName") + if _items_name: + xml_name = _items_name + _items_ns = prop_meta.get("itemsNs") + if _items_ns is not None: + xml_ns = _items_ns + if xml_ns: + xml_name = "{" + xml_ns + "}" + xml_name + items = element.findall(xml_name) # pyright: ignore + if len(items) > 0: + existed_attr_keys.append(xml_name) + result[rf._rest_name] = _deserialize(rf._type, items) + elif not rf._is_optional: + existed_attr_keys.append(xml_name) + result[rf._rest_name] = [] + continue + + # text element is primitive type + if prop_meta.get("text", False): + if element.text is not None: + result[rf._rest_name] = _deserialize(rf._type, element.text) + continue + + # wrapped element could be normal property or array + item = element.find(xml_name) + if item is not None: + existed_attr_keys.append(xml_name) + result[rf._rest_name] = _deserialize(rf._type, item) + + # rest thing is additional properties + for e in element: + if e.tag not in existed_attr_keys: + result[e.tag] = _convert_element(e) + + return result + def copy(self) -> "Model": return Model(self.__dict__) @@ -638,6 +1038,9 @@ def __new__(cls, *args: typing.Any, **kwargs: typing.Any) -> Self: if not rf._rest_name_input: rf._rest_name_input = attr cls._attr_to_rest_field: dict[str, _RestField] = dict(attr_to_rest_field.items()) + # Build XML field plan for fast _init_from_xml (only for XML models) + if getattr(cls, "_xml", None): + cls._xml_field_plan = _build_xml_field_plan(cls, attr_to_rest_field) cls._calculated.add(f"{cls.__module__}.{cls.__qualname__}") return super().__new__(cls) @@ -666,7 +1069,7 @@ def _deserialize(cls, data, exist_discriminators): model_meta = getattr(cls, "_xml", {}) prop_meta = getattr(discriminator, "_xml", {}) xml_name = prop_meta.get("name", discriminator._rest_name) - xml_ns = prop_meta.get("ns", model_meta.get("ns", None)) + xml_ns = _resolve_xml_ns(prop_meta, model_meta) if xml_ns: xml_name = "{" + xml_ns + "}" + xml_name @@ -758,6 +1161,14 @@ def _deserialize_multiple_sequence( return type(obj)(_deserialize(deserializer, entry, module) for entry, deserializer in zip(obj, entry_deserializers)) +def _is_array_encoded_deserializer(deserializer: functools.partial) -> bool: + return ( + isinstance(deserializer, functools.partial) + and isinstance(deserializer.args[0], functools.partial) + and deserializer.args[0].func == _deserialize_array_encoded # pylint: disable=comparison-with-callable + ) + + def _deserialize_sequence( deserializer: typing.Optional[typing.Callable], module: typing.Optional[str], @@ -767,6 +1178,19 @@ def _deserialize_sequence( return obj if isinstance(obj, ET.Element): obj = list(obj) + + # encoded string may be deserialized to sequence + if isinstance(obj, str) and isinstance(deserializer, functools.partial): + # for list[str] + if _is_array_encoded_deserializer(deserializer): + return deserializer(obj) + + # for list[Union[...]] + if isinstance(deserializer.args[0], list): + for sub_deserializer in deserializer.args[0]: + if _is_array_encoded_deserializer(sub_deserializer): + return sub_deserializer(obj) + return type(obj)(_deserialize(deserializer, entry, module) for entry in obj) @@ -817,16 +1241,18 @@ def _get_deserialize_callable_from_annotation( # pylint: disable=too-many-retur # is it optional? try: - if any(a for a in annotation.__args__ if a == type(None)): # pyright: ignore + if any(a is _NONE_TYPE for a in annotation.__args__): # pyright: ignore + if rf: + rf._is_optional = True if len(annotation.__args__) <= 2: # pyright: ignore if_obj_deserializer = _get_deserialize_callable_from_annotation( - next(a for a in annotation.__args__ if a != type(None)), module, rf # pyright: ignore + next(a for a in annotation.__args__ if a is not _NONE_TYPE), module, rf # pyright: ignore ) return functools.partial(_deserialize_with_optional, if_obj_deserializer) # the type is Optional[Union[...]], we need to remove the None type from the Union annotation_copy = copy.copy(annotation) - annotation_copy.__args__ = [a for a in annotation_copy.__args__ if a != type(None)] # pyright: ignore + annotation_copy.__args__ = [a for a in annotation_copy.__args__ if a is not _NONE_TYPE] # pyright: ignore return _get_deserialize_callable_from_annotation(annotation_copy, module, rf) except AttributeError: pass @@ -910,16 +1336,20 @@ def _deserialize_with_callable( return float(value.text) if value.text else None if deserializer is bool: return value.text == "true" if value.text else None + if deserializer and deserializer in _DESERIALIZE_MAPPING.values(): + return deserializer(value.text) if value.text else None + if deserializer and deserializer in _DESERIALIZE_MAPPING_WITHFORMAT.values(): + return deserializer(value.text) if value.text else None if deserializer is None: return value if deserializer in [int, float, bool]: return deserializer(value) if isinstance(deserializer, CaseInsensitiveEnumMeta): try: - return deserializer(value) + return deserializer(value.text if isinstance(value, ET.Element) else value) except ValueError: # for unknown value, return raw value - return value + return value.text if isinstance(value, ET.Element) else value if isinstance(deserializer, type) and issubclass(deserializer, Model): return deserializer._deserialize(value, []) return typing.cast(typing.Callable[[typing.Any], typing.Any], deserializer)(value) @@ -952,7 +1382,7 @@ def _failsafe_deserialize( ) -> typing.Any: try: return _deserialize(deserializer, response.json(), module, rf, format) - except DeserializationError: + except Exception: # pylint: disable=broad-except _LOGGER.warning( "Ran into a deserialization error. Ignoring since this is failsafe deserialization", exc_info=True ) @@ -965,13 +1395,14 @@ def _failsafe_deserialize_xml( ) -> typing.Any: try: return _deserialize_xml(deserializer, response.text()) - except DeserializationError: + except Exception: # pylint: disable=broad-except _LOGGER.warning( "Ran into a deserialization error. Ignoring since this is failsafe deserialization", exc_info=True ) return None +# pylint: disable=too-many-instance-attributes class _RestField: def __init__( self, @@ -984,6 +1415,7 @@ def __init__( format: typing.Optional[str] = None, is_multipart_file_input: bool = False, xml: typing.Optional[dict[str, typing.Any]] = None, + deserializer: typing.Optional[typing.Callable] = None, ): self._type = type self._rest_name_input = name @@ -991,14 +1423,20 @@ def __init__( self._is_discriminator = is_discriminator self._visibility = visibility self._is_model = False + self._is_optional = False self._default = default self._format = format self._is_multipart_file_input = is_multipart_file_input self._xml = xml if xml is not None else {} + self._deserializer = deserializer @property def _class_type(self) -> typing.Any: - return getattr(self._type, "args", [None])[0] + result = getattr(self._type, "args", [None])[0] + # type may be wrapped by nested functools.partial so we need to check for that + if isinstance(result, functools.partial): + return getattr(result, "args", [None])[0] + return result @property def _rest_name(self) -> str: @@ -1009,14 +1447,44 @@ def _rest_name(self) -> str: def __get__(self, obj: Model, type=None): # pylint: disable=redefined-builtin # by this point, type and rest_name will have a value bc we default # them in __new__ of the Model class - item = obj.get(self._rest_name) + # Use _data.get() directly to avoid triggering __getitem__ which clears the cache + item = obj._data.get(self._rest_name, _UNSET) + if item is _UNSET: + # Field not set by user; return the client default if one exists, otherwise None + return self._default if self._default is not _UNSET else None if item is None: return item if self._is_model: return item - return _deserialize(self._type, _serialize(item, self._format), rf=self) + + # For mutable types, we want mutations to directly affect _data + # Check if we've already deserialized this value + cache_attr = f"_deserialized_{self._rest_name}" + if hasattr(obj, cache_attr): + # Return the value from _data directly (it's been deserialized in place) + return obj._data.get(self._rest_name) + + # Fast path: use _deserializer directly (avoids _serialize/_deserialize chain) + if self._deserializer: + deserialized = self._deserializer(item) + else: + deserialized = _deserialize(self._type, _serialize(item, self._format), rf=self) + + # For mutable types, store the deserialized value back in _data + # so mutations directly affect _data + if isinstance(deserialized, (dict, list, set)): + obj._data[self._rest_name] = deserialized + object.__setattr__(obj, cache_attr, True) # Mark as deserialized + return deserialized + + return deserialized def __set__(self, obj: Model, value) -> None: + # Clear the cached deserialized object when setting a new value + cache_attr = f"_deserialized_{self._rest_name}" + if hasattr(obj, cache_attr): + object.__delattr__(obj, cache_attr) + if value is None: # we want to wipe out entries if users set attr to None try: @@ -1046,6 +1514,7 @@ def rest_field( format: typing.Optional[str] = None, is_multipart_file_input: bool = False, xml: typing.Optional[dict[str, typing.Any]] = None, + deserializer: typing.Optional[typing.Callable] = None, ) -> typing.Any: return _RestField( name=name, @@ -1055,6 +1524,7 @@ def rest_field( format=format, is_multipart_file_input=is_multipart_file_input, xml=xml, + deserializer=deserializer, ) @@ -1079,6 +1549,56 @@ def serialize_xml(model: Model, exclude_readonly: bool = False) -> str: return ET.tostring(_get_element(model, exclude_readonly), encoding="unicode") # type: ignore +def _get_xml_ns(meta: dict[str, typing.Any]) -> typing.Optional[str]: + """Return the XML namespace from a metadata dict, checking both 'ns' (old-style) and 'namespace' (DPG) keys. + + :param dict meta: The metadata dictionary to extract namespace from. + :returns: The namespace string if 'ns' or 'namespace' key is present, None otherwise. + :rtype: str or None + """ + ns = meta.get("ns") + if ns is None: + ns = meta.get("namespace") + return ns + + +def _resolve_xml_ns( + prop_meta: dict[str, typing.Any], model_meta: typing.Optional[dict[str, typing.Any]] = None +) -> typing.Optional[str]: + """Resolve XML namespace for a property, falling back to model namespace when appropriate. + + Checks the property metadata first; if no namespace is found and the model does not declare + an explicit prefix, falls back to the model-level namespace. + + :param dict prop_meta: The property metadata dictionary. + :param dict model_meta: The model metadata dictionary, used as fallback. + :returns: The resolved namespace string, or None. + :rtype: str or None + """ + ns = _get_xml_ns(prop_meta) + if ns is None and model_meta is not None and not model_meta.get("prefix"): + ns = _get_xml_ns(model_meta) + return ns + + +def _set_xml_attribute(element: ET.Element, name: str, value: typing.Any, prop_meta: dict[str, typing.Any]) -> None: + """Set an XML attribute on an element, handling namespace prefix registration. + + :param ET.Element element: The element to set the attribute on. + :param str name: The default attribute name (wire name). + :param any value: The attribute value. + :param dict prop_meta: The property metadata dictionary. + """ + xml_name = prop_meta.get("name", name) + _attr_ns = _get_xml_ns(prop_meta) + if _attr_ns: + _attr_prefix = prop_meta.get("prefix") + if _attr_prefix: + _safe_register_namespace(_attr_prefix, _attr_ns) + xml_name = "{" + _attr_ns + "}" + xml_name + element.set(xml_name, _get_primitive_type_value(value)) + + def _get_element( o: typing.Any, exclude_readonly: bool = False, @@ -1090,10 +1610,16 @@ def _get_element( # if prop is a model, then use the prop element directly, else generate a wrapper of model if wrapped_element is None: + # When serializing as an array item (parent_meta is set), check if the parent has an + # explicit itemsName. This ensures correct element names for unwrapped arrays (where + # the element tag is the property/items name, not the model type name). + _items_name = parent_meta.get("itemsName") if parent_meta is not None else None + element_name = _items_name if _items_name else (model_meta.get("name") or o.__class__.__name__) + _model_ns = _get_xml_ns(model_meta) wrapped_element = _create_xml_element( - model_meta.get("name", o.__class__.__name__), + element_name, model_meta.get("prefix"), - model_meta.get("ns"), + _model_ns, ) readonly_props = [] @@ -1115,7 +1641,9 @@ def _get_element( # additional properties will not have rest field, use the wire name as xml name prop_meta = {"name": k} - # if no ns for prop, use model's + # Propagate model namespace to properties only for old-style "ns"-keyed models. + # DPG-generated models use the "namespace" key and explicitly declare namespace on + # each property that needs it, so propagation is intentionally skipped for them. if prop_meta.get("ns") is None and model_meta.get("ns"): prop_meta["ns"] = model_meta.get("ns") prop_meta["prefix"] = model_meta.get("prefix") @@ -1127,12 +1655,7 @@ def _get_element( # text could only set on primitive type wrapped_element.text = _get_primitive_type_value(v) elif prop_meta.get("attribute", False): - xml_name = prop_meta.get("name", k) - if prop_meta.get("ns"): - ET.register_namespace(prop_meta.get("prefix"), prop_meta.get("ns")) # pyright: ignore - xml_name = "{" + prop_meta.get("ns") + "}" + xml_name # pyright: ignore - # attribute should be primitive type - wrapped_element.set(xml_name, _get_primitive_type_value(v)) + _set_xml_attribute(wrapped_element, k, v, prop_meta) else: # other wrapped prop element wrapped_element.append(_get_wrapped_element(v, exclude_readonly, prop_meta)) @@ -1141,6 +1664,7 @@ def _get_element( return [_get_element(x, exclude_readonly, parent_meta) for x in o] # type: ignore if isinstance(o, dict): result = [] + _dict_ns = _get_xml_ns(parent_meta) if parent_meta else None for k, v in o.items(): result.append( _get_wrapped_element( @@ -1148,7 +1672,7 @@ def _get_element( exclude_readonly, { "name": k, - "ns": parent_meta.get("ns") if parent_meta else None, + "ns": _dict_ns, "prefix": parent_meta.get("prefix") if parent_meta else None, }, ) @@ -1157,13 +1681,16 @@ def _get_element( # primitive case need to create element based on parent_meta if parent_meta: + _items_ns = parent_meta.get("itemsNs") + if _items_ns is None: + _items_ns = _get_xml_ns(parent_meta) return _get_wrapped_element( o, exclude_readonly, { "name": parent_meta.get("itemsName", parent_meta.get("name")), "prefix": parent_meta.get("itemsPrefix", parent_meta.get("prefix")), - "ns": parent_meta.get("itemsNs", parent_meta.get("ns")), + "ns": _items_ns, }, ) @@ -1175,8 +1702,9 @@ def _get_wrapped_element( exclude_readonly: bool, meta: typing.Optional[dict[str, typing.Any]], ) -> ET.Element: + _meta_ns = _get_xml_ns(meta) if meta else None wrapped_element = _create_xml_element( - meta.get("name") if meta else None, meta.get("prefix") if meta else None, meta.get("ns") if meta else None + meta.get("name") if meta else None, meta.get("prefix") if meta else None, _meta_ns ) if isinstance(v, (dict, list)): wrapped_element.extend(_get_element(v, exclude_readonly, meta)) @@ -1184,7 +1712,7 @@ def _get_wrapped_element( _get_element(v, exclude_readonly, meta, wrapped_element) else: wrapped_element.text = _get_primitive_type_value(v) - return wrapped_element + return wrapped_element # type: ignore[no-any-return] def _get_primitive_type_value(v) -> str: @@ -1197,9 +1725,29 @@ def _get_primitive_type_value(v) -> str: return str(v) -def _create_xml_element(tag, prefix=None, ns=None): - if prefix and ns: +def _safe_register_namespace(prefix: str, ns: str) -> None: + """Register an XML namespace prefix, handling reserved prefix patterns. + + Some prefixes (e.g. 'ns2') match Python's reserved 'ns\\d+' pattern used for + auto-generated prefixes, causing register_namespace to raise ValueError. + Falls back to directly registering in the internal namespace map. + + :param str prefix: The namespace prefix to register. + :param str ns: The namespace URI. + """ + try: ET.register_namespace(prefix, ns) + except ValueError: + _ns_map = getattr(ET, "_namespace_map", None) + if _ns_map is not None: + _ns_map[ns] = prefix + + +def _create_xml_element( + tag: typing.Any, prefix: typing.Optional[str] = None, ns: typing.Optional[str] = None +) -> ET.Element: + if prefix and ns: + _safe_register_namespace(prefix, ns) if ns: return ET.Element("{" + ns + "}" + tag) return ET.Element(tag) @@ -1210,6 +1758,8 @@ def _deserialize_xml( value: str, ) -> typing.Any: element = ET.fromstring(value) # nosec + if _is_model(deserializer): + return deserializer._deserialize(element, []) return _deserialize(deserializer, element) diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_utils/serialization.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_utils/serialization.py index e81921cbb011..ae08f9d89f74 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_utils/serialization.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_utils/serialization.py @@ -39,11 +39,15 @@ import xml.etree.ElementTree as ET import isodate # type: ignore -from typing_extensions import Self from azure.core.exceptions import DeserializationError, SerializationError from azure.core.serialization import NULL as CoreNull +if sys.version_info >= (3, 11): + from typing import Self +else: + from typing_extensions import Self + _BOM = codecs.BOM_UTF8.decode(encoding="utf-8") JSON = MutableMapping[str, Any] @@ -476,7 +480,11 @@ def _decode_attribute_map_key(key): class Serializer: # pylint: disable=too-many-public-methods - """Request object model serializer.""" + """Request object model serializer. + + :param classes: Mapping of model names to model types, used to resolve models during serialization. + :type classes: typing.Optional[typing.Mapping[str, type]] + """ basic_types = {str: "str", int: "int", bool: "bool", float: "float"} @@ -516,6 +524,10 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None: "rfc-1123": Serializer.serialize_rfc, "unix-time": Serializer.serialize_unix, "duration": Serializer.serialize_duration, + "duration-seconds-int": Serializer.serialize_duration_seconds_int, + "duration-seconds-float": Serializer.serialize_duration_seconds_float, + "duration-milliseconds-int": Serializer.serialize_duration_milliseconds_int, + "duration-milliseconds-float": Serializer.serialize_duration_milliseconds_float, "date": Serializer.serialize_date, "time": Serializer.serialize_time, "decimal": Serializer.serialize_decimal, @@ -787,7 +799,7 @@ def serialize_data(self, data, data_type, **kwargs): # If dependencies is empty, try with current data class # It has to be a subclass of Enum anyway - enum_type = self.dependencies.get(data_type, data.__class__) + enum_type = self.dependencies.get(data_type, cast(type, data.__class__)) if issubclass(enum_type, Enum): return Serializer.serialize_enum(data, enum_obj=enum_type) @@ -821,13 +833,20 @@ def serialize_basic(cls, data, data_type, **kwargs): :param str data_type: Type of object in the iterable. :rtype: str, int, float, bool :return: serialized object + :raises TypeError: raise if data_type is not one of str, int, float, bool. """ custom_serializer = cls._get_custom_serializers(data_type, **kwargs) if custom_serializer: return custom_serializer(data) if data_type == "str": return cls.serialize_unicode(data) - return eval(data_type)(data) # nosec # pylint: disable=eval-used + if data_type == "int": + return int(data) + if data_type == "float": + return float(data) + if data_type == "bool": + return bool(data) + raise TypeError("Unknown basic data type: {}".format(data_type)) @classmethod def serialize_unicode(cls, data): @@ -1098,6 +1117,61 @@ def serialize_duration(attr, **kwargs): # pylint: disable=unused-argument attr = isodate.parse_duration(attr) return isodate.duration_isoformat(attr) + @staticmethod + def _serialize_duration_numeric(attr, scale, as_int): + """Serialize a TimeDelta into a numeric value scaled to the wire unit. + + :param TimeDelta attr: Object to be serialized. + :param int scale: Multiplier applied to total seconds (1 for seconds, 1000 for milliseconds). + :param bool as_int: Whether to truncate the result to an int. + :rtype: int or float + :return: serialized duration + """ + if isinstance(attr, str): + attr = isodate.parse_duration(attr) + value = attr.total_seconds() * scale if isinstance(attr, datetime.timedelta) else attr + return int(value) if as_int else float(value) + + @staticmethod + def serialize_duration_seconds_int(attr, **kwargs): # pylint: disable=unused-argument + """Serialize TimeDelta object into an integer number of seconds. + + :param TimeDelta attr: Object to be serialized. + :rtype: int + :return: serialized duration + """ + return Serializer._serialize_duration_numeric(attr, 1, True) + + @staticmethod + def serialize_duration_seconds_float(attr, **kwargs): # pylint: disable=unused-argument + """Serialize TimeDelta object into a floating point number of seconds. + + :param TimeDelta attr: Object to be serialized. + :rtype: float + :return: serialized duration + """ + return Serializer._serialize_duration_numeric(attr, 1, False) + + @staticmethod + def serialize_duration_milliseconds_int(attr, **kwargs): # pylint: disable=unused-argument + """Serialize TimeDelta object into an integer number of milliseconds. + + :param TimeDelta attr: Object to be serialized. + :rtype: int + :return: serialized duration + """ + return Serializer._serialize_duration_numeric(attr, 1000, True) + + @staticmethod + def serialize_duration_milliseconds_float(attr, **kwargs): # pylint: disable=unused-argument + """Serialize TimeDelta object into a floating point number of milliseconds. + + :param TimeDelta attr: Object to be serialized. + :rtype: float + :return: serialized duration + """ + return Serializer._serialize_duration_numeric(attr, 1000, False) + @staticmethod def serialize_rfc(attr, **kwargs): # pylint: disable=unused-argument """Serialize Datetime object into RFC-1123 formatted string. @@ -1370,6 +1444,10 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None: "rfc-1123": Deserializer.deserialize_rfc, "unix-time": Deserializer.deserialize_unix, "duration": Deserializer.deserialize_duration, + "duration-seconds-int": Deserializer.deserialize_duration_seconds, + "duration-seconds-float": Deserializer.deserialize_duration_seconds, + "duration-milliseconds-int": Deserializer.deserialize_duration_milliseconds, + "duration-milliseconds-float": Deserializer.deserialize_duration_milliseconds, "date": Deserializer.deserialize_date, "time": Deserializer.deserialize_time, "decimal": Deserializer.deserialize_decimal, @@ -1382,6 +1460,10 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None: } self.deserialize_expected_types = { "duration": (isodate.Duration, datetime.timedelta), + "duration-seconds-int": (isodate.Duration, datetime.timedelta), + "duration-seconds-float": (isodate.Duration, datetime.timedelta), + "duration-milliseconds-int": (isodate.Duration, datetime.timedelta), + "duration-milliseconds-float": (isodate.Duration, datetime.timedelta), "iso-8601": (datetime.datetime), } self.dependencies: dict[str, type] = dict(classes) if classes else {} @@ -1394,7 +1476,7 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None: # Otherwise, result are unexpected self.additional_properties_detection = True - def __call__(self, target_obj, response_data, content_type=None): + def __call__(self, target_obj, response_data, content_type=None): # pylint: disable=too-many-return-statements """Call the deserializer to process a REST response. :param str target_obj: Target data type to deserialize to. @@ -1404,6 +1486,27 @@ def __call__(self, target_obj, response_data, content_type=None): :return: Deserialized object. :rtype: object """ + # Fast path for header deserialization: response_data is a plain str or None + # and target_obj is a simple scalar type. This avoids the expensive + # _unpack_content → _deserialize → _classify_target → deserialize_data chain. + if response_data is None: + return None + if target_obj == "str" and isinstance(response_data, str): + return response_data + if isinstance(response_data, str): + if target_obj == "int": + return int(response_data) + if target_obj == "bool": + if response_data in ("true", "1", "True"): + return True + if response_data in ("false", "0", "False"): + return False + return bool(response_data) + if target_obj == "rfc-1123": + return Deserializer.deserialize_rfc(response_data) + if target_obj == "bytearray": + return Deserializer.deserialize_bytearray(response_data) + data = self._unpack_content(response_data, content_type) return self._deserialize(target_obj, data) @@ -1757,7 +1860,7 @@ def deserialize_basic(self, attr, data_type): # pylint: disable=too-many-return :param str data_type: deserialization data type. :return: Deserialized basic type. :rtype: str, int, float or bool - :raises TypeError: if string format is not valid. + :raises TypeError: if string format is not valid or data_type is not one of str, int, float, bool. """ # If we're here, data is supposed to be a basic type. # If it's still an XML node, take the text @@ -1783,7 +1886,11 @@ def deserialize_basic(self, attr, data_type): # pylint: disable=too-many-return if data_type == "str": return self.deserialize_unicode(attr) - return eval(data_type)(attr) # nosec # pylint: disable=eval-used + if data_type == "int": + return int(attr) + if data_type == "float": + return float(attr) + raise TypeError("Unknown basic data type: {}".format(data_type)) @staticmethod def deserialize_unicode(data): @@ -1918,6 +2025,48 @@ def deserialize_duration(attr): raise DeserializationError(msg) from err return duration + @staticmethod + def _deserialize_duration_numeric(attr, unit): + """Deserialize a numeric duration value into a TimeDelta object. + + :param float attr: response value to be deserialized. + :param str unit: The wire unit, used as the ``timedelta`` keyword + (``"seconds"`` or ``"milliseconds"``). + :return: Deserialized duration + :rtype: TimeDelta + :raises DeserializationError: if value is invalid. + """ + if isinstance(attr, ET.Element): + attr = attr.text + try: + duration = datetime.timedelta(**{unit: float(attr)}) # type: ignore + except (ValueError, OverflowError, TypeError) as err: + msg = "Cannot deserialize duration object." + raise DeserializationError(msg) from err + return duration + + @staticmethod + def deserialize_duration_seconds(attr): + """Deserialize a numeric number of seconds into a TimeDelta object. + + :param float attr: response value to be deserialized. + :return: Deserialized duration + :rtype: TimeDelta + :raises DeserializationError: if value is invalid. + """ + return Deserializer._deserialize_duration_numeric(attr, "seconds") + + @staticmethod + def deserialize_duration_milliseconds(attr): + """Deserialize a numeric number of milliseconds into a TimeDelta object. + + :param float attr: response value to be deserialized. + :return: Deserialized duration + :rtype: TimeDelta + :raises DeserializationError: if value is invalid. + """ + return Deserializer._deserialize_duration_numeric(attr, "milliseconds") + @staticmethod def deserialize_date(attr): """Deserialize ISO-8601 formatted string into Date object. diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_version.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_version.py index 7b1116c95ad7..4594e838eeb4 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_version.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/_version.py @@ -6,4 +6,4 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -VERSION = "3.0.0" +VERSION = "4.0.0" diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_client.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_client.py index 3710e809971f..972ed695f3d5 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_client.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_client.py @@ -1,3 +1,4 @@ +# pylint: disable=line-too-long,useless-suppression # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -7,8 +8,8 @@ # -------------------------------------------------------------------------- from copy import deepcopy +import sys from typing import Any, Awaitable, Optional, TYPE_CHECKING, cast -from typing_extensions import Self from azure.core.pipeline import policies from azure.core.rest import AsyncHttpResponse, HttpRequest @@ -27,6 +28,8 @@ AutonomousDatabasesOperations, CloudExadataInfrastructuresOperations, CloudVmClustersOperations, + DatabaseEditionsOperations, + DatabaseSystemShapeResourcesOperations, DbNodesOperations, DbServersOperations, DbSystemShapesOperations, @@ -40,6 +43,8 @@ FlexComponentsOperations, GiMinorVersionsOperations, GiVersionsOperations, + GoldenGateConnectionsOperations, + GoldenGateDeploymentsOperations, NetworkAnchorsOperations, Operations, OracleSubscriptionsOperations, @@ -48,12 +53,17 @@ VirtualNetworkAddressesOperations, ) +if sys.version_info >= (3, 11): + from typing import Self +else: + from typing_extensions import Self # type: ignore + if TYPE_CHECKING: from azure.core import AzureClouds from azure.core.credentials_async import AsyncTokenCredential -class OracleDatabaseMgmtClient: # pylint: disable=too-many-instance-attributes +class OracleDatabaseMgmtClient: # pylint: disable=too-many-instance-attributes,docstring-keyword-should-match-keyword-only """OracleDatabaseMgmtClient. :ivar operations: Operations operations @@ -118,6 +128,17 @@ class OracleDatabaseMgmtClient: # pylint: disable=too-many-instance-attributes :vartype db_systems: azure.mgmt.oracledatabase.aio.operations.DbSystemsOperations :ivar db_versions: DbVersionsOperations operations :vartype db_versions: azure.mgmt.oracledatabase.aio.operations.DbVersionsOperations + :ivar database_editions: DatabaseEditionsOperations operations + :vartype database_editions: azure.mgmt.oracledatabase.aio.operations.DatabaseEditionsOperations + :ivar database_system_shape_resources: DatabaseSystemShapeResourcesOperations operations + :vartype database_system_shape_resources: + azure.mgmt.oracledatabase.aio.operations.DatabaseSystemShapeResourcesOperations + :ivar golden_gate_connections: GoldenGateConnectionsOperations operations + :vartype golden_gate_connections: + azure.mgmt.oracledatabase.aio.operations.GoldenGateConnectionsOperations + :ivar golden_gate_deployments: GoldenGateDeploymentsOperations operations + :vartype golden_gate_deployments: + azure.mgmt.oracledatabase.aio.operations.GoldenGateDeploymentsOperations :param credential: Credential used to authenticate requests to the service. Required. :type credential: ~azure.core.credentials_async.AsyncTokenCredential :param subscription_id: The ID of the target subscription. The value must be an UUID. Required. @@ -127,7 +148,8 @@ class OracleDatabaseMgmtClient: # pylint: disable=too-many-instance-attributes :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is None. :paramtype cloud_setting: ~azure.core.AzureClouds - :keyword api_version: The API version to use for this operation. Default value is "2025-09-01". + :keyword api_version: The API version to use for this operation. Known values are "2026-06-01" + and None. Default value is None. If not set, the operation's default API version will be used. Note that overriding this default value may result in unsupported behavior. :paramtype api_version: str :keyword int polling_interval: Default waiting time between two polls for LRO operations if no @@ -241,6 +263,18 @@ def __init__( ) self.db_systems = DbSystemsOperations(self._client, self._config, self._serialize, self._deserialize) self.db_versions = DbVersionsOperations(self._client, self._config, self._serialize, self._deserialize) + self.database_editions = DatabaseEditionsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.database_system_shape_resources = DatabaseSystemShapeResourcesOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.golden_gate_connections = GoldenGateConnectionsOperations( + self._client, self._config, self._serialize, self._deserialize + ) + self.golden_gate_deployments = GoldenGateDeploymentsOperations( + self._client, self._config, self._serialize, self._deserialize + ) def send_request( self, request: HttpRequest, *, stream: bool = False, **kwargs: Any diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_configuration.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_configuration.py index 4c623afba762..16b8bb0e88ed 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_configuration.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_configuration.py @@ -1,3 +1,4 @@ +# pylint: disable=line-too-long,useless-suppression # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -18,7 +19,7 @@ from azure.core.credentials_async import AsyncTokenCredential -class OracleDatabaseMgmtClientConfiguration: # pylint: disable=too-many-instance-attributes +class OracleDatabaseMgmtClientConfiguration: # pylint: disable=too-many-instance-attributes,docstring-keyword-should-match-keyword-only """Configuration for OracleDatabaseMgmtClient. Note that all parameters used to create this instance are saved as instance @@ -33,7 +34,8 @@ class OracleDatabaseMgmtClientConfiguration: # pylint: disable=too-many-instanc :param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is None. :type cloud_setting: ~azure.core.AzureClouds - :keyword api_version: The API version to use for this operation. Default value is "2025-09-01". + :keyword api_version: The API version to use for this operation. Known values are "2026-06-01" + and None. Default value is None. If not set, the operation's default API version will be used. Note that overriding this default value may result in unsupported behavior. :paramtype api_version: str """ @@ -46,7 +48,7 @@ def __init__( cloud_setting: Optional["AzureClouds"] = None, **kwargs: Any ) -> None: - api_version: str = kwargs.pop("api_version", "2025-09-01") + api_version: str = kwargs.pop("api_version", "2026-06-01") if credential is None: raise ValueError("Parameter 'credential' must not be None.") diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_patch.py index 8bcb627aa475..b6400f50d7ce 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_patch.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/_patch.py @@ -7,6 +7,7 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ + from typing import List __all__: List[str] = [] # Add all objects you want publicly available to users at this package level diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/__init__.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/__init__.py index 015a54d0ae3d..a180a1efa861 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/__init__.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/__init__.py @@ -38,6 +38,10 @@ from ._operations import ResourceAnchorsOperations # type: ignore from ._operations import DbSystemsOperations # type: ignore from ._operations import DbVersionsOperations # type: ignore +from ._operations import DatabaseEditionsOperations # type: ignore +from ._operations import DatabaseSystemShapeResourcesOperations # type: ignore +from ._operations import GoldenGateConnectionsOperations # type: ignore +from ._operations import GoldenGateDeploymentsOperations # type: ignore from ._patch import __all__ as _patch_all from ._patch import * @@ -70,6 +74,10 @@ "ResourceAnchorsOperations", "DbSystemsOperations", "DbVersionsOperations", + "DatabaseEditionsOperations", + "DatabaseSystemShapeResourcesOperations", + "GoldenGateConnectionsOperations", + "GoldenGateDeploymentsOperations", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore _patch_sdk() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/_operations.py index 16962ef3b0ac..681cc56bd75a 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/_operations.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/_operations.py @@ -33,7 +33,7 @@ from azure.mgmt.core.exceptions import ARMErrorFormat from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling -from ... import models as _models +from ... import models as _models, types as _types from ..._utils.model_base import SdkJSONEncoder, _deserialize, _failsafe_deserialize from ..._utils.serialization import Deserializer, Serializer from ..._validation import api_version_validation @@ -79,6 +79,10 @@ build_cloud_vm_clusters_list_private_ip_addresses_request, build_cloud_vm_clusters_remove_vms_request, build_cloud_vm_clusters_update_request, + build_database_editions_get_request, + build_database_editions_list_by_location_request, + build_database_system_shape_resources_get_request, + build_database_system_shape_resources_list_by_location_request, build_db_nodes_action_request, build_db_nodes_get_request, build_db_nodes_list_by_parent_request, @@ -120,6 +124,26 @@ build_gi_minor_versions_list_by_parent_request, build_gi_versions_get_request, build_gi_versions_list_by_location_request, + build_golden_gate_connections_assign_deployment_request, + build_golden_gate_connections_create_or_update_request, + build_golden_gate_connections_delete_request, + build_golden_gate_connections_get_assigned_deployment_request, + build_golden_gate_connections_get_request, + build_golden_gate_connections_list_assigned_deployments_by_parent_request, + build_golden_gate_connections_list_by_resource_group_request, + build_golden_gate_connections_list_by_subscription_request, + build_golden_gate_connections_unassign_deployment_request, + build_golden_gate_connections_update_request, + build_golden_gate_deployments_assign_connection_request, + build_golden_gate_deployments_create_or_update_request, + build_golden_gate_deployments_delete_request, + build_golden_gate_deployments_get_assigned_connection_request, + build_golden_gate_deployments_get_request, + build_golden_gate_deployments_list_assigned_connections_by_parent_request, + build_golden_gate_deployments_list_by_resource_group_request, + build_golden_gate_deployments_list_by_subscription_request, + build_golden_gate_deployments_unassign_connection_request, + build_golden_gate_deployments_update_request, build_network_anchors_create_or_update_request, build_network_anchors_delete_request, build_network_anchors_get_request, @@ -153,11 +177,10 @@ T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] -JSON = MutableMapping[str, Any] List = list -class Operations: +class Operations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -221,7 +244,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -234,7 +260,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.Operation], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.Operation], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -250,7 +279,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -258,7 +290,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class CloudExadataInfrastructuresOperations: +class CloudExadataInfrastructuresOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -324,7 +356,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -337,7 +372,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.CloudExadataInfrastructure], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.CloudExadataInfrastructure], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -353,7 +391,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -364,7 +405,7 @@ async def _create_or_update_initial( self, resource_group_name: str, cloudexadatainfrastructurename: str, - resource: Union[_models.CloudExadataInfrastructure, JSON, IO[bytes]], + resource: Union[_models.CloudExadataInfrastructure, _types.CloudExadataInfrastructure, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -403,6 +444,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -416,7 +458,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -426,7 +471,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -467,7 +512,7 @@ async def begin_create_or_update( self, resource_group_name: str, cloudexadatainfrastructurename: str, - resource: JSON, + resource: _types.CloudExadataInfrastructure, *, content_type: str = "application/json", **kwargs: Any @@ -480,7 +525,7 @@ async def begin_create_or_update( :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. :type cloudexadatainfrastructurename: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.CloudExadataInfrastructure :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -525,7 +570,7 @@ async def begin_create_or_update( self, resource_group_name: str, cloudexadatainfrastructurename: str, - resource: Union[_models.CloudExadataInfrastructure, JSON, IO[bytes]], + resource: Union[_models.CloudExadataInfrastructure, _types.CloudExadataInfrastructure, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.CloudExadataInfrastructure]: """Create a CloudExadataInfrastructure. @@ -535,10 +580,10 @@ async def begin_create_or_update( :type resource_group_name: str :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. :type cloudexadatainfrastructurename: str - :param resource: Resource create parameters. Is one of the following types: - CloudExadataInfrastructure, JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure or JSON or - IO[bytes] + :param resource: Resource create parameters. Is either a CloudExadataInfrastructure type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure or + ~azure.mgmt.oracledatabase.types.CloudExadataInfrastructure or IO[bytes] :return: An instance of AsyncLROPoller that returns CloudExadataInfrastructure. The CloudExadataInfrastructure is compatible with MutableMapping :rtype: @@ -639,6 +684,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -653,11 +699,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) @@ -670,7 +719,7 @@ async def _update_initial( self, resource_group_name: str, cloudexadatainfrastructurename: str, - properties: Union[_models.CloudExadataInfrastructureUpdate, JSON, IO[bytes]], + properties: Union[_models.CloudExadataInfrastructureUpdate, _types.CloudExadataInfrastructureUpdate, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -709,6 +758,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -722,7 +772,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -730,7 +783,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -771,7 +824,7 @@ async def begin_update( self, resource_group_name: str, cloudexadatainfrastructurename: str, - properties: JSON, + properties: _types.CloudExadataInfrastructureUpdate, *, content_type: str = "application/json", **kwargs: Any @@ -784,7 +837,7 @@ async def begin_update( :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. :type cloudexadatainfrastructurename: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.CloudExadataInfrastructureUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -829,7 +882,7 @@ async def begin_update( self, resource_group_name: str, cloudexadatainfrastructurename: str, - properties: Union[_models.CloudExadataInfrastructureUpdate, JSON, IO[bytes]], + properties: Union[_models.CloudExadataInfrastructureUpdate, _types.CloudExadataInfrastructureUpdate, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.CloudExadataInfrastructure]: """Update a CloudExadataInfrastructure. @@ -839,10 +892,10 @@ async def begin_update( :type resource_group_name: str :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. :type cloudexadatainfrastructurename: str - :param properties: The resource properties to be updated. Is one of the following types: - CloudExadataInfrastructureUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructureUpdate or JSON or - IO[bytes] + :param properties: The resource properties to be updated. Is either a + CloudExadataInfrastructureUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructureUpdate or + ~azure.mgmt.oracledatabase.types.CloudExadataInfrastructureUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns CloudExadataInfrastructure. The CloudExadataInfrastructure is compatible with MutableMapping :rtype: @@ -930,6 +983,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -943,7 +997,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -951,7 +1008,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -1072,7 +1129,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -1085,7 +1145,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.CloudExadataInfrastructure], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.CloudExadataInfrastructure], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -1101,7 +1164,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -1137,6 +1203,7 @@ async def _add_storage_capacity_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -1150,7 +1217,10 @@ async def _add_storage_capacity_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -1158,7 +1228,7 @@ async def _add_storage_capacity_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -1202,14 +1272,10 @@ async def begin_add_storage_capacity( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -1247,13 +1313,30 @@ def get_long_running_output(pipeline_response): "accept", ] }, - api_versions_list=["2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def _configure_exascale_initial( self, resource_group_name: str, cloudexadatainfrastructurename: str, - body: Union[_models.ConfigureExascaleCloudExadataInfrastructureDetails, JSON, IO[bytes]], + body: Union[ + _models.ConfigureExascaleCloudExadataInfrastructureDetails, + _types.ConfigureExascaleCloudExadataInfrastructureDetails, + IO[bytes], + ], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -1292,6 +1375,7 @@ async def _configure_exascale_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -1305,7 +1389,10 @@ async def _configure_exascale_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -1313,7 +1400,7 @@ async def _configure_exascale_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -1355,7 +1442,7 @@ async def begin_configure_exascale( self, resource_group_name: str, cloudexadatainfrastructurename: str, - body: JSON, + body: _types.ConfigureExascaleCloudExadataInfrastructureDetails, *, content_type: str = "application/json", **kwargs: Any @@ -1368,7 +1455,7 @@ async def begin_configure_exascale( :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. :type cloudexadatainfrastructurename: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.ConfigureExascaleCloudExadataInfrastructureDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -1421,13 +1508,30 @@ async def begin_configure_exascale( "accept", ] }, - api_versions_list=["2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def begin_configure_exascale( self, resource_group_name: str, cloudexadatainfrastructurename: str, - body: Union[_models.ConfigureExascaleCloudExadataInfrastructureDetails, JSON, IO[bytes]], + body: Union[ + _models.ConfigureExascaleCloudExadataInfrastructureDetails, + _types.ConfigureExascaleCloudExadataInfrastructureDetails, + IO[bytes], + ], **kwargs: Any ) -> AsyncLROPoller[_models.CloudExadataInfrastructure]: """Configures Exascale on Cloud exadata infrastructure resource. @@ -1437,10 +1541,11 @@ async def begin_configure_exascale( :type resource_group_name: str :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. :type cloudexadatainfrastructurename: str - :param body: The content of the action request. Is one of the following types: - ConfigureExascaleCloudExadataInfrastructureDetails, JSON, IO[bytes] Required. + :param body: The content of the action request. Is either a + ConfigureExascaleCloudExadataInfrastructureDetails type or a IO[bytes] type. Required. :type body: - ~azure.mgmt.oracledatabase.models.ConfigureExascaleCloudExadataInfrastructureDetails or JSON or + ~azure.mgmt.oracledatabase.models.ConfigureExascaleCloudExadataInfrastructureDetails or + ~azure.mgmt.oracledatabase.types.ConfigureExascaleCloudExadataInfrastructureDetails or IO[bytes] :return: An instance of AsyncLROPoller that returns CloudExadataInfrastructure. The CloudExadataInfrastructure is compatible with MutableMapping @@ -1471,14 +1576,10 @@ async def begin_configure_exascale( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -1505,7 +1606,7 @@ def get_long_running_output(pipeline_response): ) -class DbServersOperations: +class DbServersOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -1566,6 +1667,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -1580,11 +1682,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.DbServer, response.json()) @@ -1650,7 +1755,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -1663,7 +1771,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbServer], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DbServer], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -1679,7 +1790,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -1687,7 +1801,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class CloudVmClustersOperations: +class CloudVmClustersOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -1753,7 +1867,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -1766,7 +1883,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.CloudVmCluster], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.CloudVmCluster], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -1782,7 +1902,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -1793,7 +1916,7 @@ async def _create_or_update_initial( self, resource_group_name: str, cloudvmclustername: str, - resource: Union[_models.CloudVmCluster, JSON, IO[bytes]], + resource: Union[_models.CloudVmCluster, _types.CloudVmCluster, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -1832,6 +1955,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -1845,7 +1969,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -1855,7 +1982,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -1895,7 +2022,7 @@ async def begin_create_or_update( self, resource_group_name: str, cloudvmclustername: str, - resource: JSON, + resource: _types.CloudVmCluster, *, content_type: str = "application/json", **kwargs: Any @@ -1908,7 +2035,7 @@ async def begin_create_or_update( :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.CloudVmCluster :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -1951,7 +2078,7 @@ async def begin_create_or_update( self, resource_group_name: str, cloudvmclustername: str, - resource: Union[_models.CloudVmCluster, JSON, IO[bytes]], + resource: Union[_models.CloudVmCluster, _types.CloudVmCluster, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.CloudVmCluster]: """Create a CloudVmCluster. @@ -1961,9 +2088,10 @@ async def begin_create_or_update( :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param resource: Resource create parameters. Is one of the following types: CloudVmCluster, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.CloudVmCluster or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a CloudVmCluster type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.CloudVmCluster or + ~azure.mgmt.oracledatabase.types.CloudVmCluster or IO[bytes] :return: An instance of AsyncLROPoller that returns CloudVmCluster. The CloudVmCluster is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] @@ -2060,6 +2188,7 @@ async def get(self, resource_group_name: str, cloudvmclustername: str, **kwargs: } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -2074,11 +2203,14 @@ async def get(self, resource_group_name: str, cloudvmclustername: str, **kwargs: except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.CloudVmCluster, response.json()) @@ -2091,7 +2223,7 @@ async def _update_initial( self, resource_group_name: str, cloudvmclustername: str, - properties: Union[_models.CloudVmClusterUpdate, JSON, IO[bytes]], + properties: Union[_models.CloudVmClusterUpdate, _types.CloudVmClusterUpdate, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -2130,6 +2262,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -2143,7 +2276,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -2151,7 +2287,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -2191,7 +2327,7 @@ async def begin_update( self, resource_group_name: str, cloudvmclustername: str, - properties: JSON, + properties: _types.CloudVmClusterUpdate, *, content_type: str = "application/json", **kwargs: Any @@ -2204,7 +2340,7 @@ async def begin_update( :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.CloudVmClusterUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -2247,7 +2383,7 @@ async def begin_update( self, resource_group_name: str, cloudvmclustername: str, - properties: Union[_models.CloudVmClusterUpdate, JSON, IO[bytes]], + properties: Union[_models.CloudVmClusterUpdate, _types.CloudVmClusterUpdate, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.CloudVmCluster]: """Update a CloudVmCluster. @@ -2257,9 +2393,10 @@ async def begin_update( :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param properties: The resource properties to be updated. Is one of the following types: - CloudVmClusterUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.CloudVmClusterUpdate or JSON or IO[bytes] + :param properties: The resource properties to be updated. Is either a CloudVmClusterUpdate type + or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.CloudVmClusterUpdate or + ~azure.mgmt.oracledatabase.types.CloudVmClusterUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns CloudVmCluster. The CloudVmCluster is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] @@ -2346,6 +2483,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -2359,7 +2497,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -2367,7 +2508,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -2488,7 +2629,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -2501,7 +2645,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.CloudVmCluster], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.CloudVmCluster], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -2517,7 +2664,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -2528,7 +2678,7 @@ async def _add_vms_initial( self, resource_group_name: str, cloudvmclustername: str, - body: Union[_models.AddRemoveDbNode, JSON, IO[bytes]], + body: Union[_models.AddRemoveDbNode, _types.AddRemoveDbNode, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -2567,6 +2717,7 @@ async def _add_vms_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -2580,7 +2731,10 @@ async def _add_vms_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -2588,7 +2742,7 @@ async def _add_vms_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -2628,7 +2782,7 @@ async def begin_add_vms( self, resource_group_name: str, cloudvmclustername: str, - body: JSON, + body: _types.AddRemoveDbNode, *, content_type: str = "application/json", **kwargs: Any @@ -2641,7 +2795,7 @@ async def begin_add_vms( :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.AddRemoveDbNode :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -2684,7 +2838,7 @@ async def begin_add_vms( self, resource_group_name: str, cloudvmclustername: str, - body: Union[_models.AddRemoveDbNode, JSON, IO[bytes]], + body: Union[_models.AddRemoveDbNode, _types.AddRemoveDbNode, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.CloudVmCluster]: """Add VMs to the VM Cluster. @@ -2694,9 +2848,10 @@ async def begin_add_vms( :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param body: The content of the action request. Is one of the following types: AddRemoveDbNode, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode or JSON or IO[bytes] + :param body: The content of the action request. Is either a AddRemoveDbNode type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode or + ~azure.mgmt.oracledatabase.types.AddRemoveDbNode or IO[bytes] :return: An instance of AsyncLROPoller that returns CloudVmCluster. The CloudVmCluster is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] @@ -2725,14 +2880,10 @@ async def begin_add_vms( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.CloudVmCluster, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -2762,7 +2913,7 @@ async def _remove_vms_initial( self, resource_group_name: str, cloudvmclustername: str, - body: Union[_models.AddRemoveDbNode, JSON, IO[bytes]], + body: Union[_models.AddRemoveDbNode, _types.AddRemoveDbNode, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -2801,6 +2952,7 @@ async def _remove_vms_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -2814,7 +2966,10 @@ async def _remove_vms_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -2822,7 +2977,7 @@ async def _remove_vms_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -2862,7 +3017,7 @@ async def begin_remove_vms( self, resource_group_name: str, cloudvmclustername: str, - body: JSON, + body: _types.AddRemoveDbNode, *, content_type: str = "application/json", **kwargs: Any @@ -2875,7 +3030,7 @@ async def begin_remove_vms( :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.AddRemoveDbNode :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -2918,7 +3073,7 @@ async def begin_remove_vms( self, resource_group_name: str, cloudvmclustername: str, - body: Union[_models.AddRemoveDbNode, JSON, IO[bytes]], + body: Union[_models.AddRemoveDbNode, _types.AddRemoveDbNode, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.CloudVmCluster]: """Remove VMs from the VM Cluster. @@ -2928,9 +3083,10 @@ async def begin_remove_vms( :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param body: The content of the action request. Is one of the following types: AddRemoveDbNode, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode or JSON or IO[bytes] + :param body: The content of the action request. Is either a AddRemoveDbNode type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode or + ~azure.mgmt.oracledatabase.types.AddRemoveDbNode or IO[bytes] :return: An instance of AsyncLROPoller that returns CloudVmCluster. The CloudVmCluster is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] @@ -2959,14 +3115,10 @@ async def begin_remove_vms( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.CloudVmCluster, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -3024,7 +3176,7 @@ async def list_private_ip_addresses( self, resource_group_name: str, cloudvmclustername: str, - body: JSON, + body: _types.PrivateIpAddressesFilter, *, content_type: str = "application/json", **kwargs: Any @@ -3037,7 +3189,7 @@ async def list_private_ip_addresses( :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.PrivateIpAddressesFilter :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -3078,7 +3230,7 @@ async def list_private_ip_addresses( self, resource_group_name: str, cloudvmclustername: str, - body: Union[_models.PrivateIpAddressesFilter, JSON, IO[bytes]], + body: Union[_models.PrivateIpAddressesFilter, _types.PrivateIpAddressesFilter, IO[bytes]], **kwargs: Any ) -> List[_models.PrivateIpAddressProperties]: """List Private IP Addresses by the provided filter. @@ -3088,9 +3240,10 @@ async def list_private_ip_addresses( :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param body: The content of the action request. Is one of the following types: - PrivateIpAddressesFilter, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.PrivateIpAddressesFilter or JSON or IO[bytes] + :param body: The content of the action request. Is either a PrivateIpAddressesFilter type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.PrivateIpAddressesFilter or + ~azure.mgmt.oracledatabase.types.PrivateIpAddressesFilter or IO[bytes] :return: list of PrivateIpAddressProperties :rtype: list[~azure.mgmt.oracledatabase.models.PrivateIpAddressProperties] :raises ~azure.core.exceptions.HttpResponseError: @@ -3131,6 +3284,7 @@ async def list_private_ip_addresses( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -3145,11 +3299,14 @@ async def list_private_ip_addresses( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(List[_models.PrivateIpAddressProperties], response.json()) @@ -3159,7 +3316,7 @@ async def list_private_ip_addresses( return deserialized # type: ignore -class VirtualNetworkAddressesOperations: +class VirtualNetworkAddressesOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -3181,7 +3338,7 @@ async def _create_or_update_initial( resource_group_name: str, cloudvmclustername: str, virtualnetworkaddressname: str, - resource: Union[_models.VirtualNetworkAddress, JSON, IO[bytes]], + resource: Union[_models.VirtualNetworkAddress, _types.VirtualNetworkAddress, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -3221,6 +3378,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -3234,7 +3392,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -3244,7 +3405,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -3289,7 +3450,7 @@ async def begin_create_or_update( resource_group_name: str, cloudvmclustername: str, virtualnetworkaddressname: str, - resource: JSON, + resource: _types.VirtualNetworkAddress, *, content_type: str = "application/json", **kwargs: Any @@ -3304,7 +3465,7 @@ async def begin_create_or_update( :param virtualnetworkaddressname: Virtual IP address hostname. Required. :type virtualnetworkaddressname: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.VirtualNetworkAddress :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -3353,7 +3514,7 @@ async def begin_create_or_update( resource_group_name: str, cloudvmclustername: str, virtualnetworkaddressname: str, - resource: Union[_models.VirtualNetworkAddress, JSON, IO[bytes]], + resource: Union[_models.VirtualNetworkAddress, _types.VirtualNetworkAddress, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.VirtualNetworkAddress]: """Create a VirtualNetworkAddress. @@ -3365,9 +3526,10 @@ async def begin_create_or_update( :type cloudvmclustername: str :param virtualnetworkaddressname: Virtual IP address hostname. Required. :type virtualnetworkaddressname: str - :param resource: Resource create parameters. Is one of the following types: - VirtualNetworkAddress, JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.VirtualNetworkAddress or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a VirtualNetworkAddress type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.VirtualNetworkAddress or + ~azure.mgmt.oracledatabase.types.VirtualNetworkAddress or IO[bytes] :return: An instance of AsyncLROPoller that returns VirtualNetworkAddress. The VirtualNetworkAddress is compatible with MutableMapping :rtype: @@ -3471,6 +3633,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -3485,11 +3648,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.VirtualNetworkAddress, response.json()) @@ -3528,6 +3694,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -3541,7 +3708,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -3549,7 +3719,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -3676,7 +3846,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -3689,7 +3862,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.VirtualNetworkAddress], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.VirtualNetworkAddress], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -3705,7 +3881,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -3713,7 +3892,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class SystemVersionsOperations: +class SystemVersionsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -3768,6 +3947,7 @@ async def get(self, location: str, systemversionname: str, **kwargs: Any) -> _mo } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -3782,11 +3962,14 @@ async def get(self, location: str, systemversionname: str, **kwargs: Any) -> _mo except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.SystemVersion, response.json()) @@ -3847,7 +4030,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -3860,7 +4046,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.SystemVersion], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.SystemVersion], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -3876,7 +4065,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -3884,7 +4076,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class OracleSubscriptionsOperations: +class OracleSubscriptionsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -3950,7 +4142,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -3963,7 +4158,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.OracleSubscription], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.OracleSubscription], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -3979,7 +4177,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -3987,7 +4188,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) async def _create_or_update_initial( - self, resource: Union[_models.OracleSubscription, JSON, IO[bytes]], **kwargs: Any + self, resource: Union[_models.OracleSubscription, _types.OracleSubscription, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -4023,6 +4224,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -4036,7 +4238,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -4046,7 +4251,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -4073,12 +4278,12 @@ async def begin_create_or_update( @overload async def begin_create_or_update( - self, resource: JSON, *, content_type: str = "application/json", **kwargs: Any + self, resource: _types.OracleSubscription, *, content_type: str = "application/json", **kwargs: Any ) -> AsyncLROPoller[_models.OracleSubscription]: """Create a OracleSubscription. :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.OracleSubscription :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -4109,13 +4314,14 @@ async def begin_create_or_update( @distributed_trace_async async def begin_create_or_update( - self, resource: Union[_models.OracleSubscription, JSON, IO[bytes]], **kwargs: Any + self, resource: Union[_models.OracleSubscription, _types.OracleSubscription, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.OracleSubscription]: """Create a OracleSubscription. - :param resource: Resource create parameters. Is one of the following types: OracleSubscription, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.OracleSubscription or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a OracleSubscription type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.OracleSubscription or + ~azure.mgmt.oracledatabase.types.OracleSubscription or IO[bytes] :return: An instance of AsyncLROPoller that returns OracleSubscription. The OracleSubscription is compatible with MutableMapping :rtype: @@ -4204,6 +4410,7 @@ async def get(self, **kwargs: Any) -> _models.OracleSubscription: } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -4218,11 +4425,14 @@ async def get(self, **kwargs: Any) -> _models.OracleSubscription: except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.OracleSubscription, response.json()) @@ -4232,7 +4442,9 @@ async def get(self, **kwargs: Any) -> _models.OracleSubscription: return deserialized # type: ignore async def _update_initial( - self, properties: Union[_models.OracleSubscriptionUpdate, JSON, IO[bytes]], **kwargs: Any + self, + properties: Union[_models.OracleSubscriptionUpdate, _types.OracleSubscriptionUpdate, IO[bytes]], + **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -4268,6 +4480,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -4281,7 +4494,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -4289,7 +4505,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -4316,12 +4532,12 @@ async def begin_update( @overload async def begin_update( - self, properties: JSON, *, content_type: str = "application/json", **kwargs: Any + self, properties: _types.OracleSubscriptionUpdate, *, content_type: str = "application/json", **kwargs: Any ) -> AsyncLROPoller[_models.OracleSubscription]: """Update a OracleSubscription. :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.OracleSubscriptionUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -4352,14 +4568,16 @@ async def begin_update( @distributed_trace_async async def begin_update( - self, properties: Union[_models.OracleSubscriptionUpdate, JSON, IO[bytes]], **kwargs: Any + self, + properties: Union[_models.OracleSubscriptionUpdate, _types.OracleSubscriptionUpdate, IO[bytes]], + **kwargs: Any ) -> AsyncLROPoller[_models.OracleSubscription]: """Update a OracleSubscription. - :param properties: The resource properties to be updated. Is one of the following types: - OracleSubscriptionUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.OracleSubscriptionUpdate or JSON or - IO[bytes] + :param properties: The resource properties to be updated. Is either a OracleSubscriptionUpdate + type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.OracleSubscriptionUpdate or + ~azure.mgmt.oracledatabase.types.OracleSubscriptionUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns OracleSubscription. The OracleSubscription is compatible with MutableMapping :rtype: @@ -4441,6 +4659,7 @@ async def _delete_initial(self, **kwargs: Any) -> AsyncIterator[bytes]: } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -4454,7 +4673,10 @@ async def _delete_initial(self, **kwargs: Any) -> AsyncIterator[bytes]: except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -4462,7 +4684,7 @@ async def _delete_initial(self, **kwargs: Any) -> AsyncIterator[bytes]: response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -4539,6 +4761,7 @@ async def _list_cloud_account_details_initial(self, **kwargs: Any) -> AsyncItera } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -4552,7 +4775,10 @@ async def _list_cloud_account_details_initial(self, **kwargs: Any) -> AsyncItera except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -4560,7 +4786,7 @@ async def _list_cloud_account_details_initial(self, **kwargs: Any) -> AsyncItera response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -4646,6 +4872,7 @@ async def _list_saas_subscription_details_initial(self, **kwargs: Any) -> AsyncI } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -4659,7 +4886,10 @@ async def _list_saas_subscription_details_initial(self, **kwargs: Any) -> AsyncI except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -4667,7 +4897,7 @@ async def _list_saas_subscription_details_initial(self, **kwargs: Any) -> AsyncI response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -4755,6 +4985,7 @@ async def _list_activation_links_initial(self, **kwargs: Any) -> AsyncIterator[b } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -4768,7 +4999,10 @@ async def _list_activation_links_initial(self, **kwargs: Any) -> AsyncIterator[b except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -4776,7 +5010,7 @@ async def _list_activation_links_initial(self, **kwargs: Any) -> AsyncIterator[b response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -4853,10 +5087,19 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _add_azure_subscriptions_initial( - self, body: Union[_models.AzureSubscriptions, JSON, IO[bytes]], **kwargs: Any + self, body: Union[_models.AzureSubscriptions, _types.AzureSubscriptions, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -4892,6 +5135,7 @@ async def _add_azure_subscriptions_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -4905,14 +5149,17 @@ async def _add_azure_subscriptions_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -4937,12 +5184,12 @@ async def begin_add_azure_subscriptions( @overload async def begin_add_azure_subscriptions( - self, body: JSON, *, content_type: str = "application/json", **kwargs: Any + self, body: _types.AzureSubscriptions, *, content_type: str = "application/json", **kwargs: Any ) -> AsyncLROPoller[None]: """Add Azure Subscriptions. :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.AzureSubscriptions :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -4985,16 +5232,26 @@ async def begin_add_azure_subscriptions( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_add_azure_subscriptions( - self, body: Union[_models.AzureSubscriptions, JSON, IO[bytes]], **kwargs: Any + self, body: Union[_models.AzureSubscriptions, _types.AzureSubscriptions, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[None]: """Add Azure Subscriptions. - :param body: The content of the action request. Is one of the following types: - AzureSubscriptions, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.AzureSubscriptions or JSON or IO[bytes] + :param body: The content of the action request. Is either a AzureSubscriptions type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AzureSubscriptions or + ~azure.mgmt.oracledatabase.types.AzureSubscriptions or IO[bytes] :return: An instance of AsyncLROPoller that returns None :rtype: ~azure.core.polling.AsyncLROPoller[None] :raises ~azure.core.exceptions.HttpResponseError: @@ -5040,7 +5297,7 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore -class DbNodesOperations: +class DbNodesOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -5101,6 +5358,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5115,11 +5373,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.DbNode, response.json()) @@ -5185,7 +5446,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -5198,7 +5462,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbNode], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DbNode], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -5214,7 +5481,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -5226,7 +5496,7 @@ async def _action_initial( resource_group_name: str, cloudvmclustername: str, dbnodeocid: str, - body: Union[_models.DbNodeAction, JSON, IO[bytes]], + body: Union[_models.DbNodeAction, _types.DbNodeAction, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -5266,6 +5536,7 @@ async def _action_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5279,7 +5550,10 @@ async def _action_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -5287,7 +5561,7 @@ async def _action_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -5331,7 +5605,7 @@ async def begin_action( resource_group_name: str, cloudvmclustername: str, dbnodeocid: str, - body: JSON, + body: _types.DbNodeAction, *, content_type: str = "application/json", **kwargs: Any @@ -5346,7 +5620,7 @@ async def begin_action( :param dbnodeocid: DbNode OCID. Required. :type dbnodeocid: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.DbNodeAction :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -5393,7 +5667,7 @@ async def begin_action( resource_group_name: str, cloudvmclustername: str, dbnodeocid: str, - body: Union[_models.DbNodeAction, JSON, IO[bytes]], + body: Union[_models.DbNodeAction, _types.DbNodeAction, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.DbNode]: """VM actions on DbNode of VM Cluster by the provided filter. @@ -5405,9 +5679,10 @@ async def begin_action( :type cloudvmclustername: str :param dbnodeocid: DbNode OCID. Required. :type dbnodeocid: str - :param body: The content of the action request. Is one of the following types: DbNodeAction, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction or JSON or IO[bytes] + :param body: The content of the action request. Is either a DbNodeAction type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction or + ~azure.mgmt.oracledatabase.types.DbNodeAction or IO[bytes] :return: An instance of AsyncLROPoller that returns DbNode. The DbNode is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.DbNode] @@ -5437,14 +5712,10 @@ async def begin_action( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.DbNode, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -5471,7 +5742,7 @@ def get_long_running_output(pipeline_response): ) -class GiVersionsOperations: +class GiVersionsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -5526,6 +5797,7 @@ async def get(self, location: str, giversionname: str, **kwargs: Any) -> _models } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5540,11 +5812,14 @@ async def get(self, location: str, giversionname: str, **kwargs: Any) -> _models except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.GiVersion, response.json()) @@ -5570,6 +5845,15 @@ async def get(self, location: str, giversionname: str, **kwargs: Any) -> _models "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_location( @@ -5586,7 +5870,7 @@ def list_by_location( :param location: The name of the Azure region. Required. :type location: str :keyword shape: If provided, filters the results for the given shape. Known values are: - "Exadata.X9M", "Exadata.X11M", and "ExaDbXS". Default value is None. + "Exadata.X9M", "Exadata.X11M", "Exadata.X11MV", and "ExaDbXS". Default value is None. :paramtype shape: str or ~azure.mgmt.oracledatabase.models.SystemShapes :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. :paramtype zone: str @@ -5641,7 +5925,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -5654,7 +5941,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.GiVersion], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.GiVersion], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -5670,7 +5960,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -5678,7 +5971,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class GiMinorVersionsOperations: +class GiMinorVersionsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -5707,7 +6000,8 @@ def __init__(self, *args, **kwargs) -> None: "shape_family", "zone", "accept", - ] + ], + "2026-04-01-preview": ["shape", "is_gi_version_for_provisioning", "sort_order"], }, api_versions_list=[ "2024-12-01-preview", @@ -5719,6 +6013,15 @@ def __init__(self, *args, **kwargs) -> None: "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_parent( @@ -5728,6 +6031,9 @@ def list_by_parent( *, shape_family: Optional[Union[str, _models.ShapeFamily]] = None, zone: Optional[str] = None, + shape: Optional[str] = None, + is_gi_version_for_provisioning: Optional[bool] = None, + sort_order: Optional[Union[str, _models.GiMinorVersionSortOrder]] = None, **kwargs: Any ) -> AsyncItemPaged["_models.GiMinorVersion"]: """List GiMinorVersion resources by GiVersion. @@ -5742,6 +6048,15 @@ def list_by_parent( :paramtype shape_family: str or ~azure.mgmt.oracledatabase.models.ShapeFamily :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. :paramtype zone: str + :keyword shape: If provided, filters the results to the set of GI minor versions supported for + the given shape. Default value is None. + :paramtype shape: str + :keyword is_gi_version_for_provisioning: If true, filters the results to GI minor versions + supported during VM cluster provisioning. Default value is None. + :paramtype is_gi_version_for_provisioning: bool + :keyword sort_order: Sort order for the returned GI minor versions. Known values are: "ASC" and + "DESC". Default value is None. + :paramtype sort_order: str or ~azure.mgmt.oracledatabase.models.GiMinorVersionSortOrder :return: An iterator like instance of GiMinorVersion :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.oracledatabase.models.GiMinorVersion] @@ -5769,6 +6084,9 @@ def prepare_request(next_link=None): subscription_id=self._config.subscription_id, shape_family=shape_family, zone=zone, + shape=shape, + is_gi_version_for_provisioning=is_gi_version_for_provisioning, + sort_order=sort_order, api_version=self._config.api_version, headers=_headers, params=_params, @@ -5791,7 +6109,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -5804,7 +6125,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.GiMinorVersion], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.GiMinorVersion], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -5820,7 +6144,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -5850,6 +6177,15 @@ async def get_next(next_link=None): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def get( @@ -5894,6 +6230,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5908,11 +6245,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.GiMinorVersion, response.json()) @@ -5922,7 +6262,7 @@ async def get( return deserialized # type: ignore -class DbSystemShapesOperations: +class DbSystemShapesOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -5977,6 +6317,7 @@ async def get(self, location: str, dbsystemshapename: str, **kwargs: Any) -> _mo } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5991,11 +6332,14 @@ async def get(self, location: str, dbsystemshapename: str, **kwargs: Any) -> _mo except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.DbSystemShape, response.json()) @@ -6021,6 +6365,15 @@ async def get(self, location: str, dbsystemshapename: str, **kwargs: Any) -> _mo "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_location( @@ -6083,7 +6436,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -6096,7 +6452,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbSystemShape], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DbSystemShape], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -6112,7 +6471,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -6120,7 +6482,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class DnsPrivateViewsOperations: +class DnsPrivateViewsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -6175,6 +6537,7 @@ async def get(self, location: str, dnsprivateviewocid: str, **kwargs: Any) -> _m } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -6189,11 +6552,14 @@ async def get(self, location: str, dnsprivateviewocid: str, **kwargs: Any) -> _m except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.DnsPrivateView, response.json()) @@ -6254,7 +6620,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -6267,7 +6636,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DnsPrivateView], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DnsPrivateView], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -6283,7 +6655,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -6291,7 +6666,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class DnsPrivateZonesOperations: +class DnsPrivateZonesOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -6346,6 +6721,7 @@ async def get(self, location: str, dnsprivatezonename: str, **kwargs: Any) -> _m } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -6360,11 +6736,14 @@ async def get(self, location: str, dnsprivatezonename: str, **kwargs: Any) -> _m except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.DnsPrivateZone, response.json()) @@ -6425,7 +6804,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -6438,7 +6820,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DnsPrivateZone], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DnsPrivateZone], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -6454,7 +6839,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -6462,7 +6850,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class FlexComponentsOperations: +class FlexComponentsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -6494,6 +6882,15 @@ def __init__(self, *args, **kwargs) -> None: "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def get(self, location: str, flex_component_name: str, **kwargs: Any) -> _models.FlexComponent: @@ -6533,6 +6930,7 @@ async def get(self, location: str, flex_component_name: str, **kwargs: Any) -> _ } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -6547,11 +6945,14 @@ async def get(self, location: str, flex_component_name: str, **kwargs: Any) -> _ except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.FlexComponent, response.json()) @@ -6573,6 +6974,15 @@ async def get(self, location: str, flex_component_name: str, **kwargs: Any) -> _ "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_parent( @@ -6583,7 +6993,7 @@ def list_by_parent( :param location: The name of the Azure region. Required. :type location: str :keyword shape: If provided, filters the results for the given shape. Known values are: - "Exadata.X9M", "Exadata.X11M", and "ExaDbXS". Default value is None. + "Exadata.X9M", "Exadata.X11M", "Exadata.X11MV", and "ExaDbXS". Default value is None. :paramtype shape: str or ~azure.mgmt.oracledatabase.models.SystemShapes :return: An iterator like instance of FlexComponent :rtype: @@ -6632,7 +7042,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -6645,7 +7058,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.FlexComponent], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.FlexComponent], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -6661,7 +7077,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -6669,7 +7088,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class AutonomousDatabasesOperations: # pylint: disable=too-many-public-methods +class AutonomousDatabasesOperations: # pylint: disable=docstring-missing-param,too-many-public-methods """ .. warning:: **DO NOT** instantiate this class directly. @@ -6735,7 +7154,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -6748,7 +7170,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDatabase], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.AutonomousDatabase], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -6764,7 +7189,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -6775,7 +7203,7 @@ async def _create_or_update_initial( self, resource_group_name: str, autonomousdatabasename: str, - resource: Union[_models.AutonomousDatabase, JSON, IO[bytes]], + resource: Union[_models.AutonomousDatabase, _types.AutonomousDatabase, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -6814,6 +7242,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -6827,7 +7256,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -6837,7 +7269,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -6878,7 +7310,7 @@ async def begin_create_or_update( self, resource_group_name: str, autonomousdatabasename: str, - resource: JSON, + resource: _types.AutonomousDatabase, *, content_type: str = "application/json", **kwargs: Any @@ -6891,7 +7323,7 @@ async def begin_create_or_update( :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.AutonomousDatabase :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -6936,7 +7368,7 @@ async def begin_create_or_update( self, resource_group_name: str, autonomousdatabasename: str, - resource: Union[_models.AutonomousDatabase, JSON, IO[bytes]], + resource: Union[_models.AutonomousDatabase, _types.AutonomousDatabase, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.AutonomousDatabase]: """Create a AutonomousDatabase. @@ -6946,9 +7378,10 @@ async def begin_create_or_update( :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param resource: Resource create parameters. Is one of the following types: AutonomousDatabase, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabase or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a AutonomousDatabase type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabase or + ~azure.mgmt.oracledatabase.types.AutonomousDatabase or IO[bytes] :return: An instance of AsyncLROPoller that returns AutonomousDatabase. The AutonomousDatabase is compatible with MutableMapping :rtype: @@ -7048,6 +7481,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -7062,11 +7496,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.AutonomousDatabase, response.json()) @@ -7104,6 +7541,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -7117,7 +7555,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -7125,7 +7566,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -7195,7 +7636,7 @@ async def _update_initial( self, resource_group_name: str, autonomousdatabasename: str, - properties: Union[_models.AutonomousDatabaseUpdate, JSON, IO[bytes]], + properties: Union[_models.AutonomousDatabaseUpdate, _types.AutonomousDatabaseUpdate, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -7234,6 +7675,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -7247,7 +7689,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -7255,7 +7700,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -7296,7 +7741,7 @@ async def begin_update( self, resource_group_name: str, autonomousdatabasename: str, - properties: JSON, + properties: _types.AutonomousDatabaseUpdate, *, content_type: str = "application/json", **kwargs: Any @@ -7309,7 +7754,7 @@ async def begin_update( :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.AutonomousDatabaseUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -7354,7 +7799,7 @@ async def begin_update( self, resource_group_name: str, autonomousdatabasename: str, - properties: Union[_models.AutonomousDatabaseUpdate, JSON, IO[bytes]], + properties: Union[_models.AutonomousDatabaseUpdate, _types.AutonomousDatabaseUpdate, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.AutonomousDatabase]: """Update a AutonomousDatabase. @@ -7364,10 +7809,10 @@ async def begin_update( :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param properties: The resource properties to be updated. Is one of the following types: - AutonomousDatabaseUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseUpdate or JSON or - IO[bytes] + :param properties: The resource properties to be updated. Is either a AutonomousDatabaseUpdate + type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseUpdate or + ~azure.mgmt.oracledatabase.types.AutonomousDatabaseUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns AutonomousDatabase. The AutonomousDatabase is compatible with MutableMapping :rtype: @@ -7481,7 +7926,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -7494,7 +7942,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDatabase], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.AutonomousDatabase], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -7510,7 +7961,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -7521,7 +7975,7 @@ async def _switchover_initial( self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.PeerDbDetails, JSON, IO[bytes]], + body: Union[_models.PeerDbDetails, _types.PeerDbDetails, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -7560,6 +8014,7 @@ async def _switchover_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -7573,7 +8028,10 @@ async def _switchover_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -7581,7 +8039,7 @@ async def _switchover_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -7622,7 +8080,7 @@ async def begin_switchover( self, resource_group_name: str, autonomousdatabasename: str, - body: JSON, + body: _types.PeerDbDetails, *, content_type: str = "application/json", **kwargs: Any @@ -7635,7 +8093,7 @@ async def begin_switchover( :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.PeerDbDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -7680,7 +8138,7 @@ async def begin_switchover( self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.PeerDbDetails, JSON, IO[bytes]], + body: Union[_models.PeerDbDetails, _types.PeerDbDetails, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.AutonomousDatabase]: """Perform switchover action on Autonomous Database. @@ -7690,9 +8148,10 @@ async def begin_switchover( :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: PeerDbDetails, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails or JSON or IO[bytes] + :param body: The content of the action request. Is either a PeerDbDetails type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails or + ~azure.mgmt.oracledatabase.types.PeerDbDetails or IO[bytes] :return: An instance of AsyncLROPoller that returns AutonomousDatabase. The AutonomousDatabase is compatible with MutableMapping :rtype: @@ -7722,14 +8181,10 @@ async def begin_switchover( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -7759,7 +8214,7 @@ async def _failover_initial( self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.PeerDbDetails, JSON, IO[bytes]], + body: Union[_models.PeerDbDetails, _types.PeerDbDetails, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -7798,6 +8253,7 @@ async def _failover_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -7811,7 +8267,10 @@ async def _failover_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -7819,7 +8278,7 @@ async def _failover_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -7860,7 +8319,7 @@ async def begin_failover( self, resource_group_name: str, autonomousdatabasename: str, - body: JSON, + body: _types.PeerDbDetails, *, content_type: str = "application/json", **kwargs: Any @@ -7873,7 +8332,7 @@ async def begin_failover( :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.PeerDbDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -7918,7 +8377,7 @@ async def begin_failover( self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.PeerDbDetails, JSON, IO[bytes]], + body: Union[_models.PeerDbDetails, _types.PeerDbDetails, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.AutonomousDatabase]: """Perform failover action on Autonomous Database. @@ -7928,9 +8387,10 @@ async def begin_failover( :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: PeerDbDetails, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails or JSON or IO[bytes] + :param body: The content of the action request. Is either a PeerDbDetails type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails or + ~azure.mgmt.oracledatabase.types.PeerDbDetails or IO[bytes] :return: An instance of AsyncLROPoller that returns AutonomousDatabase. The AutonomousDatabase is compatible with MutableMapping :rtype: @@ -7960,14 +8420,10 @@ async def begin_failover( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -8026,7 +8482,7 @@ async def generate_wallet( self, resource_group_name: str, autonomousdatabasename: str, - body: JSON, + body: _types.GenerateAutonomousDatabaseWalletDetails, *, content_type: str = "application/json", **kwargs: Any @@ -8039,7 +8495,7 @@ async def generate_wallet( :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.GenerateAutonomousDatabaseWalletDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -8082,7 +8538,9 @@ async def generate_wallet( self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.GenerateAutonomousDatabaseWalletDetails, JSON, IO[bytes]], + body: Union[ + _models.GenerateAutonomousDatabaseWalletDetails, _types.GenerateAutonomousDatabaseWalletDetails, IO[bytes] + ], **kwargs: Any ) -> _models.AutonomousDatabaseWalletFile: """Generate wallet action on Autonomous Database. @@ -8092,10 +8550,10 @@ async def generate_wallet( :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: - GenerateAutonomousDatabaseWalletDetails, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.GenerateAutonomousDatabaseWalletDetails or JSON - or IO[bytes] + :param body: The content of the action request. Is either a + GenerateAutonomousDatabaseWalletDetails type or a IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.GenerateAutonomousDatabaseWalletDetails or + ~azure.mgmt.oracledatabase.types.GenerateAutonomousDatabaseWalletDetails or IO[bytes] :return: AutonomousDatabaseWalletFile. The AutonomousDatabaseWalletFile is compatible with MutableMapping :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile @@ -8137,6 +8595,7 @@ async def generate_wallet( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -8151,11 +8610,14 @@ async def generate_wallet( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.AutonomousDatabaseWalletFile, response.json()) @@ -8168,7 +8630,7 @@ async def _restore_initial( self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.RestoreAutonomousDatabaseDetails, JSON, IO[bytes]], + body: Union[_models.RestoreAutonomousDatabaseDetails, _types.RestoreAutonomousDatabaseDetails, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -8207,6 +8669,7 @@ async def _restore_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -8220,7 +8683,10 @@ async def _restore_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -8228,7 +8694,7 @@ async def _restore_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -8269,7 +8735,7 @@ async def begin_restore( self, resource_group_name: str, autonomousdatabasename: str, - body: JSON, + body: _types.RestoreAutonomousDatabaseDetails, *, content_type: str = "application/json", **kwargs: Any @@ -8282,7 +8748,7 @@ async def begin_restore( :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.RestoreAutonomousDatabaseDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -8327,7 +8793,7 @@ async def begin_restore( self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.RestoreAutonomousDatabaseDetails, JSON, IO[bytes]], + body: Union[_models.RestoreAutonomousDatabaseDetails, _types.RestoreAutonomousDatabaseDetails, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.AutonomousDatabase]: """Restores an Autonomous Database based on the provided request parameters. @@ -8337,10 +8803,10 @@ async def begin_restore( :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: - RestoreAutonomousDatabaseDetails, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.RestoreAutonomousDatabaseDetails or JSON or - IO[bytes] + :param body: The content of the action request. Is either a RestoreAutonomousDatabaseDetails + type or a IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.RestoreAutonomousDatabaseDetails or + ~azure.mgmt.oracledatabase.types.RestoreAutonomousDatabaseDetails or IO[bytes] :return: An instance of AsyncLROPoller that returns AutonomousDatabase. The AutonomousDatabase is compatible with MutableMapping :rtype: @@ -8370,14 +8836,10 @@ async def begin_restore( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -8432,6 +8894,7 @@ async def _shrink_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -8445,7 +8908,10 @@ async def _shrink_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -8453,7 +8919,7 @@ async def _shrink_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -8498,14 +8964,10 @@ async def begin_shrink( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -8554,13 +9016,24 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _change_disaster_recovery_configuration_initial( # pylint: disable=name-too-long self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.DisasterRecoveryConfigurationDetails, JSON, IO[bytes]], + body: Union[ + _models.DisasterRecoveryConfigurationDetails, _types.DisasterRecoveryConfigurationDetails, IO[bytes] + ], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -8599,6 +9072,7 @@ async def _change_disaster_recovery_configuration_initial( # pylint: disable=na } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -8612,7 +9086,10 @@ async def _change_disaster_recovery_configuration_initial( # pylint: disable=na except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -8620,7 +9097,7 @@ async def _change_disaster_recovery_configuration_initial( # pylint: disable=na response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -8661,7 +9138,7 @@ async def begin_change_disaster_recovery_configuration( # pylint: disable=name- self, resource_group_name: str, autonomousdatabasename: str, - body: JSON, + body: _types.DisasterRecoveryConfigurationDetails, *, content_type: str = "application/json", **kwargs: Any @@ -8674,7 +9151,7 @@ async def begin_change_disaster_recovery_configuration( # pylint: disable=name- :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.DisasterRecoveryConfigurationDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -8738,13 +9215,24 @@ async def begin_change_disaster_recovery_configuration( # pylint: disable=name- "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-long self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.DisasterRecoveryConfigurationDetails, JSON, IO[bytes]], + body: Union[ + _models.DisasterRecoveryConfigurationDetails, _types.DisasterRecoveryConfigurationDetails, IO[bytes] + ], **kwargs: Any ) -> AsyncLROPoller[_models.AutonomousDatabase]: """Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database. @@ -8754,10 +9242,10 @@ async def begin_change_disaster_recovery_configuration( # pylint: disable=name- :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: - DisasterRecoveryConfigurationDetails, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.DisasterRecoveryConfigurationDetails or JSON or - IO[bytes] + :param body: The content of the action request. Is either a + DisasterRecoveryConfigurationDetails type or a IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.DisasterRecoveryConfigurationDetails or + ~azure.mgmt.oracledatabase.types.DisasterRecoveryConfigurationDetails or IO[bytes] :return: An instance of AsyncLROPoller that returns AutonomousDatabase. The AutonomousDatabase is compatible with MutableMapping :rtype: @@ -8787,14 +9275,10 @@ async def begin_change_disaster_recovery_configuration( # pylint: disable=name- kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -8838,13 +9322,22 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _action_initial( self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.AutonomousDatabaseLifecycleAction, JSON, IO[bytes]], + body: Union[_models.AutonomousDatabaseLifecycleAction, _types.AutonomousDatabaseLifecycleAction, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -8883,6 +9376,7 @@ async def _action_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -8896,7 +9390,10 @@ async def _action_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -8904,7 +9401,7 @@ async def _action_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -8945,7 +9442,7 @@ async def begin_action( self, resource_group_name: str, autonomousdatabasename: str, - body: JSON, + body: _types.AutonomousDatabaseLifecycleAction, *, content_type: str = "application/json", **kwargs: Any @@ -8958,7 +9455,7 @@ async def begin_action( :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.AutonomousDatabaseLifecycleAction :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -9017,13 +9514,22 @@ async def begin_action( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_action( self, resource_group_name: str, autonomousdatabasename: str, - body: Union[_models.AutonomousDatabaseLifecycleAction, JSON, IO[bytes]], + body: Union[_models.AutonomousDatabaseLifecycleAction, _types.AutonomousDatabaseLifecycleAction, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.AutonomousDatabase]: """Perform Lifecycle Management Action on Autonomous Database. @@ -9033,10 +9539,10 @@ async def begin_action( :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: - AutonomousDatabaseLifecycleAction, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseLifecycleAction or JSON or - IO[bytes] + :param body: The content of the action request. Is either a AutonomousDatabaseLifecycleAction + type or a IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseLifecycleAction or + ~azure.mgmt.oracledatabase.types.AutonomousDatabaseLifecycleAction or IO[bytes] :return: An instance of AsyncLROPoller that returns AutonomousDatabase. The AutonomousDatabase is compatible with MutableMapping :rtype: @@ -9066,14 +9572,10 @@ async def begin_action( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -9100,7 +9602,7 @@ def get_long_running_output(pipeline_response): ) -class AutonomousDatabaseBackupsOperations: +class AutonomousDatabaseBackupsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -9122,7 +9624,7 @@ async def _create_or_update_initial( resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, - resource: Union[_models.AutonomousDatabaseBackup, JSON, IO[bytes]], + resource: Union[_models.AutonomousDatabaseBackup, _types.AutonomousDatabaseBackup, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -9162,6 +9664,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -9175,7 +9678,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -9185,7 +9691,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -9230,7 +9736,7 @@ async def begin_create_or_update( resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, - resource: JSON, + resource: _types.AutonomousDatabaseBackup, *, content_type: str = "application/json", **kwargs: Any @@ -9245,7 +9751,7 @@ async def begin_create_or_update( :param adbbackupid: AutonomousDatabaseBackup id. Required. :type adbbackupid: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.AutonomousDatabaseBackup :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -9294,7 +9800,7 @@ async def begin_create_or_update( resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, - resource: Union[_models.AutonomousDatabaseBackup, JSON, IO[bytes]], + resource: Union[_models.AutonomousDatabaseBackup, _types.AutonomousDatabaseBackup, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.AutonomousDatabaseBackup]: """Create a AutonomousDatabaseBackup. @@ -9306,9 +9812,10 @@ async def begin_create_or_update( :type autonomousdatabasename: str :param adbbackupid: AutonomousDatabaseBackup id. Required. :type adbbackupid: str - :param resource: Resource create parameters. Is one of the following types: - AutonomousDatabaseBackup, JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a AutonomousDatabaseBackup type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup or + ~azure.mgmt.oracledatabase.types.AutonomousDatabaseBackup or IO[bytes] :return: An instance of AsyncLROPoller that returns AutonomousDatabaseBackup. The AutonomousDatabaseBackup is compatible with MutableMapping :rtype: @@ -9413,6 +9920,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -9427,11 +9935,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.AutonomousDatabaseBackup, response.json()) @@ -9470,6 +9981,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -9483,7 +9995,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -9491,7 +10006,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -9565,7 +10080,7 @@ async def _update_initial( resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, - properties: Union[_models.AutonomousDatabaseBackupUpdate, JSON, IO[bytes]], + properties: Union[_models.AutonomousDatabaseBackupUpdate, _types.AutonomousDatabaseBackupUpdate, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -9605,6 +10120,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -9618,7 +10134,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -9626,7 +10145,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -9671,7 +10190,7 @@ async def begin_update( resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, - properties: JSON, + properties: _types.AutonomousDatabaseBackupUpdate, *, content_type: str = "application/json", **kwargs: Any @@ -9686,7 +10205,7 @@ async def begin_update( :param adbbackupid: AutonomousDatabaseBackup id. Required. :type adbbackupid: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.AutonomousDatabaseBackupUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -9735,7 +10254,7 @@ async def begin_update( resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, - properties: Union[_models.AutonomousDatabaseBackupUpdate, JSON, IO[bytes]], + properties: Union[_models.AutonomousDatabaseBackupUpdate, _types.AutonomousDatabaseBackupUpdate, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.AutonomousDatabaseBackup]: """Update a AutonomousDatabaseBackup. @@ -9747,10 +10266,10 @@ async def begin_update( :type autonomousdatabasename: str :param adbbackupid: AutonomousDatabaseBackup id. Required. :type adbbackupid: str - :param properties: The resource properties to be updated. Is one of the following types: - AutonomousDatabaseBackupUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupUpdate or JSON or - IO[bytes] + :param properties: The resource properties to be updated. Is either a + AutonomousDatabaseBackupUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupUpdate or + ~azure.mgmt.oracledatabase.types.AutonomousDatabaseBackupUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns AutonomousDatabaseBackup. The AutonomousDatabaseBackup is compatible with MutableMapping :rtype: @@ -9868,7 +10387,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -9881,7 +10403,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDatabaseBackup], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.AutonomousDatabaseBackup], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -9897,7 +10422,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -9905,7 +10433,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class AutonomousDatabaseCharacterSetsOperations: # pylint: disable=name-too-long +class AutonomousDatabaseCharacterSetsOperations: # pylint: disable=docstring-missing-param,name-too-long """ .. warning:: **DO NOT** instantiate this class directly. @@ -9961,6 +10489,7 @@ async def get(self, location: str, adbscharsetname: str, **kwargs: Any) -> _mode } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -9975,11 +10504,14 @@ async def get(self, location: str, adbscharsetname: str, **kwargs: Any) -> _mode except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.AutonomousDatabaseCharacterSet, response.json()) @@ -10042,7 +10574,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -10055,7 +10590,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDatabaseCharacterSet], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.AutonomousDatabaseCharacterSet], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -10071,7 +10609,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -10079,7 +10620,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class AutonomousDatabaseNationalCharacterSetsOperations: # pylint: disable=name-too-long +class AutonomousDatabaseNationalCharacterSetsOperations: # pylint: disable=docstring-missing-param,name-too-long """ .. warning:: **DO NOT** instantiate this class directly. @@ -10137,6 +10678,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -10151,11 +10693,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.AutonomousDatabaseNationalCharacterSet, response.json()) @@ -10218,7 +10763,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -10232,7 +10780,8 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() list_of_elem = _deserialize( - List[_models.AutonomousDatabaseNationalCharacterSet], deserialized.get("value", []) + List[_models.AutonomousDatabaseNationalCharacterSet], + deserialized.get("value", []), ) if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -10249,7 +10798,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -10257,7 +10809,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class AutonomousDatabaseVersionsOperations: +class AutonomousDatabaseVersionsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -10312,6 +10864,7 @@ async def get(self, location: str, autonomousdbversionsname: str, **kwargs: Any) } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -10326,11 +10879,14 @@ async def get(self, location: str, autonomousdbversionsname: str, **kwargs: Any) except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.AutonomousDbVersion, response.json()) @@ -10391,7 +10947,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -10404,7 +10963,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDbVersion], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.AutonomousDbVersion], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -10420,7 +10982,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -10428,7 +10993,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class ExadbVmClustersOperations: +class ExadbVmClustersOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -10459,6 +11024,15 @@ def __init__(self, *args, **kwargs) -> None: "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.ExadbVmCluster"]: @@ -10509,7 +11083,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -10522,7 +11099,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExadbVmCluster], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.ExadbVmCluster], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -10538,7 +11118,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -10567,13 +11150,22 @@ async def get_next(next_link=None): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _create_or_update_initial( self, resource_group_name: str, exadb_vm_cluster_name: str, - resource: Union[_models.ExadbVmCluster, JSON, IO[bytes]], + resource: Union[_models.ExadbVmCluster, _types.ExadbVmCluster, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -10612,6 +11204,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -10625,7 +11218,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -10635,7 +11231,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -10675,7 +11271,7 @@ async def begin_create_or_update( self, resource_group_name: str, exadb_vm_cluster_name: str, - resource: JSON, + resource: _types.ExadbVmCluster, *, content_type: str = "application/json", **kwargs: Any @@ -10688,7 +11284,7 @@ async def begin_create_or_update( :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. :type exadb_vm_cluster_name: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.ExadbVmCluster :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -10749,13 +11345,22 @@ async def begin_create_or_update( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_create_or_update( self, resource_group_name: str, exadb_vm_cluster_name: str, - resource: Union[_models.ExadbVmCluster, JSON, IO[bytes]], + resource: Union[_models.ExadbVmCluster, _types.ExadbVmCluster, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.ExadbVmCluster]: """Create a ExadbVmCluster. @@ -10765,9 +11370,10 @@ async def begin_create_or_update( :type resource_group_name: str :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. :type exadb_vm_cluster_name: str - :param resource: Resource create parameters. Is one of the following types: ExadbVmCluster, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.ExadbVmCluster or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a ExadbVmCluster type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.ExadbVmCluster or + ~azure.mgmt.oracledatabase.types.ExadbVmCluster or IO[bytes] :return: An instance of AsyncLROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] @@ -10847,6 +11453,15 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: Any) -> _models.ExadbVmCluster: @@ -10887,6 +11502,7 @@ async def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwar } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -10901,11 +11517,14 @@ async def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwar except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.ExadbVmCluster, response.json()) @@ -10936,13 +11555,22 @@ async def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwar "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _update_initial( self, resource_group_name: str, exadb_vm_cluster_name: str, - properties: Union[_models.ExadbVmClusterUpdate, JSON, IO[bytes]], + properties: Union[_models.ExadbVmClusterUpdate, _types.ExadbVmClusterUpdate, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -10981,6 +11609,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -10994,7 +11623,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -11002,7 +11634,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -11042,7 +11674,7 @@ async def begin_update( self, resource_group_name: str, exadb_vm_cluster_name: str, - properties: JSON, + properties: _types.ExadbVmClusterUpdate, *, content_type: str = "application/json", **kwargs: Any @@ -11055,7 +11687,7 @@ async def begin_update( :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. :type exadb_vm_cluster_name: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.ExadbVmClusterUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -11116,13 +11748,22 @@ async def begin_update( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_update( self, resource_group_name: str, exadb_vm_cluster_name: str, - properties: Union[_models.ExadbVmClusterUpdate, JSON, IO[bytes]], + properties: Union[_models.ExadbVmClusterUpdate, _types.ExadbVmClusterUpdate, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.ExadbVmCluster]: """Update a ExadbVmCluster. @@ -11132,9 +11773,10 @@ async def begin_update( :type resource_group_name: str :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. :type exadb_vm_cluster_name: str - :param properties: The resource properties to be updated. Is one of the following types: - ExadbVmClusterUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterUpdate or JSON or IO[bytes] + :param properties: The resource properties to be updated. Is either a ExadbVmClusterUpdate type + or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterUpdate or + ~azure.mgmt.oracledatabase.types.ExadbVmClusterUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] @@ -11207,6 +11849,15 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _delete_initial( @@ -11238,6 +11889,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -11251,7 +11903,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -11259,7 +11914,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -11282,6 +11937,15 @@ async def _delete_initial( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_delete( @@ -11356,6 +12020,15 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_resource_group( @@ -11412,7 +12085,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -11425,7 +12101,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExadbVmCluster], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.ExadbVmCluster], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -11441,7 +12120,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -11470,13 +12152,26 @@ async def get_next(next_link=None): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _remove_vms_initial( self, resource_group_name: str, exadb_vm_cluster_name: str, - body: Union[_models.RemoveVirtualMachineFromExadbVmClusterDetails, JSON, IO[bytes]], + body: Union[ + _models.RemoveVirtualMachineFromExadbVmClusterDetails, + _types.RemoveVirtualMachineFromExadbVmClusterDetails, + IO[bytes], + ], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -11515,6 +12210,7 @@ async def _remove_vms_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -11528,7 +12224,10 @@ async def _remove_vms_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -11536,7 +12235,7 @@ async def _remove_vms_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -11576,7 +12275,7 @@ async def begin_remove_vms( self, resource_group_name: str, exadb_vm_cluster_name: str, - body: JSON, + body: _types.RemoveVirtualMachineFromExadbVmClusterDetails, *, content_type: str = "application/json", **kwargs: Any @@ -11589,7 +12288,7 @@ async def begin_remove_vms( :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. :type exadb_vm_cluster_name: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.RemoveVirtualMachineFromExadbVmClusterDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -11650,13 +12349,26 @@ async def begin_remove_vms( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_remove_vms( self, resource_group_name: str, exadb_vm_cluster_name: str, - body: Union[_models.RemoveVirtualMachineFromExadbVmClusterDetails, JSON, IO[bytes]], + body: Union[ + _models.RemoveVirtualMachineFromExadbVmClusterDetails, + _types.RemoveVirtualMachineFromExadbVmClusterDetails, + IO[bytes], + ], **kwargs: Any ) -> AsyncLROPoller[_models.ExadbVmCluster]: """Remove VMs from the VM Cluster. @@ -11666,10 +12378,10 @@ async def begin_remove_vms( :type resource_group_name: str :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. :type exadb_vm_cluster_name: str - :param body: The content of the action request. Is one of the following types: - RemoveVirtualMachineFromExadbVmClusterDetails, JSON, IO[bytes] Required. + :param body: The content of the action request. Is either a + RemoveVirtualMachineFromExadbVmClusterDetails type or a IO[bytes] type. Required. :type body: ~azure.mgmt.oracledatabase.models.RemoveVirtualMachineFromExadbVmClusterDetails or - JSON or IO[bytes] + ~azure.mgmt.oracledatabase.types.RemoveVirtualMachineFromExadbVmClusterDetails or IO[bytes] :return: An instance of AsyncLROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] @@ -11698,14 +12410,10 @@ async def begin_remove_vms( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.ExadbVmCluster, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -11732,7 +12440,7 @@ def get_long_running_output(pipeline_response): ) -class ExascaleDbNodesOperations: +class ExascaleDbNodesOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -11772,6 +12480,15 @@ def __init__(self, *args, **kwargs) -> None: "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def get( @@ -11817,6 +12534,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -11831,11 +12549,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.ExascaleDbNode, response.json()) @@ -11866,6 +12587,15 @@ async def get( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_parent( @@ -11925,7 +12655,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -11938,7 +12671,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExascaleDbNode], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.ExascaleDbNode], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -11954,7 +12690,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -11984,6 +12723,15 @@ async def get_next(next_link=None): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _action_initial( @@ -11991,7 +12739,7 @@ async def _action_initial( resource_group_name: str, exadb_vm_cluster_name: str, exascale_db_node_name: str, - body: Union[_models.DbNodeAction, JSON, IO[bytes]], + body: Union[_models.DbNodeAction, _types.DbNodeAction, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -12031,6 +12779,7 @@ async def _action_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -12044,7 +12793,10 @@ async def _action_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -12052,7 +12804,7 @@ async def _action_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -12096,7 +12848,7 @@ async def begin_action( resource_group_name: str, exadb_vm_cluster_name: str, exascale_db_node_name: str, - body: JSON, + body: _types.DbNodeAction, *, content_type: str = "application/json", **kwargs: Any @@ -12111,7 +12863,7 @@ async def begin_action( :param exascale_db_node_name: The name of the ExascaleDbNode. Required. :type exascale_db_node_name: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.DbNodeAction :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -12176,6 +12928,15 @@ async def begin_action( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_action( @@ -12183,7 +12944,7 @@ async def begin_action( resource_group_name: str, exadb_vm_cluster_name: str, exascale_db_node_name: str, - body: Union[_models.DbNodeAction, JSON, IO[bytes]], + body: Union[_models.DbNodeAction, _types.DbNodeAction, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.DbActionResponse]: """VM actions on DbNode of ExadbVmCluster by the provided filter. @@ -12195,9 +12956,10 @@ async def begin_action( :type exadb_vm_cluster_name: str :param exascale_db_node_name: The name of the ExascaleDbNode. Required. :type exascale_db_node_name: str - :param body: The content of the action request. Is one of the following types: DbNodeAction, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction or JSON or IO[bytes] + :param body: The content of the action request. Is either a DbNodeAction type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction or + ~azure.mgmt.oracledatabase.types.DbNodeAction or IO[bytes] :return: An instance of AsyncLROPoller that returns DbActionResponse. The DbActionResponse is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.DbActionResponse] @@ -12227,14 +12989,10 @@ async def begin_action( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = _deserialize(_models.DbActionResponse, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -12261,7 +13019,7 @@ def get_long_running_output(pipeline_response): ) -class ExascaleDbStorageVaultsOperations: +class ExascaleDbStorageVaultsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -12300,6 +13058,15 @@ def __init__(self, *args, **kwargs) -> None: "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def get( @@ -12342,6 +13109,7 @@ async def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -12356,11 +13124,14 @@ async def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.ExascaleDbStorageVault, response.json()) @@ -12391,13 +13162,22 @@ async def get( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _create_initial( self, resource_group_name: str, exascale_db_storage_vault_name: str, - resource: Union[_models.ExascaleDbStorageVault, JSON, IO[bytes]], + resource: Union[_models.ExascaleDbStorageVault, _types.ExascaleDbStorageVault, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -12436,6 +13216,7 @@ async def _create_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -12449,7 +13230,10 @@ async def _create_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -12459,7 +13243,7 @@ async def _create_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -12500,7 +13284,7 @@ async def begin_create( self, resource_group_name: str, exascale_db_storage_vault_name: str, - resource: JSON, + resource: _types.ExascaleDbStorageVault, *, content_type: str = "application/json", **kwargs: Any @@ -12513,7 +13297,7 @@ async def begin_create( :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. :type exascale_db_storage_vault_name: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.ExascaleDbStorageVault :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -12576,13 +13360,22 @@ async def begin_create( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_create( self, resource_group_name: str, exascale_db_storage_vault_name: str, - resource: Union[_models.ExascaleDbStorageVault, JSON, IO[bytes]], + resource: Union[_models.ExascaleDbStorageVault, _types.ExascaleDbStorageVault, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.ExascaleDbStorageVault]: """Create a ExascaleDbStorageVault. @@ -12592,9 +13385,10 @@ async def begin_create( :type resource_group_name: str :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. :type exascale_db_storage_vault_name: str - :param resource: Resource create parameters. Is one of the following types: - ExascaleDbStorageVault, JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a ExascaleDbStorageVault type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault or + ~azure.mgmt.oracledatabase.types.ExascaleDbStorageVault or IO[bytes] :return: An instance of AsyncLROPoller that returns ExascaleDbStorageVault. The ExascaleDbStorageVault is compatible with MutableMapping :rtype: @@ -12675,13 +13469,22 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _update_initial( self, resource_group_name: str, exascale_db_storage_vault_name: str, - properties: Union[_models.ExascaleDbStorageVaultTagsUpdate, JSON, IO[bytes]], + properties: Union[_models.ExascaleDbStorageVaultTagsUpdate, _types.ExascaleDbStorageVaultTagsUpdate, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -12720,6 +13523,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -12733,7 +13537,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -12741,7 +13548,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -12782,7 +13589,7 @@ async def begin_update( self, resource_group_name: str, exascale_db_storage_vault_name: str, - properties: JSON, + properties: _types.ExascaleDbStorageVaultTagsUpdate, *, content_type: str = "application/json", **kwargs: Any @@ -12795,7 +13602,7 @@ async def begin_update( :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. :type exascale_db_storage_vault_name: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.ExascaleDbStorageVaultTagsUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -12858,13 +13665,22 @@ async def begin_update( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_update( self, resource_group_name: str, exascale_db_storage_vault_name: str, - properties: Union[_models.ExascaleDbStorageVaultTagsUpdate, JSON, IO[bytes]], + properties: Union[_models.ExascaleDbStorageVaultTagsUpdate, _types.ExascaleDbStorageVaultTagsUpdate, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.ExascaleDbStorageVault]: """Update a ExascaleDbStorageVault. @@ -12874,10 +13690,10 @@ async def begin_update( :type resource_group_name: str :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. :type exascale_db_storage_vault_name: str - :param properties: The resource properties to be updated. Is one of the following types: - ExascaleDbStorageVaultTagsUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultTagsUpdate or JSON or - IO[bytes] + :param properties: The resource properties to be updated. Is either a + ExascaleDbStorageVaultTagsUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultTagsUpdate or + ~azure.mgmt.oracledatabase.types.ExascaleDbStorageVaultTagsUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns ExascaleDbStorageVault. The ExascaleDbStorageVault is compatible with MutableMapping :rtype: @@ -12956,6 +13772,15 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _delete_initial( @@ -12987,6 +13812,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -13000,7 +13826,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -13008,7 +13837,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -13036,6 +13865,15 @@ async def _delete_initial( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_delete( @@ -13110,6 +13948,15 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_resource_group( @@ -13166,7 +14013,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -13179,7 +14029,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExascaleDbStorageVault], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.ExascaleDbStorageVault], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -13195,7 +14048,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -13216,6 +14072,15 @@ async def get_next(next_link=None): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.ExascaleDbStorageVault"]: @@ -13266,7 +14131,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -13279,7 +14147,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExascaleDbStorageVault], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.ExascaleDbStorageVault], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -13295,7 +14166,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -13303,7 +14177,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class NetworkAnchorsOperations: +class NetworkAnchorsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -13331,6 +14205,15 @@ def __init__(self, *args, **kwargs) -> None: "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.NetworkAnchor"]: @@ -13381,7 +14264,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -13394,7 +14280,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.NetworkAnchor], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.NetworkAnchor], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -13410,7 +14299,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -13436,13 +14328,22 @@ async def get_next(next_link=None): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _create_or_update_initial( self, resource_group_name: str, network_anchor_name: str, - resource: Union[_models.NetworkAnchor, JSON, IO[bytes]], + resource: Union[_models.NetworkAnchor, _types.NetworkAnchor, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -13481,6 +14382,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -13494,7 +14396,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -13504,7 +14409,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -13544,7 +14449,7 @@ async def begin_create_or_update( self, resource_group_name: str, network_anchor_name: str, - resource: JSON, + resource: _types.NetworkAnchor, *, content_type: str = "application/json", **kwargs: Any @@ -13557,7 +14462,7 @@ async def begin_create_or_update( :param network_anchor_name: The name of the NetworkAnchor. Required. :type network_anchor_name: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.NetworkAnchor :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -13615,13 +14520,22 @@ async def begin_create_or_update( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_create_or_update( self, resource_group_name: str, network_anchor_name: str, - resource: Union[_models.NetworkAnchor, JSON, IO[bytes]], + resource: Union[_models.NetworkAnchor, _types.NetworkAnchor, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.NetworkAnchor]: """Create a NetworkAnchor. @@ -13631,9 +14545,10 @@ async def begin_create_or_update( :type resource_group_name: str :param network_anchor_name: The name of the NetworkAnchor. Required. :type network_anchor_name: str - :param resource: Resource create parameters. Is one of the following types: NetworkAnchor, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.NetworkAnchor or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a NetworkAnchor type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.NetworkAnchor or + ~azure.mgmt.oracledatabase.types.NetworkAnchor or IO[bytes] :return: An instance of AsyncLROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] @@ -13710,6 +14625,15 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def get(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) -> _models.NetworkAnchor: @@ -13750,6 +14674,7 @@ async def get(self, resource_group_name: str, network_anchor_name: str, **kwargs } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -13764,11 +14689,14 @@ async def get(self, resource_group_name: str, network_anchor_name: str, **kwargs except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.NetworkAnchor, response.json()) @@ -13796,13 +14724,22 @@ async def get(self, resource_group_name: str, network_anchor_name: str, **kwargs "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _update_initial( self, resource_group_name: str, network_anchor_name: str, - properties: Union[_models.NetworkAnchorUpdate, JSON, IO[bytes]], + properties: Union[_models.NetworkAnchorUpdate, _types.NetworkAnchorUpdate, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -13841,6 +14778,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -13854,7 +14792,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -13862,7 +14803,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -13902,7 +14843,7 @@ async def begin_update( self, resource_group_name: str, network_anchor_name: str, - properties: JSON, + properties: _types.NetworkAnchorUpdate, *, content_type: str = "application/json", **kwargs: Any @@ -13915,7 +14856,7 @@ async def begin_update( :param network_anchor_name: The name of the NetworkAnchor. Required. :type network_anchor_name: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.NetworkAnchorUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -13973,13 +14914,22 @@ async def begin_update( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_update( self, resource_group_name: str, network_anchor_name: str, - properties: Union[_models.NetworkAnchorUpdate, JSON, IO[bytes]], + properties: Union[_models.NetworkAnchorUpdate, _types.NetworkAnchorUpdate, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.NetworkAnchor]: """Update a NetworkAnchor. @@ -13989,9 +14939,10 @@ async def begin_update( :type resource_group_name: str :param network_anchor_name: The name of the NetworkAnchor. Required. :type network_anchor_name: str - :param properties: The resource properties to be updated. Is one of the following types: - NetworkAnchorUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.NetworkAnchorUpdate or JSON or IO[bytes] + :param properties: The resource properties to be updated. Is either a NetworkAnchorUpdate type + or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.NetworkAnchorUpdate or + ~azure.mgmt.oracledatabase.types.NetworkAnchorUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] @@ -14061,6 +15012,15 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _delete_initial( @@ -14092,6 +15052,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -14105,7 +15066,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -14113,7 +15077,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -14133,6 +15097,15 @@ async def _delete_initial( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_delete( @@ -14204,6 +15177,15 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_resource_group( @@ -14260,7 +15242,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -14273,7 +15258,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.NetworkAnchor], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.NetworkAnchor], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -14289,7 +15277,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -14297,7 +15288,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class ResourceAnchorsOperations: +class ResourceAnchorsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -14325,6 +15316,15 @@ def __init__(self, *args, **kwargs) -> None: "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.ResourceAnchor"]: @@ -14375,7 +15375,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -14388,7 +15391,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ResourceAnchor], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.ResourceAnchor], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -14404,7 +15410,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -14430,13 +15439,22 @@ async def get_next(next_link=None): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _create_or_update_initial( self, resource_group_name: str, resource_anchor_name: str, - resource: Union[_models.ResourceAnchor, JSON, IO[bytes]], + resource: Union[_models.ResourceAnchor, _types.ResourceAnchor, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -14475,6 +15493,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -14488,7 +15507,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -14498,7 +15520,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -14538,7 +15560,7 @@ async def begin_create_or_update( self, resource_group_name: str, resource_anchor_name: str, - resource: JSON, + resource: _types.ResourceAnchor, *, content_type: str = "application/json", **kwargs: Any @@ -14551,7 +15573,7 @@ async def begin_create_or_update( :param resource_anchor_name: The name of the ResourceAnchor. Required. :type resource_anchor_name: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.ResourceAnchor :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -14609,13 +15631,22 @@ async def begin_create_or_update( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_create_or_update( self, resource_group_name: str, resource_anchor_name: str, - resource: Union[_models.ResourceAnchor, JSON, IO[bytes]], + resource: Union[_models.ResourceAnchor, _types.ResourceAnchor, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.ResourceAnchor]: """Create a ResourceAnchor. @@ -14625,9 +15656,10 @@ async def begin_create_or_update( :type resource_group_name: str :param resource_anchor_name: The name of the ResourceAnchor. Required. :type resource_anchor_name: str - :param resource: Resource create parameters. Is one of the following types: ResourceAnchor, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.ResourceAnchor or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a ResourceAnchor type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.ResourceAnchor or + ~azure.mgmt.oracledatabase.types.ResourceAnchor or IO[bytes] :return: An instance of AsyncLROPoller that returns ResourceAnchor. The ResourceAnchor is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] @@ -14704,6 +15736,15 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def get(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any) -> _models.ResourceAnchor: @@ -14744,6 +15785,7 @@ async def get(self, resource_group_name: str, resource_anchor_name: str, **kwarg } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -14758,11 +15800,14 @@ async def get(self, resource_group_name: str, resource_anchor_name: str, **kwarg except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.ResourceAnchor, response.json()) @@ -14790,13 +15835,22 @@ async def get(self, resource_group_name: str, resource_anchor_name: str, **kwarg "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _update_initial( self, resource_group_name: str, resource_anchor_name: str, - properties: Union[_models.ResourceAnchorUpdate, JSON, IO[bytes]], + properties: Union[_models.ResourceAnchorUpdate, _types.ResourceAnchorUpdate, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -14835,6 +15889,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -14848,7 +15903,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -14856,7 +15914,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -14896,7 +15954,7 @@ async def begin_update( self, resource_group_name: str, resource_anchor_name: str, - properties: JSON, + properties: _types.ResourceAnchorUpdate, *, content_type: str = "application/json", **kwargs: Any @@ -14909,7 +15967,7 @@ async def begin_update( :param resource_anchor_name: The name of the ResourceAnchor. Required. :type resource_anchor_name: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.ResourceAnchorUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -14967,13 +16025,22 @@ async def begin_update( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_update( self, resource_group_name: str, resource_anchor_name: str, - properties: Union[_models.ResourceAnchorUpdate, JSON, IO[bytes]], + properties: Union[_models.ResourceAnchorUpdate, _types.ResourceAnchorUpdate, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.ResourceAnchor]: """Update a ResourceAnchor. @@ -14983,9 +16050,10 @@ async def begin_update( :type resource_group_name: str :param resource_anchor_name: The name of the ResourceAnchor. Required. :type resource_anchor_name: str - :param properties: The resource properties to be updated. Is one of the following types: - ResourceAnchorUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.ResourceAnchorUpdate or JSON or IO[bytes] + :param properties: The resource properties to be updated. Is either a ResourceAnchorUpdate type + or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.ResourceAnchorUpdate or + ~azure.mgmt.oracledatabase.types.ResourceAnchorUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns ResourceAnchor. The ResourceAnchor is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] @@ -15055,6 +16123,15 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def _delete_initial( @@ -15086,6 +16163,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -15099,7 +16177,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -15107,7 +16188,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -15127,6 +16208,15 @@ async def _delete_initial( "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) async def begin_delete( @@ -15198,6 +16288,15 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def list_by_resource_group( @@ -15254,7 +16353,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -15267,7 +16369,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ResourceAnchor], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.ResourceAnchor], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -15283,7 +16388,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -15291,7 +16399,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class DbSystemsOperations: +class DbSystemsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -15312,7 +16420,21 @@ def __init__(self, *args, **kwargs) -> None: @api_version_validation( method_added_on="2025-07-01-preview", params_added_on={"2025-07-01-preview": ["api_version", "subscription_id", "accept"]}, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.DbSystem"]: """List DbSystem resources by subscription ID. @@ -15361,7 +16483,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -15374,7 +16499,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbSystem], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DbSystem], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -15390,7 +16518,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -15409,13 +16540,27 @@ async def get_next(next_link=None): "accept", ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def _create_or_update_initial( self, resource_group_name: str, db_system_name: str, - resource: Union[_models.DbSystem, JSON, IO[bytes]], + resource: Union[_models.DbSystem, _types.DbSystem, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -15454,6 +16599,7 @@ async def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -15467,7 +16613,10 @@ async def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -15477,7 +16626,7 @@ async def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -15517,7 +16666,7 @@ async def begin_create_or_update( self, resource_group_name: str, db_system_name: str, - resource: JSON, + resource: _types.DbSystem, *, content_type: str = "application/json", **kwargs: Any @@ -15530,7 +16679,7 @@ async def begin_create_or_update( :param db_system_name: The name of the DbSystem. Required. :type db_system_name: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.DbSystem :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -15581,13 +16730,27 @@ async def begin_create_or_update( "accept", ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def begin_create_or_update( self, resource_group_name: str, db_system_name: str, - resource: Union[_models.DbSystem, JSON, IO[bytes]], + resource: Union[_models.DbSystem, _types.DbSystem, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.DbSystem]: """Create a DbSystem. @@ -15597,9 +16760,10 @@ async def begin_create_or_update( :type resource_group_name: str :param db_system_name: The name of the DbSystem. Required. :type db_system_name: str - :param resource: Resource create parameters. Is one of the following types: DbSystem, JSON, - IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.DbSystem or JSON or IO[bytes] + :param resource: Resource create parameters. Is either a DbSystem type or a IO[bytes] type. + Required. + :type resource: ~azure.mgmt.oracledatabase.models.DbSystem or + ~azure.mgmt.oracledatabase.types.DbSystem or IO[bytes] :return: An instance of AsyncLROPoller that returns DbSystem. The DbSystem is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.DbSystem] @@ -15663,7 +16827,21 @@ def get_long_running_output(pipeline_response): params_added_on={ "2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "db_system_name", "accept"] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def get(self, resource_group_name: str, db_system_name: str, **kwargs: Any) -> _models.DbSystem: """Get a DbSystem. @@ -15703,6 +16881,7 @@ async def get(self, resource_group_name: str, db_system_name: str, **kwargs: Any } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -15717,11 +16896,14 @@ async def get(self, resource_group_name: str, db_system_name: str, **kwargs: Any except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.DbSystem, response.json()) @@ -15742,13 +16924,27 @@ async def get(self, resource_group_name: str, db_system_name: str, **kwargs: Any "accept", ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def _update_initial( self, resource_group_name: str, db_system_name: str, - properties: Union[_models.DbSystemUpdate, JSON, IO[bytes]], + properties: Union[_models.DbSystemUpdate, _types.DbSystemUpdate, IO[bytes]], **kwargs: Any ) -> AsyncIterator[bytes]: error_map: MutableMapping = { @@ -15787,6 +16983,7 @@ async def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -15800,7 +16997,10 @@ async def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -15808,7 +17008,7 @@ async def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -15848,7 +17048,7 @@ async def begin_update( self, resource_group_name: str, db_system_name: str, - properties: JSON, + properties: _types.DbSystemUpdate, *, content_type: str = "application/json", **kwargs: Any @@ -15861,7 +17061,7 @@ async def begin_update( :param db_system_name: The name of the DbSystem. Required. :type db_system_name: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.DbSystemUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str @@ -15912,13 +17112,27 @@ async def begin_update( "accept", ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def begin_update( self, resource_group_name: str, db_system_name: str, - properties: Union[_models.DbSystemUpdate, JSON, IO[bytes]], + properties: Union[_models.DbSystemUpdate, _types.DbSystemUpdate, IO[bytes]], **kwargs: Any ) -> AsyncLROPoller[_models.DbSystem]: """Update a DbSystem. @@ -15928,9 +17142,10 @@ async def begin_update( :type resource_group_name: str :param db_system_name: The name of the DbSystem. Required. :type db_system_name: str - :param properties: The resource properties to be updated. Is one of the following types: - DbSystemUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.DbSystemUpdate or JSON or IO[bytes] + :param properties: The resource properties to be updated. Is either a DbSystemUpdate type or a + IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.DbSystemUpdate or + ~azure.mgmt.oracledatabase.types.DbSystemUpdate or IO[bytes] :return: An instance of AsyncLROPoller that returns DbSystem. The DbSystem is compatible with MutableMapping :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.DbSystem] @@ -15993,7 +17208,21 @@ def get_long_running_output(pipeline_response): params_added_on={ "2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "db_system_name"] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def _delete_initial( self, resource_group_name: str, db_system_name: str, **kwargs: Any @@ -16024,6 +17253,7 @@ async def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -16037,7 +17267,10 @@ async def _delete_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -16045,7 +17278,7 @@ async def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -16058,7 +17291,21 @@ async def _delete_initial( params_added_on={ "2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "db_system_name"] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def begin_delete(self, resource_group_name: str, db_system_name: str, **kwargs: Any) -> AsyncLROPoller[None]: """Delete a DbSystem. @@ -16120,7 +17367,21 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- @api_version_validation( method_added_on="2025-07-01-preview", params_added_on={"2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncItemPaged["_models.DbSystem"]: """List DbSystem resources by resource group. @@ -16173,7 +17434,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -16186,7 +17450,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbSystem], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DbSystem], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -16202,7 +17469,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -16210,7 +17480,7 @@ async def get_next(next_link=None): return AsyncItemPaged(get_next, extract_data) -class DbVersionsOperations: +class DbVersionsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. @@ -16233,7 +17503,21 @@ def __init__(self, *args, **kwargs) -> None: params_added_on={ "2025-07-01-preview": ["api_version", "subscription_id", "location", "dbversionsname", "accept"] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) async def get(self, location: str, dbversionsname: str, **kwargs: Any) -> _models.DbVersion: """Get a DbVersion. @@ -16272,6 +17556,7 @@ async def get(self, location: str, dbversionsname: str, **kwargs: Any) -> _model } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -16286,11 +17571,14 @@ async def get(self, location: str, dbversionsname: str, **kwargs: Any) -> _model except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: deserialized = _deserialize(_models.DbVersion, response.json()) @@ -16316,7 +17604,21 @@ async def get(self, location: str, dbversionsname: str, **kwargs: Any) -> _model "accept", ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], ) def list_by_location( self, @@ -16335,8 +17637,8 @@ def list_by_location( :param location: The name of the Azure region. Required. :type location: str :keyword db_system_shape: If provided, filters the results to the set of database versions - which are supported for the given shape. e.g., VM.Standard.E5.Flex. "VM.Standard.x86" Default - value is None. + which are supported for the given shape. e.g., VM.Standard.E5.Flex. Known values are: + "VM.Standard.x86" and "VM.BaseDB.x86". Default value is None. :paramtype db_system_shape: str or ~azure.mgmt.oracledatabase.models.BaseDbSystemShapes :keyword db_system_id: The DB system AzureId. If provided, filters the results to the set of database versions which are supported for the DB system. Default value is None. @@ -16407,7 +17709,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -16420,7 +17725,10 @@ def prepare_request(next_link=None): async def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbVersion], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DbVersion], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, AsyncList(list_of_elem) @@ -16436,9 +17744,3897 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return AsyncItemPaged(get_next, extract_data) + + +class DatabaseEditionsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.aio.OracleDatabaseMgmtClient`'s + :attr:`database_editions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-04-01-preview", + params_added_on={ + "2026-04-01-preview": ["api_version", "subscription_id", "location", "databaseeditionname", "accept"] + }, + api_versions_list=["2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def get(self, location: str, databaseeditionname: str, **kwargs: Any) -> _models.DatabaseEdition: + """Get a DatabaseEdition. + + :param location: The name of the Azure region. Required. + :type location: str + :param databaseeditionname: DatabaseEdition name. Required. + :type databaseeditionname: str + :return: DatabaseEdition. The DatabaseEdition is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DatabaseEdition + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.DatabaseEdition] = kwargs.pop("cls", None) + + _request = build_database_editions_get_request( + location=location, + databaseeditionname=databaseeditionname, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DatabaseEdition, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2026-04-01-preview", + params_added_on={"2026-04-01-preview": ["api_version", "subscription_id", "location", "accept"]}, + api_versions_list=["2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_by_location(self, location: str, **kwargs: Any) -> AsyncItemPaged["_models.DatabaseEdition"]: + """List DatabaseEdition resources by SubscriptionLocationResource. + + :param location: The name of the Azure region. Required. + :type location: str + :return: An iterator like instance of DatabaseEdition + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.oracledatabase.models.DatabaseEdition] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DatabaseEdition]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_database_editions_list_by_location_request( + location=location, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DatabaseEdition], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class DatabaseSystemShapeResourcesOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.aio.OracleDatabaseMgmtClient`'s + :attr:`database_system_shape_resources` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-04-01-preview", + params_added_on={ + "2026-04-01-preview": ["api_version", "subscription_id", "location", "databasesystemshapename", "accept"] + }, + api_versions_list=["2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def get(self, location: str, databasesystemshapename: str, **kwargs: Any) -> _models.DatabaseSystemShape: + """Get a DatabaseSystemShape. + + :param location: The name of the Azure region. Required. + :type location: str + :param databasesystemshapename: DatabaseSystemShape name. Required. + :type databasesystemshapename: str + :return: DatabaseSystemShape. The DatabaseSystemShape is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DatabaseSystemShape + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.DatabaseSystemShape] = kwargs.pop("cls", None) + + _request = build_database_system_shape_resources_get_request( + location=location, + databasesystemshapename=databasesystemshapename, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DatabaseSystemShape, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2026-04-01-preview", + params_added_on={ + "2026-04-01-preview": [ + "api_version", + "subscription_id", + "location", + "shape_attribute", + "zone", + "availability_domain", + "database_shape_family", + "database_edition", + "accept", + ] + }, + api_versions_list=["2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_by_location( + self, + location: str, + *, + shape_attribute: Optional[str] = None, + zone: Optional[str] = None, + availability_domain: Optional[str] = None, + database_shape_family: Optional[str] = None, + database_edition: Optional[str] = None, + **kwargs: Any + ) -> AsyncItemPaged["_models.DatabaseSystemShape"]: + """List DatabaseSystemShape resources by SubscriptionLocationResource. + + :param location: The name of the Azure region. Required. + :type location: str + :keyword shape_attribute: Filters the result for the given Shape Attribute, such as + BLOCK_STORAGE or SMART_STORAGE. Default value is None. + :paramtype shape_attribute: str + :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. + :paramtype zone: str + :keyword availability_domain: If provided, filters the result by availability domain. Example: + GWjz:US-ASHBURN-AD-1. Default value is None. + :paramtype availability_domain: str + :keyword database_shape_family: If provided, filters the result by database shape family. + Example: VIRTUALMACHINE. Default value is None. + :paramtype database_shape_family: str + :keyword database_edition: If provided, filters the result by database edition. Default value + is None. + :paramtype database_edition: str + :return: An iterator like instance of DatabaseSystemShape + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.oracledatabase.models.DatabaseSystemShape] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DatabaseSystemShape]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_database_system_shape_resources_list_by_location_request( + location=location, + subscription_id=self._config.subscription_id, + shape_attribute=shape_attribute, + zone=zone, + availability_domain=availability_domain, + database_shape_family=database_shape_family, + database_edition=database_edition, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DatabaseSystemShape], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + +class GoldenGateConnectionsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.aio.OracleDatabaseMgmtClient`'s + :attr:`golden_gate_connections` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={"2026-03-01-preview": ["api_version", "subscription_id", "accept"]}, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.GoldenGateConnection"]: + """List GoldenGateConnection resources by subscription ID. + + :return: An iterator like instance of GoldenGateConnection + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.GoldenGateConnection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_golden_gate_connections_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GoldenGateConnection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _create_or_update_initial( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: Union[_models.GoldenGateConnection, _types.GoldenGateConnection, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(resource, (IOBase, bytes)): + _content = resource + else: + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_connections_create_or_update_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: _models.GoldenGateConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateConnection]: + """Create a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.GoldenGateConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateConnection. The + GoldenGateConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: _types.GoldenGateConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateConnection]: + """Create a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.GoldenGateConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateConnection. The + GoldenGateConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateConnection]: + """Create a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateConnection. The + GoldenGateConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + resource: Union[_models.GoldenGateConnection, _types.GoldenGateConnection, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateConnection]: + """Create a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param resource: Resource create parameters. Is either a GoldenGateConnection type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.GoldenGateConnection or + ~azure.mgmt.oracledatabase.types.GoldenGateConnection or IO[bytes] + :return: An instance of AsyncLROPoller that returns GoldenGateConnection. The + GoldenGateConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GoldenGateConnection] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_or_update_initial( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + resource=resource, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.GoldenGateConnection, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.GoldenGateConnection].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.GoldenGateConnection]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def get( + self, resource_group_name: str, golden_gate_connection_name: str, **kwargs: Any + ) -> _models.GoldenGateConnection: + """Get a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :return: GoldenGateConnection. The GoldenGateConnection is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.GoldenGateConnection + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.GoldenGateConnection] = kwargs.pop("cls", None) + + _request = build_golden_gate_connections_get_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GoldenGateConnection, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _update_initial( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: Union[_models.GoldenGateConnectionUpdate, _types.GoldenGateConnectionUpdate, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(properties, (IOBase, bytes)): + _content = properties + else: + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_connections_update_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: _models.GoldenGateConnectionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateConnection]: + """Update a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.GoldenGateConnectionUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateConnection. The + GoldenGateConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: _types.GoldenGateConnectionUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateConnection]: + """Update a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.GoldenGateConnectionUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateConnection. The + GoldenGateConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateConnection]: + """Update a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateConnection. The + GoldenGateConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_update( + self, + resource_group_name: str, + golden_gate_connection_name: str, + properties: Union[_models.GoldenGateConnectionUpdate, _types.GoldenGateConnectionUpdate, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateConnection]: + """Update a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param properties: The resource properties to be updated. Is either a + GoldenGateConnectionUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.GoldenGateConnectionUpdate or + ~azure.mgmt.oracledatabase.types.GoldenGateConnectionUpdate or IO[bytes] + :return: An instance of AsyncLROPoller that returns GoldenGateConnection. The + GoldenGateConnection is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GoldenGateConnection] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._update_initial( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + properties=properties, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.GoldenGateConnection, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.GoldenGateConnection].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.GoldenGateConnection]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _delete_initial( + self, resource_group_name: str, golden_gate_connection_name: str, **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_golden_gate_connections_delete_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_delete( + self, resource_group_name: str, golden_gate_connection_name: str, **kwargs: Any + ) -> AsyncLROPoller[None]: + """Delete a GoldenGateConnection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._delete_initial( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={"2026-03-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.GoldenGateConnection"]: + """List GoldenGateConnection resources by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of GoldenGateConnection + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.oracledatabase.models.GoldenGateConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.GoldenGateConnection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_golden_gate_connections_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GoldenGateConnection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _assign_deployment_initial( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: Union[_models.AssignUnassignDeployment, _types.AssignUnassignDeployment, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_connections_assign_deployment_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: _models.AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedDeployment]: + """Assign a GoldenGate deployment to a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignDeployment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedDeployment. The AssignedDeployment + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: _types.AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedDeployment]: + """Assign a GoldenGate deployment to a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AssignUnassignDeployment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedDeployment. The AssignedDeployment + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedDeployment]: + """Assign a GoldenGate deployment to a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedDeployment. The AssignedDeployment + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: Union[_models.AssignUnassignDeployment, _types.AssignUnassignDeployment, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedDeployment]: + """Assign a GoldenGate deployment to a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Is either a AssignUnassignDeployment type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignDeployment or + ~azure.mgmt.oracledatabase.types.AssignUnassignDeployment or IO[bytes] + :return: An instance of AsyncLROPoller that returns AssignedDeployment. The AssignedDeployment + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AssignedDeployment] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._assign_deployment_initial( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AssignedDeployment, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AssignedDeployment].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AssignedDeployment]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _unassign_deployment_initial( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: Union[_models.AssignUnassignDeployment, _types.AssignUnassignDeployment, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_connections_unassign_deployment_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: _models.AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedDeployment]: + """Unassign a GoldenGate deployment from a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignDeployment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedDeployment. The AssignedDeployment + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: _types.AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedDeployment]: + """Unassign a GoldenGate deployment from a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AssignUnassignDeployment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedDeployment. The AssignedDeployment + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedDeployment]: + """Unassign a GoldenGate deployment from a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedDeployment. The AssignedDeployment + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_unassign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: Union[_models.AssignUnassignDeployment, _types.AssignUnassignDeployment, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedDeployment]: + """Unassign a GoldenGate deployment from a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Is either a AssignUnassignDeployment type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignDeployment or + ~azure.mgmt.oracledatabase.types.AssignUnassignDeployment or IO[bytes] + :return: An instance of AsyncLROPoller that returns AssignedDeployment. The AssignedDeployment + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AssignedDeployment] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._unassign_deployment_initial( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AssignedDeployment, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AssignedDeployment].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AssignedDeployment]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_assigned_deployments_by_parent( + self, resource_group_name: str, golden_gate_connection_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.AssignedDeployment"]: + """List assigned deployments by GoldenGate connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :return: An iterator like instance of AssignedDeployment + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.AssignedDeployment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_golden_gate_connections_list_assigned_deployments_by_parent_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AssignedDeployment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "assignment_id", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def get_assigned_deployment( + self, resource_group_name: str, golden_gate_connection_name: str, assignment_id: str, **kwargs: Any + ) -> _models.AssignedDeployment: + """Get assigned deployment by GoldenGate connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param assignment_id: Assigned Deployment assignment OCID. Required. + :type assignment_id: str + :return: AssignedDeployment. The AssignedDeployment is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AssignedDeployment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.AssignedDeployment] = kwargs.pop("cls", None) + + _request = build_golden_gate_connections_get_assigned_deployment_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + assignment_id=assignment_id, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AssignedDeployment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class GoldenGateDeploymentsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.aio.OracleDatabaseMgmtClient`'s + :attr:`golden_gate_deployments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={"2026-03-01-preview": ["api_version", "subscription_id", "accept"]}, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_by_subscription(self, **kwargs: Any) -> AsyncItemPaged["_models.GoldenGateDeployment"]: + """List GoldenGateDeployment resources by subscription ID. + + :return: An iterator like instance of GoldenGateDeployment + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.GoldenGateDeployment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_golden_gate_deployments_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GoldenGateDeployment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _create_or_update_initial( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: Union[_models.GoldenGateDeployment, _types.GoldenGateDeployment, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(resource, (IOBase, bytes)): + _content = resource + else: + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_deployments_create_or_update_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: _models.GoldenGateDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateDeployment]: + """Create a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.GoldenGateDeployment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateDeployment. The + GoldenGateDeployment is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: _types.GoldenGateDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateDeployment]: + """Create a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.GoldenGateDeployment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateDeployment. The + GoldenGateDeployment is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateDeployment]: + """Create a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateDeployment. The + GoldenGateDeployment is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: Union[_models.GoldenGateDeployment, _types.GoldenGateDeployment, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateDeployment]: + """Create a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param resource: Resource create parameters. Is either a GoldenGateDeployment type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.GoldenGateDeployment or + ~azure.mgmt.oracledatabase.types.GoldenGateDeployment or IO[bytes] + :return: An instance of AsyncLROPoller that returns GoldenGateDeployment. The + GoldenGateDeployment is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GoldenGateDeployment] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._create_or_update_initial( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + resource=resource, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.GoldenGateDeployment, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.GoldenGateDeployment].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.GoldenGateDeployment]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def get( + self, resource_group_name: str, golden_gate_deployment_name: str, **kwargs: Any + ) -> _models.GoldenGateDeployment: + """Get a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :return: GoldenGateDeployment. The GoldenGateDeployment is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.GoldenGateDeployment + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.GoldenGateDeployment] = kwargs.pop("cls", None) + + _request = build_golden_gate_deployments_get_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GoldenGateDeployment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _update_initial( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: Union[_models.GoldenGateDeploymentUpdate, _types.GoldenGateDeploymentUpdate, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(properties, (IOBase, bytes)): + _content = properties + else: + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_deployments_update_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: _models.GoldenGateDeploymentUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateDeployment]: + """Update a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.GoldenGateDeploymentUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateDeployment. The + GoldenGateDeployment is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: _types.GoldenGateDeploymentUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateDeployment]: + """Update a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.GoldenGateDeploymentUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateDeployment. The + GoldenGateDeployment is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateDeployment]: + """Update a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns GoldenGateDeployment. The + GoldenGateDeployment is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + properties: Union[_models.GoldenGateDeploymentUpdate, _types.GoldenGateDeploymentUpdate, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.GoldenGateDeployment]: + """Update a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param properties: The resource properties to be updated. Is either a + GoldenGateDeploymentUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.GoldenGateDeploymentUpdate or + ~azure.mgmt.oracledatabase.types.GoldenGateDeploymentUpdate or IO[bytes] + :return: An instance of AsyncLROPoller that returns GoldenGateDeployment. The + GoldenGateDeployment is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GoldenGateDeployment] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._update_initial( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + properties=properties, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.GoldenGateDeployment, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.GoldenGateDeployment].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.GoldenGateDeployment]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _delete_initial( + self, resource_group_name: str, golden_gate_deployment_name: str, **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + _request = build_golden_gate_deployments_delete_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_delete( + self, resource_group_name: str, golden_gate_deployment_name: str, **kwargs: Any + ) -> AsyncLROPoller[None]: + """Delete a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :return: An instance of AsyncLROPoller that returns None + :rtype: ~azure.core.polling.AsyncLROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._delete_initial( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={"2026-03-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.GoldenGateDeployment"]: + """List GoldenGateDeployment resources by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of GoldenGateDeployment + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.GoldenGateDeployment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_golden_gate_deployments_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GoldenGateDeployment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _assign_connection_initial( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: Union[_models.AssignUnassignConnection, _types.AssignUnassignConnection, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_deployments_assign_connection_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: _models.AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedConnection]: + """Assign a GoldenGate connection to a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedConnection. The AssignedConnection + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: _types.AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedConnection]: + """Assign a GoldenGate connection to a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AssignUnassignConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedConnection. The AssignedConnection + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedConnection]: + """Assign a GoldenGate connection to a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedConnection. The AssignedConnection + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_assign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: Union[_models.AssignUnassignConnection, _types.AssignUnassignConnection, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedConnection]: + """Assign a GoldenGate connection to a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Is either a AssignUnassignConnection type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignConnection or + ~azure.mgmt.oracledatabase.types.AssignUnassignConnection or IO[bytes] + :return: An instance of AsyncLROPoller that returns AssignedConnection. The AssignedConnection + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AssignedConnection] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._assign_connection_initial( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AssignedConnection, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AssignedConnection].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AssignedConnection]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def _unassign_connection_initial( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: Union[_models.AssignUnassignConnection, _types.AssignUnassignConnection, IO[bytes]], + **kwargs: Any + ) -> AsyncIterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_deployments_unassign_connection_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + async def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: _models.AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedConnection]: + """Unassign a GoldenGate connection from a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedConnection. The AssignedConnection + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: _types.AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedConnection]: + """Unassign a GoldenGate connection from a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AssignUnassignConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedConnection. The AssignedConnection + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + async def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedConnection]: + """Unassign a GoldenGate connection from a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of AsyncLROPoller that returns AssignedConnection. The AssignedConnection + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: Union[_models.AssignUnassignConnection, _types.AssignUnassignConnection, IO[bytes]], + **kwargs: Any + ) -> AsyncLROPoller[_models.AssignedConnection]: + """Unassign a GoldenGate connection from a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Is either a AssignUnassignConnection type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignConnection or + ~azure.mgmt.oracledatabase.types.AssignUnassignConnection or IO[bytes] + :return: An instance of AsyncLROPoller that returns AssignedConnection. The AssignedConnection + is compatible with MutableMapping + :rtype: + ~azure.core.polling.AsyncLROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AssignedConnection] = kwargs.pop("cls", None) + polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = await self._unassign_connection_initial( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + await raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AssignedConnection, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: AsyncPollingMethod = cast( + AsyncPollingMethod, AsyncARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) + else: + polling_method = polling + if cont_token: + return AsyncLROPoller[_models.AssignedConnection].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return AsyncLROPoller[_models.AssignedConnection]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_assigned_connections_by_parent( + self, resource_group_name: str, golden_gate_deployment_name: str, **kwargs: Any + ) -> AsyncItemPaged["_models.AssignedConnection"]: + """List assigned connections by GoldenGate deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :return: An iterator like instance of AssignedConnection + :rtype: + ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.AssignedConnection]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_golden_gate_deployments_list_assigned_connections_by_parent_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + async def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AssignedConnection], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, AsyncList(list_of_elem) + + async def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return AsyncItemPaged(get_next, extract_data) + + @distributed_trace_async + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "assignment_id", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + async def get_assigned_connection( + self, resource_group_name: str, golden_gate_deployment_name: str, assignment_id: str, **kwargs: Any + ) -> _models.AssignedConnection: + """Get assigned connection by GoldenGate deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param assignment_id: Assigned Connection assignment OCID. Required. + :type assignment_id: str + :return: AssignedConnection. The AssignedConnection is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AssignedConnection + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.AssignedConnection] = kwargs.pop("cls", None) + + _request = build_golden_gate_deployments_get_assigned_connection_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + assignment_id=assignment_id, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + await response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AssignedConnection, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/_patch.py index 8bcb627aa475..b6400f50d7ce 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/_patch.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/aio/operations/_patch.py @@ -7,6 +7,7 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ + from typing import List __all__: List[str] = [] # Add all objects you want publicly available to users at this package level diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/__init__.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/__init__.py index b800d96121f8..e4e30123d181 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/__init__.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/__init__.py @@ -18,6 +18,10 @@ AddRemoveDbNode, AllConnectionStringType, ApexDetailsType, + AssignUnassignConnection, + AssignUnassignDeployment, + AssignedConnection, + AssignedDeployment, AutonomousDatabase, AutonomousDatabaseBackup, AutonomousDatabaseBackupProperties, @@ -40,6 +44,7 @@ AutonomousDbVersion, AutonomousDbVersionProperties, AzureSubscriptions, + BackupScheduleType, CloudAccountDetails, CloudExadataInfrastructure, CloudExadataInfrastructureProperties, @@ -50,10 +55,15 @@ CloudVmClusterUpdate, CloudVmClusterUpdateProperties, ConfigureExascaleCloudExadataInfrastructureDetails, + ConnectionBaseProperties, ConnectionStringType, ConnectionUrlType, CustomerContact, DataCollectionOptions, + DatabaseEdition, + DatabaseEditionProperties, + DatabaseSystemShape, + DatabaseSystemShapeProperties, DayOfWeek, DayOfWeekUpdate, DbActionResponse, @@ -76,6 +86,8 @@ DbVersion, DbVersionProperties, DefinedFileSystemConfiguration, + DeploymentConnectionAssignmentProperties, + DeploymentProperties, DisasterRecoveryConfigurationDetails, DnsForwardingRule, DnsPrivateView, @@ -108,16 +120,30 @@ GiMinorVersionProperties, GiVersion, GiVersionProperties, + GoldenGateConnection, + GoldenGateConnectionUpdate, + GoldenGateConnectionUpdateProperties, + GoldenGateDeployment, + GoldenGateDeploymentUpdate, + GoldenGateDeploymentUpdateProperties, + GroupToRolesMappingDetails, + KafkaBootstrapServer, + KafkaConnectionDetails, LongTermBackUpScheduleDetails, + MaintenanceConfigurationType, MaintenanceWindow, + MaintenanceWindowType, + MicrosoftFabricConnectionDetails, Month, NetworkAnchor, NetworkAnchorProperties, NetworkAnchorUpdate, NetworkAnchorUpdateProperties, NsgCidr, + OggDeploymentDetails, Operation, OperationDisplay, + OracleConnectionDetails, OracleSubscription, OracleSubscriptionProperties, OracleSubscriptionUpdate, @@ -129,6 +155,7 @@ PrivateIpAddressProperties, PrivateIpAddressesFilter, ProfileType, + ProximityPlacementGroup, ProxyResource, RemoveVirtualMachineFromExadbVmClusterDetails, Resource, @@ -156,14 +183,19 @@ AutonomousDatabaseLifecycleState, AutonomousMaintenanceScheduleType, AzureResourceProvisioningState, + BackupDestinationType, BaseDbSystemShapes, + CategoryType, CloneType, CloudAccountProvisioningState, CloudExadataInfrastructureLifecycleState, CloudVmClusterLifecycleState, ComputeModel, + ConnectionLifecycleState, + ConnectionType, ConsumerGroup, CreatedByType, + CredentialType, DataBaseType, DataSafeStatusType, DatabaseEditionType, @@ -176,6 +208,8 @@ DbSystemDatabaseEditionType, DbSystemLifecycleState, DbSystemSourceType, + DeploymentLifecycleState, + DeploymentType, DisasterRecoveryType, DiskRedundancy, DiskRedundancyType, @@ -184,29 +218,39 @@ ExadataVmClusterStorageManagementType, ExadbVmClusterLifecycleState, ExascaleDbStorageVaultLifecycleState, + FrequencyType, GenerateType, + GiMinorVersionSortOrder, + GoldenGateConnectionAssignmentLifecycleState, GridImageType, HardwareType, HostFormatType, Intent, IormLifecycleState, + KafkaConnectionTechnologyType, LicenseModel, + MicrosoftFabricConnectionTechnologyType, MonthName, Objective, OpenModeType, OperationsInsightsStatusType, + OracleConnectionTechnologyType, OracleSubscriptionProvisioningState, Origin, PatchingMode, PermissionLevelType, Preference, ProtocolType, + ProximityPlacementGroupEntityType, RefreshableModelType, RefreshableStatusType, RepeatCadenceType, ResourceProvisioningState, RoleType, + RoutingMethod, + SessionMode, SessionModeType, + SetupType, ShapeAttribute, ShapeFamily, ShapeFamilyType, @@ -229,6 +273,10 @@ "AddRemoveDbNode", "AllConnectionStringType", "ApexDetailsType", + "AssignUnassignConnection", + "AssignUnassignDeployment", + "AssignedConnection", + "AssignedDeployment", "AutonomousDatabase", "AutonomousDatabaseBackup", "AutonomousDatabaseBackupProperties", @@ -251,6 +299,7 @@ "AutonomousDbVersion", "AutonomousDbVersionProperties", "AzureSubscriptions", + "BackupScheduleType", "CloudAccountDetails", "CloudExadataInfrastructure", "CloudExadataInfrastructureProperties", @@ -261,10 +310,15 @@ "CloudVmClusterUpdate", "CloudVmClusterUpdateProperties", "ConfigureExascaleCloudExadataInfrastructureDetails", + "ConnectionBaseProperties", "ConnectionStringType", "ConnectionUrlType", "CustomerContact", "DataCollectionOptions", + "DatabaseEdition", + "DatabaseEditionProperties", + "DatabaseSystemShape", + "DatabaseSystemShapeProperties", "DayOfWeek", "DayOfWeekUpdate", "DbActionResponse", @@ -287,6 +341,8 @@ "DbVersion", "DbVersionProperties", "DefinedFileSystemConfiguration", + "DeploymentConnectionAssignmentProperties", + "DeploymentProperties", "DisasterRecoveryConfigurationDetails", "DnsForwardingRule", "DnsPrivateView", @@ -319,16 +375,30 @@ "GiMinorVersionProperties", "GiVersion", "GiVersionProperties", + "GoldenGateConnection", + "GoldenGateConnectionUpdate", + "GoldenGateConnectionUpdateProperties", + "GoldenGateDeployment", + "GoldenGateDeploymentUpdate", + "GoldenGateDeploymentUpdateProperties", + "GroupToRolesMappingDetails", + "KafkaBootstrapServer", + "KafkaConnectionDetails", "LongTermBackUpScheduleDetails", + "MaintenanceConfigurationType", "MaintenanceWindow", + "MaintenanceWindowType", + "MicrosoftFabricConnectionDetails", "Month", "NetworkAnchor", "NetworkAnchorProperties", "NetworkAnchorUpdate", "NetworkAnchorUpdateProperties", "NsgCidr", + "OggDeploymentDetails", "Operation", "OperationDisplay", + "OracleConnectionDetails", "OracleSubscription", "OracleSubscriptionProperties", "OracleSubscriptionUpdate", @@ -340,6 +410,7 @@ "PrivateIpAddressProperties", "PrivateIpAddressesFilter", "ProfileType", + "ProximityPlacementGroup", "ProxyResource", "RemoveVirtualMachineFromExadbVmClusterDetails", "Resource", @@ -364,14 +435,19 @@ "AutonomousDatabaseLifecycleState", "AutonomousMaintenanceScheduleType", "AzureResourceProvisioningState", + "BackupDestinationType", "BaseDbSystemShapes", + "CategoryType", "CloneType", "CloudAccountProvisioningState", "CloudExadataInfrastructureLifecycleState", "CloudVmClusterLifecycleState", "ComputeModel", + "ConnectionLifecycleState", + "ConnectionType", "ConsumerGroup", "CreatedByType", + "CredentialType", "DataBaseType", "DataSafeStatusType", "DatabaseEditionType", @@ -384,6 +460,8 @@ "DbSystemDatabaseEditionType", "DbSystemLifecycleState", "DbSystemSourceType", + "DeploymentLifecycleState", + "DeploymentType", "DisasterRecoveryType", "DiskRedundancy", "DiskRedundancyType", @@ -392,29 +470,39 @@ "ExadataVmClusterStorageManagementType", "ExadbVmClusterLifecycleState", "ExascaleDbStorageVaultLifecycleState", + "FrequencyType", "GenerateType", + "GiMinorVersionSortOrder", + "GoldenGateConnectionAssignmentLifecycleState", "GridImageType", "HardwareType", "HostFormatType", "Intent", "IormLifecycleState", + "KafkaConnectionTechnologyType", "LicenseModel", + "MicrosoftFabricConnectionTechnologyType", "MonthName", "Objective", "OpenModeType", "OperationsInsightsStatusType", + "OracleConnectionTechnologyType", "OracleSubscriptionProvisioningState", "Origin", "PatchingMode", "PermissionLevelType", "Preference", "ProtocolType", + "ProximityPlacementGroupEntityType", "RefreshableModelType", "RefreshableStatusType", "RepeatCadenceType", "ResourceProvisioningState", "RoleType", + "RoutingMethod", + "SessionMode", "SessionModeType", + "SetupType", "ShapeAttribute", "ShapeFamily", "ShapeFamilyType", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_enums.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_enums.py index 3d82ed610d41..79f62e2c93d4 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_enums.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_enums.py @@ -1,3 +1,4 @@ +# pylint: disable=too-many-lines # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -23,104 +24,104 @@ class AddSubscriptionOperationState(str, Enum, metaclass=CaseInsensitiveEnumMeta """Add Subscription Operation state enum.""" SUCCEEDED = "Succeeded" - """Succeeded - State when Add Subscription operation succeeded""" + """Succeeded - State when Add Subscription operation succeeded.""" UPDATING = "Updating" - """Updating - State when Add Subscription operation is being Updated""" + """Updating - State when Add Subscription operation is being Updated.""" FAILED = "Failed" - """Failed - State when Add Subscription operation failed""" + """Failed - State when Add Subscription operation failed.""" class AutonomousDatabaseBackupLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Autonomous database backup lifecycle state enum.""" CREATING = "Creating" - """AutonomousDatabase backup is creating""" + """AutonomousDatabase backup is creating.""" ACTIVE = "Active" - """AutonomousDatabase backup is active""" + """AutonomousDatabase backup is active.""" DELETING = "Deleting" - """AutonomousDatabase backup is deleting""" + """AutonomousDatabase backup is deleting.""" FAILED = "Failed" - """AutonomousDatabase backup is failed""" + """AutonomousDatabase backup is failed.""" UPDATING = "Updating" - """AutonomousDatabase backup is updating""" + """AutonomousDatabase backup is updating.""" class AutonomousDatabaseBackupType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Autonomous database backup type enum.""" INCREMENTAL = "Incremental" - """Incremental backup""" + """Incremental backup.""" FULL = "Full" - """Full backup""" + """Full backup.""" LONG_TERM = "LongTerm" - """LongTerm backup""" + """LongTerm backup.""" class AutonomousDatabaseLifecycleActionEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Autonomous Database Action Enum.""" START = "Start" - """Start Autonomous Database""" + """Start Autonomous Database.""" STOP = "Stop" - """Stop Autonomous Database""" + """Stop Autonomous Database.""" RESTART = "Restart" - """Restart Autonomous Database""" + """Restart Autonomous Database.""" class AutonomousDatabaseLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Autonomous database lifecycle state enum.""" PROVISIONING = "Provisioning" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" AVAILABLE = "Available" - """Indicates that resource in Available state""" + """Indicates that resource in Available state.""" STOPPING = "Stopping" - """Indicates that resource in Stopping state""" + """Indicates that resource in Stopping state.""" STOPPED = "Stopped" - """Indicates that resource in Stopped state""" + """Indicates that resource in Stopped state.""" STARTING = "Starting" - """Indicates that resource in Starting state""" + """Indicates that resource in Starting state.""" TERMINATING = "Terminating" - """Indicates that resource in Terminating state""" + """Indicates that resource in Terminating state.""" TERMINATED = "Terminated" - """Indicates that resource in Terminated state""" + """Indicates that resource in Terminated state.""" UNAVAILABLE = "Unavailable" - """Indicates that resource in Unavailable state""" + """Indicates that resource in Unavailable state.""" RESTORE_IN_PROGRESS = "RestoreInProgress" - """Indicates that resource in RestoreInProgress state""" + """Indicates that resource in RestoreInProgress state.""" RESTORE_FAILED = "RestoreFailed" - """Indicates that resource in RestoreFailed state""" + """Indicates that resource in RestoreFailed state.""" BACKUP_IN_PROGRESS = "BackupInProgress" - """Indicates that resource in BackupInProgress state""" + """Indicates that resource in BackupInProgress state.""" SCALE_IN_PROGRESS = "ScaleInProgress" - """Indicates that resource in ScaleInProgress state""" + """Indicates that resource in ScaleInProgress state.""" AVAILABLE_NEEDS_ATTENTION = "AvailableNeedsAttention" - """Indicates that resource is available but needs attention""" + """Indicates that resource is available but needs attention.""" UPDATING = "Updating" - """Indicates that resource in Updating state""" + """Indicates that resource in Updating state.""" MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" - """Indicates that resource maintenance in progress state""" + """Indicates that resource maintenance in progress state.""" RESTARTING = "Restarting" - """Indicates that resource in Restarting state""" + """Indicates that resource in Restarting state.""" RECREATING = "Recreating" - """Indicates that resource in Recreating state""" + """Indicates that resource in Recreating state.""" ROLE_CHANGE_IN_PROGRESS = "RoleChangeInProgress" - """Indicates that resource role change in progress state""" + """Indicates that resource role change in progress state.""" UPGRADING = "Upgrading" - """Indicates that resource in Upgrading state""" + """Indicates that resource in Upgrading state.""" INACCESSIBLE = "Inaccessible" - """IIndicates that resource in Inaccessible state""" + """IIndicates that resource in Inaccessible state.""" STANDBY = "Standby" - """Indicates that resource in Standby state""" + """Indicates that resource in Standby state.""" class AutonomousMaintenanceScheduleType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Autonomous database maintenance schedule type enum.""" EARLY = "Early" - """Early maintenance schedule""" + """Early maintenance schedule.""" REGULAR = "Regular" - """Regular maintenance schedule""" + """Regular maintenance schedule.""" class AzureResourceProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -133,96 +134,196 @@ class AzureResourceProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMet CANCELED = "Canceled" """Resource creation was canceled.""" PROVISIONING = "Provisioning" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" + + +class BackupDestinationType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Backup destination type enum.""" + + OCI = "OCI" + """Store backups in OCI object storage.""" + AZURE = "AZURE" + """Store backups in Azure Blob Storage.""" class BaseDbSystemShapes(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Allowed values for BaseDb System Shapes.""" VM_STANDARD_X86 = "VM.Standard.x86" - """Vm Standard X86""" + """Vm Standard X86.""" + VM_BASE_DBX86 = "VM.BaseDB.x86" + """Vm Standard X86.""" + + +class CategoryType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Category.""" + + DATA_REPLICATION = "DataReplication" + """Data replication.""" + STREAM_ANALYTICS = "StreamAnalytics" + """Stream analytics.""" + DATA_TRANSFORMS = "DataTransforms" + """Data transforms.""" class CloneType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Clone type enum.""" FULL = "Full" - """Full clone""" + """Full clone.""" METADATA = "Metadata" - """Metadata only""" + """Metadata only.""" class CloudAccountProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """CloudAccountProvisioningState enum.""" PENDING = "Pending" - """Pending - Initial state when Oracle cloud account is not configured""" + """Pending - Initial state when Oracle cloud account is not configured.""" PROVISIONING = "Provisioning" - """Provisioning - State when Oracle cloud account is being provisioned""" + """Provisioning - State when Oracle cloud account is being provisioned.""" AVAILABLE = "Available" - """Available - State when Oracle cloud account cloud linking is complete and it is available""" + """Available - State when Oracle cloud account cloud linking is complete and it is available.""" class CloudExadataInfrastructureLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """CloudExadataInfrastructureLifecycleState enum.""" PROVISIONING = "Provisioning" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" AVAILABLE = "Available" - """Indicates that resource in Available state""" + """Indicates that resource in Available state.""" UPDATING = "Updating" - """Indicates that resource in Updating state""" + """Indicates that resource in Updating state.""" TERMINATING = "Terminating" - """Indicates that resource in Terminating state""" + """Indicates that resource in Terminating state.""" TERMINATED = "Terminated" - """Indicates that resource in Terminated state""" + """Indicates that resource in Terminated state.""" MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" - """Indicates that resource maintenance in progress state""" + """Indicates that resource maintenance in progress state.""" FAILED = "Failed" - """Indicates that resource in Failed state""" + """Indicates that resource in Failed state.""" class CloudVmClusterLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Cloud VM Cluster lifecycle state enum.""" PROVISIONING = "Provisioning" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" AVAILABLE = "Available" - """Indicates that resource in Available state""" + """Indicates that resource in Available state.""" UPDATING = "Updating" - """Indicates that resource in Updating state""" + """Indicates that resource in Updating state.""" TERMINATING = "Terminating" - """Indicates that resource in Terminating state""" + """Indicates that resource in Terminating state.""" TERMINATED = "Terminated" - """Indicates that resource in Terminated state""" + """Indicates that resource in Terminated state.""" MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" - """Indicates that resource Maintenance in progress state""" + """Indicates that resource Maintenance in progress state.""" FAILED = "Failed" - """Indicates that resource in Failed state""" + """Indicates that resource in Failed state.""" class ComputeModel(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Compute model enum.""" ECPU = "ECPU" - """ECPU model type""" + """ECPU model type.""" OCPU = "OCPU" - """OCPU model type""" + """OCPU model type.""" + + +class ConnectionLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Possible lifecycle states for connection.""" + + CREATING = "CREATING" + """Indicates that the resource is in creating state.""" + UPDATING = "UPDATING" + """Indicates that the resource is in updating state.""" + ACTIVE = "ACTIVE" + """Indicates that the resource is in active state.""" + DELETING = "DELETING" + """Indicates that the resource is in deleting state.""" + DELETED = "DELETED" + """Indicates that the resource is in deleted state.""" + FAILED = "FAILED" + """Indicates that the resource is in failed state.""" + + +class ConnectionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Known values for connection type.""" + + GOLDEN_GATE = "GOLDENGATE" + """A GoldenGate Connection.""" + KAFKA = "KAFKA" + """A Kafka Connection.""" + KAFKA_SCHEMA_REGISTRY = "KAFKA_SCHEMA_REGISTRY" + """A Kafka (e.g. Confluent) Schema Registry Connection.""" + MY_SQL = "MYSQL" + """A MySQL Connection.""" + JAVA_MESSAGE_SERVICE = "JAVA_MESSAGE_SERVICE" + """A Java Message Service Connection.""" + MICROSOFT_SQL_SERVER = "MICROSOFT_SQLSERVER" + """A Microsoft SQL Server Connection.""" + OCI_OBJECT_STORAGE = "OCI_OBJECT_STORAGE" + """An OCI Object Storage Connection.""" + ORACLE = "ORACLE" + """An Oracle Database Connection.""" + AZURE_DATA_LAKE_STORAGE = "AZURE_DATA_LAKE_STORAGE" + """An Azure Data Lake Storage Connection.""" + POSTGRE_SQL = "POSTGRESQL" + """A PostgreSQL Database Connection.""" + AZURE_SYNAPSE_ANALYTICS = "AZURE_SYNAPSE_ANALYTICS" + """An Azure Synapse Analytics Connection.""" + SNOWFLAKE = "SNOWFLAKE" + """A Snowflake Connection.""" + AMAZON_S3 = "AMAZON_S3" + """An Amazon S3 Connection.""" + HDFS = "HDFS" + """A Hadoop Distributed File System Connection.""" + ORACLE_NO_SQL = "ORACLE_NOSQL" + """An Oracle NoSQL Connection.""" + MONGO_DB_CONNECTION = "MONGODB" + """A MongoDB Connection.""" + AMAZON_KINESIS = "AMAZON_KINESIS" + """An Amazon Kinesis Connection.""" + AMAZON_REDSHIFT = "AMAZON_REDSHIFT" + """An Amazon Redshift Connection.""" + DB2_CONNECTION = "DB2" + """A DB2 Connection.""" + REDIS = "REDIS" + """A Redis Database Connection.""" + ELASTICSEARCH = "ELASTICSEARCH" + """An Elasticsearch Connection.""" + GENERIC = "GENERIC" + """A Generic Connection.""" + GOOGLE_CLOUD_STORAGE = "GOOGLE_CLOUD_STORAGE" + """A Google Cloud Storage Connection.""" + GOOGLE_BIG_QUERY = "GOOGLE_BIGQUERY" + """A Google BigQuery Connection.""" + DATABRICKS = "DATABRICKS" + """A Databricks Connection.""" + GOOGLE_PUB_SUB = "GOOGLE_PUBSUB" + """A Google PubSub Connection.""" + MICROSOFT_FABRIC = "MICROSOFT_FABRIC" + """A Microsoft Fabric Connection.""" + ICEBERG = "ICEBERG" + """An Iceberg Connection.""" class ConsumerGroup(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Consumer group enum.""" HIGH = "High" - """High group""" + """High group.""" MEDIUM = "Medium" - """Medium group""" + """Medium group.""" LOW = "Low" - """Low group""" + """Low group.""" TP = "Tp" - """TP group""" + """TP group.""" TPURGENT = "Tpurgent" - """TPurgent group""" + """TPurgent group.""" class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -238,173 +339,182 @@ class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The entity was created by a key.""" +class CredentialType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Credential type.""" + + GOLDEN_GATE = "GoldenGate" + """The GoldenGate credential.""" + IAM = "IAM" + """The IAM credential.""" + + class DatabaseEditionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Database edition type enum.""" STANDARD_EDITION = "StandardEdition" - """Standard edition""" + """Standard edition.""" ENTERPRISE_EDITION = "EnterpriseEdition" - """Enterprise edition""" + """Enterprise edition.""" class DataBaseType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Database type enum.""" REGULAR = "Regular" - """Regular DB""" + """Regular DB.""" CLONE = "Clone" - """Clone DB""" + """Clone DB.""" CLONE_FROM_BACKUP_TIMESTAMP = "CloneFromBackupTimestamp" - """Clone DB from backup timestamp""" + """Clone DB from backup timestamp.""" CROSS_REGION_DISASTER_RECOVERY = "CrossRegionDisasterRecovery" - """Cross Region Disaster Recovery""" + """Cross Region Disaster Recovery.""" class DataSafeStatusType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """DataSafe status type enum.""" REGISTERING = "Registering" - """Registering status""" + """Registering status.""" REGISTERED = "Registered" - """Registered status""" + """Registered status.""" DEREGISTERING = "Deregistering" - """Deregistering status""" + """Deregistering status.""" NOT_REGISTERED = "NotRegistered" - """NotRegistered status""" + """NotRegistered status.""" FAILED = "Failed" - """Failed status""" + """Failed status.""" class DayOfWeekName(str, Enum, metaclass=CaseInsensitiveEnumMeta): """DayOfWeekName enum.""" MONDAY = "Monday" - """Monday value""" + """Monday value.""" TUESDAY = "Tuesday" - """Tuesday value""" + """Tuesday value.""" WEDNESDAY = "Wednesday" - """Wednesday value""" + """Wednesday value.""" THURSDAY = "Thursday" - """Thursday value""" + """Thursday value.""" FRIDAY = "Friday" - """Friday value""" + """Friday value.""" SATURDAY = "Saturday" - """Saturday value""" + """Saturday value.""" SUNDAY = "Sunday" - """Sunday value""" + """Sunday value.""" class DbNodeActionEnum(str, Enum, metaclass=CaseInsensitiveEnumMeta): """DbNode action enum.""" START = "Start" - """Start DbNode""" + """Start DbNode.""" STOP = "Stop" - """Stop DbNode""" + """Stop DbNode.""" SOFT_RESET = "SoftReset" - """Soft reset DbNode""" + """Soft reset DbNode.""" RESET = "Reset" - """Reset DbNode""" + """Reset DbNode.""" class DbNodeMaintenanceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The type of database node maintenance.""" VMDB_REBOOT_MIGRATION = "VmdbRebootMigration" - """VMDB reboot migration maintenance type""" + """VMDB reboot migration maintenance type.""" class DbNodeProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """DnNode provisioning state enum.""" PROVISIONING = "Provisioning" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" AVAILABLE = "Available" - """Indicates that resource in Available state""" + """Indicates that resource in Available state.""" UPDATING = "Updating" - """Indicates that resource in Updating state""" + """Indicates that resource in Updating state.""" STOPPING = "Stopping" - """Indicates that resource in Stopping state""" + """Indicates that resource in Stopping state.""" STOPPED = "Stopped" - """Indicates that resource in Stopped state""" + """Indicates that resource in Stopped state.""" STARTING = "Starting" - """Indicates that resource in Starting state""" + """Indicates that resource in Starting state.""" TERMINATING = "Terminating" - """Indicates that resource in Terminating state""" + """Indicates that resource in Terminating state.""" TERMINATED = "Terminated" - """Indicates that resource in Terminated state""" + """Indicates that resource in Terminated state.""" FAILED = "Failed" - """Indicates that resource in Failed state""" + """Indicates that resource in Failed state.""" class DbServerPatchingStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): """DB Server patching status enum.""" SCHEDULED = "Scheduled" - """Patching scheduled""" + """Patching scheduled.""" MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" - """Patching in progress""" + """Patching in progress.""" FAILED = "Failed" - """Patching failed""" + """Patching failed.""" COMPLETE = "Complete" - """Patching completed""" + """Patching completed.""" class DbServerProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """DbServerProvisioningState enum.""" CREATING = "Creating" - """Indicates that resource in Creating state""" + """Indicates that resource in Creating state.""" AVAILABLE = "Available" - """Indicates that resource in Available state""" + """Indicates that resource in Available state.""" UNAVAILABLE = "Unavailable" - """Indicates that resource in Unavailable state""" + """Indicates that resource in Unavailable state.""" DELETING = "Deleting" - """Indicates that resource in Deleting state""" + """Indicates that resource in Deleting state.""" DELETED = "Deleted" - """Indicates that resource in Deleted state""" + """Indicates that resource in Deleted state.""" MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" - """Indicates that resource maintenance in progress state""" + """Indicates that resource maintenance in progress state.""" class DbSystemDatabaseEditionType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Database edition type enum.""" STANDARD_EDITION = "StandardEdition" - """Standard edition""" + """Standard edition.""" ENTERPRISE_EDITION = "EnterpriseEdition" - """Enterprise edition""" + """Enterprise edition.""" ENTERPRISE_EDITION_HIGH_PERFORMANCE = "EnterpriseEditionHighPerformance" - """Enterprise edition high performance""" + """Enterprise edition high performance.""" ENTERPRISE_EDITION_EXTREME = "EnterpriseEditionExtreme" - """Enterprise edition extreme""" + """Enterprise edition extreme.""" ENTERPRISE_EDITION_DEVELOPER = "EnterpriseEditionDeveloper" - """Enterprise edition developer""" + """Enterprise edition developer.""" class DbSystemLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """DB System lifecycle state enum.""" PROVISIONING = "Provisioning" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" AVAILABLE = "Available" - """Indicates that resource in Available state""" + """Indicates that resource in Available state.""" UPDATING = "Updating" - """Indicates that resource in Updating state""" + """Indicates that resource in Updating state.""" TERMINATING = "Terminating" - """Indicates that resource in Terminating state""" + """Indicates that resource in Terminating state.""" TERMINATED = "Terminated" - """Indicates that resource in Terminated state""" + """Indicates that resource in Terminated state.""" FAILED = "Failed" - """Indicates that resource in Failed state""" + """Indicates that resource in Failed state.""" MIGRATED = "Migrated" - """Indicates that resource is Migrated state""" + """Indicates that resource is Migrated state.""" MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" - """Indicates that resource maintenance in progress state""" + """Indicates that resource maintenance in progress state.""" NEEDS_ATTENTION = "NeedsAttention" - """Indicates that resource needs attention state""" + """Indicates that resource needs attention state.""" UPGRADING = "Upgrading" - """Indicates that resource in Upgrading state""" + """Indicates that resource in Upgrading state.""" class DbSystemSourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -414,22 +524,78 @@ class DbSystemSourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """for creating a new database.""" +class DeploymentLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Deployment lifecycle state enum.""" + + CREATING = "Creating" + """Indicates that the resource is in creating state.""" + UPDATING = "Updating" + """Indicates that the resource is in updating state.""" + ACTIVE = "Active" + """Indicates that the resource is in active state.""" + IN_ACTIVE = "InActive" + """Indicates that the resource is in inactive state.""" + DELETING = "Deleting" + """Indicates that the resource is in deleting state.""" + DELETED = "Deleted" + """Indicates that the resource is in deleted state.""" + FAILED = "Failed" + """Indicates that the resource is in failed state.""" + NEEDS_ATTENTION = "Needs Attention" + """Indicates that the resource is in needs-attention state.""" + IN_PROGRESS = "In Progress" + """Indicates that the resource is in in-progress state.""" + CANCELING = "Canceling" + """Indicates that the resource is in canceling state.""" + CANCELED = "Canceled" + """Indicates that the resource is in canceled state.""" + SUCCEEDED = "Succeeded" + """Indicates that the resource is in succeeded state.""" + WAITING = "Waiting" + """Indicates that the resource is in waiting state.""" + + +class DeploymentType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Deployment type enum.""" + + OGG = "Ogg" + """The OGG deployment.""" + DATABASE_ORACLE = "DatabaseOracle" + """The Oracle database deployment.""" + BIG_DATA = "BigData" + """The big data deployment.""" + DATABASE_MICROSOFT_SQL_SERVER = "DatabaseMicrosoftSQLServer" + """The Microsoft SQL Server database deployment.""" + DATABASE_MY_SQL = "DatabaseMySQL" + """The MySQL database deployment.""" + DATABASE_POST_GRE_SQL = "DatabasePostGreSQL" + """The PostgreSQL database deployment.""" + DATABASE_DB2_ZOS = "DatabaseDB2ZOS" + """The DB2 z/OS database deployment.""" + DATABASE_DB2_I = "DATABASE_DB2I" + """The DB2 i database deployment.""" + GGSA = "GGSA" + """The GGSA deployment.""" + DATA_TRANSFORMS = "DataTransforms" + """The data transforms deployment.""" + + class DisasterRecoveryType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Disaster recovery type enum.""" ADG = "Adg" - """ADG type""" + """ADG type.""" BACKUP_BASED = "BackupBased" - """Backup based type""" + """Backup based type.""" class DiskRedundancy(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Disk redundancy enum.""" HIGH = "High" - """High redundancy""" + """High redundancy.""" NORMAL = "Normal" - """Normal redundancy""" + """Normal redundancy.""" class DiskRedundancyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -445,212 +611,298 @@ class DnsPrivateViewsLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta """DNS Private Views lifecycle state enum.""" ACTIVE = "Active" - """DNS Private View is active""" + """DNS Private View is active.""" DELETED = "Deleted" - """DNS Private View is deleted""" + """DNS Private View is deleted.""" DELETING = "Deleting" - """DNS Private View is deleting""" + """DNS Private View is deleting.""" UPDATING = "Updating" - """DNS Private View is updating""" + """DNS Private View is updating.""" class DnsPrivateZonesLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """DNS Private Zones lifecycle state enum.""" ACTIVE = "Active" - """DNS Private Zones is active""" + """DNS Private Zones is active.""" CREATING = "Creating" - """DNS Private Zones is creating""" + """DNS Private Zones is creating.""" DELETED = "Deleted" - """DNS Private Zones is deleted""" + """DNS Private Zones is deleted.""" DELETING = "Deleting" - """DNS Private Zones is deleting""" + """DNS Private Zones is deleting.""" UPDATING = "Updating" - """DNS Private Zones is updating""" + """DNS Private Zones is updating.""" class ExadataVmClusterStorageManagementType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Specifies the type of storage management for the Cloud VM Cluster if its ASM or Exascale.""" ASM = "ASM" - """Indicates that storage management for the Cloud VM Cluster is ASM""" + """Indicates that storage management for the Cloud VM Cluster is ASM.""" EXASCALE = "Exascale" - """Indicates that storage management for the Cloud VM Cluster is Exascale""" + """Indicates that storage management for the Cloud VM Cluster is Exascale.""" class ExadbVmClusterLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Exadata VM cluster on Exascale Infrastructure lifecycle state enum.""" PROVISIONING = "Provisioning" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" AVAILABLE = "Available" - """Indicates that resource in Available state""" + """Indicates that resource in Available state.""" UPDATING = "Updating" - """Indicates that resource in Updating state""" + """Indicates that resource in Updating state.""" TERMINATING = "Terminating" - """Indicates that resource in Terminating state""" + """Indicates that resource in Terminating state.""" TERMINATED = "Terminated" - """Indicates that resource in Terminated state""" + """Indicates that resource in Terminated state.""" MAINTENANCE_IN_PROGRESS = "MaintenanceInProgress" - """Indicates that resource Maintenance in progress state""" + """Indicates that resource Maintenance in progress state.""" FAILED = "Failed" - """Indicates that resource in Failed state""" + """Indicates that resource in Failed state.""" class ExascaleDbStorageVaultLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Exadata Database Storage Vault lifecycle state enum.""" PROVISIONING = "Provisioning" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" AVAILABLE = "Available" - """Indicates that resource in Available state""" + """Indicates that resource in Available state.""" UPDATING = "Updating" - """Indicates that resource in Updating state""" + """Indicates that resource in Updating state.""" TERMINATING = "Terminating" - """Indicates that resource in Terminating state""" + """Indicates that resource in Terminating state.""" TERMINATED = "Terminated" - """Indicates that resource in Terminated state""" + """Indicates that resource in Terminated state.""" FAILED = "Failed" - """Indicates that resource in Failed state""" + """Indicates that resource in Failed state.""" + + +class FrequencyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Frequency type enum.""" + + DAILY = "Daily" + """The daily frequency.""" + WEEKLY = "Weekly" + """The weekly frequency.""" + MONTHLY = "Monthly" + """The monthly frequency.""" class GenerateType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Generate type enum.""" SINGLE = "Single" - """Generate single""" + """Generate single.""" ALL = "All" - """Generate all""" + """Generate all.""" + + +class GiMinorVersionSortOrder(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Allowed values for GI minor version sort order.""" + + ASC = "ASC" + """Ascending sort order.""" + DESC = "DESC" + """Descending sort order.""" + + +class GoldenGateConnectionAssignmentLifecycleState( # pylint: disable=name-too-long + str, Enum, metaclass=CaseInsensitiveEnumMeta +): + """Possible lifecycle states for connection assignments.""" + + CREATING = "CREATING" + """Indicates that the resource is in creating state.""" + ACTIVE = "ACTIVE" + """Indicates that the resource is in active state.""" + FAILED = "FAILED" + """Indicates that the resource is in failed state.""" + UPDATING = "UPDATING" + """Indicates that the resource is in updating state.""" + DELETING = "DELETING" + """Indicates that the resource is in deleting state.""" + DELETED = "DELETED" + """Indicates that the resource is in deleted state.""" class GridImageType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """GridImageType enum.""" RELEASE_UPDATE = "ReleaseUpdate" - """Release update""" + """Release update.""" CUSTOM_IMAGE = "CustomImage" - """Custom image""" + """Custom image.""" class HardwareType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Hardware Type enum.""" COMPUTE = "COMPUTE" - """Hardware type is Database Server""" + """Hardware type is Database Server.""" CELL = "CELL" - """Hardware type is Storage Server""" + """Hardware type is Storage Server.""" class HostFormatType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Host format type enum.""" FQDN = "Fqdn" - """FQDN format""" + """FQDN format.""" IP = "Ip" - """IP format""" + """IP format.""" class Intent(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Intent enum.""" RETAIN = "Retain" - """Retain intent""" + """Retain intent.""" RESET = "Reset" - """Reset intent""" + """Reset intent.""" class IormLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ORM lifecycle state enum.""" BOOT_STRAPPING = "BootStrapping" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" ENABLED = "Enabled" - """Indicates that resource in Enabled state""" + """Indicates that resource in Enabled state.""" DISABLED = "Disabled" - """Indicates that resource in Disabled state""" + """Indicates that resource in Disabled state.""" UPDATING = "Updating" - """Indicates that resource in Updating state""" + """Indicates that resource in Updating state.""" FAILED = "Failed" - """Indicates that resource in Failed state""" + """Indicates that resource in Failed state.""" + + +class KafkaConnectionTechnologyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Allowed values for Kafka technology type.""" + + APACHE_KAFKA = "APACHE_KAFKA" + """The Apache Kafka type.""" + AZURE_EVENT_HUBS = "AZURE_EVENT_HUBS" + """The Azure Event Hubs type.""" + CONFLUENT_KAFKA = "CONFLUENT_KAFKA" + """The Confluent Kafka type.""" + OCI_STREAMING = "OCI_STREAMING" + """The OCI Streaming type.""" class LicenseModel(str, Enum, metaclass=CaseInsensitiveEnumMeta): """LicenseModel enum.""" LICENSE_INCLUDED = "LicenseIncluded" - """License included""" + """License included.""" BRING_YOUR_OWN_LICENSE = "BringYourOwnLicense" - """Bring Your Own License""" + """Bring Your Own License.""" + + +class MicrosoftFabricConnectionTechnologyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Allowed values for Microsoft Fabric technology type.""" + + MICROSOFT_FABRIC_LAKEHOUSE = "MICROSOFT_FABRIC_LAKEHOUSE" + """The Microsoft Fabric Lakehouse type.""" + MICROSOFT_FABRIC_MIRROR = "MICROSOFT_FABRIC_MIRROR" + """The Microsoft Fabric Mirror type.""" class MonthName(str, Enum, metaclass=CaseInsensitiveEnumMeta): """MonthName enum.""" JANUARY = "January" - """January value""" + """January value.""" FEBRUARY = "February" - """February value""" + """February value.""" MARCH = "March" - """March value""" + """March value.""" APRIL = "April" - """April value""" + """April value.""" MAY = "May" - """May value""" + """May value.""" JUNE = "June" - """June value""" + """June value.""" JULY = "July" - """July value""" + """July value.""" AUGUST = "August" - """August value""" + """August value.""" SEPTEMBER = "September" - """September value""" + """September value.""" OCTOBER = "October" - """October value""" + """October value.""" NOVEMBER = "November" - """November value""" + """November value.""" DECEMBER = "December" - """December value""" + """December value.""" class Objective(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Objective enum.""" LOW_LATENCY = "LowLatency" - """Low latency objective""" + """Low latency objective.""" HIGH_THROUGHPUT = "HighThroughput" - """High throughput objective""" + """High throughput objective.""" BALANCED = "Balanced" - """Balanced objective""" + """Balanced objective.""" AUTO = "Auto" - """Auto objective""" + """Auto objective.""" BASIC = "Basic" - """Basic objective""" + """Basic objective.""" class OpenModeType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Open mode type enum.""" READ_ONLY = "ReadOnly" - """ReadOnly mode""" + """ReadOnly mode.""" READ_WRITE = "ReadWrite" - """ReadWrite mode""" + """ReadWrite mode.""" class OperationsInsightsStatusType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Operations Insights status type enum.""" ENABLING = "Enabling" - """Enabling status""" + """Enabling status.""" ENABLED = "Enabled" - """Enabled status""" + """Enabled status.""" DISABLING = "Disabling" - """Disabling status""" + """Disabling status.""" NOT_ENABLED = "NotEnabled" - """NotEnabled status""" + """NotEnabled status.""" FAILED_ENABLING = "FailedEnabling" - """FailedEnabling status""" + """FailedEnabling status.""" FAILED_DISABLING = "FailedDisabling" - """FailedDisabling status""" + """FailedDisabling status.""" + + +class OracleConnectionTechnologyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Allowed values for Oracle technology type.""" + + AMAZON_RDS_ORACLE = "AMAZON_RDS_ORACLE" + """Oracle databases hosted on Amazon RDS.""" + OCI_AUTONOMOUS_DATABASE = "OCI_AUTONOMOUS_DATABASE" + """OCI Autonomous Database.""" + ORACLE_DATABASE = "ORACLE_DATABASE" + """On-premise Oracle database.""" + ORACLE_EXADATA = "ORACLE_EXADATA" + """On-premise Exadata database.""" + ORACLE_EXADATA_DATABASE_AT_AZURE = "ORACLE_EXADATA_DATABASE_AT_AZURE" + """Exadata database on Azure.""" + ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD = "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD" + """Exadata database on GCP.""" + ORACLE_EXADATA_DATABASE_AT_AWS = "ORACLE_EXADATA_DATABASE_AT_AWS" + """Exadata database on AWS.""" + ORACLE_AUTONOMOUS_DATABASE_AT_AZURE = "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE" + """Autonomous database on Azure.""" + ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD = "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD" + """Autonomous database on GCP.""" + ORACLE_AUTONOMOUS_DATABASE_AT_AWS = "ORACLE_AUTONOMOUS_DATABASE_AT_AWS" + """Autonomous database on AWS.""" class OracleSubscriptionProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -681,67 +933,76 @@ class PatchingMode(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Patching mode enum.""" ROLLING = "Rolling" - """Rolling patching""" + """Rolling patching.""" NON_ROLLING = "NonRolling" - """Non Rolling patching""" + """Non Rolling patching.""" class PermissionLevelType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Permission level type enum.""" RESTRICTED = "Restricted" - """Restricted permission level""" + """Restricted permission level.""" UNRESTRICTED = "Unrestricted" - """Unrestricted permission level""" + """Unrestricted permission level.""" class Preference(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Preference enum.""" NO_PREFERENCE = "NoPreference" - """No preference""" + """No preference.""" CUSTOM_PREFERENCE = "CustomPreference" - """Custom preference""" + """Custom preference.""" class ProtocolType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Protocol type enum.""" TCP = "TCP" - """TCP protocol""" + """TCP protocol.""" TCPS = "TCPS" - """TCPS protocol""" + """TCPS protocol.""" + + +class ProximityPlacementGroupEntityType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Entity types for proximity placement group usage.""" + + CLOUD_EXADATA_INFRASTRUCTURE = "CloudExadataInfrastructure" + """Cloud Exadata Infrastructure.""" + OTHER_PRODUCTS = "OtherProducts" + """Other products.""" class RefreshableModelType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Refreshable model type enum.""" AUTOMATIC = "Automatic" - """Automatic refreshable model type""" + """Automatic refreshable model type.""" MANUAL = "Manual" - """Manual refreshable model type""" + """Manual refreshable model type.""" class RefreshableStatusType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Refreshable status type enum.""" REFRESHING = "Refreshing" - """Refreshing status""" + """Refreshing status.""" NOT_REFRESHING = "NotRefreshing" - """NotRefreshing status""" + """NotRefreshing status.""" class RepeatCadenceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Repeat cadence type enum.""" ONE_TIME = "OneTime" - """Repeat one time""" + """Repeat one time.""" WEEKLY = "Weekly" - """Repeat weekly""" + """Repeat weekly.""" MONTHLY = "Monthly" - """Repeat monthly""" + """Repeat monthly.""" YEARLY = "Yearly" - """Repeat yearly""" + """Repeat yearly.""" class ResourceProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -759,24 +1020,55 @@ class RoleType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Role type enum.""" PRIMARY = "Primary" - """Primary role""" + """Primary role.""" STANDBY = "Standby" - """Standby role""" + """Standby role.""" DISABLED_STANDBY = "DisabledStandby" - """DisabledStandby role""" + """DisabledStandby role.""" BACKUP_COPY = "BackupCopy" - """BackupCopy role""" + """BackupCopy role.""" SNAPSHOT_STANDBY = "SnapshotStandby" - """SnapshotStandby role""" + """SnapshotStandby role.""" + + +class RoutingMethod(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Allowed network traffic routing method.""" + + SHARED_SERVICE_ENDPOINT = "SHARED_SERVICE_ENDPOINT" + """Indicates that traffic flows through the GoldenGate service network to public hosts.""" + SHARED_DEPLOYMENT_ENDPOINT = "SHARED_DEPLOYMENT_ENDPOINT" + """Indicates that traffic flows from the assigned deployment's private endpoint through the + deployment's subnet.""" + DEDICATED_ENDPOINT = "DEDICATED_ENDPOINT" + """Indicates that a dedicated private endpoint is created in the target VCN subnet for the + connection.""" + + +class SessionMode(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Allowed modes for database connection session.""" + + DIRECT = "DIRECT" + """For a non-RAC database.""" + REDIRECT = "REDIRECT" + """For a RAC database.""" class SessionModeType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Session mode type enum.""" DIRECT = "Direct" - """Direct session mode""" + """Direct session mode.""" REDIRECT = "Redirect" - """Redirect session mode""" + """Redirect session mode.""" + + +class SetupType(str, Enum, metaclass=CaseInsensitiveEnumMeta): + """Setup type enum.""" + + PRODUCTION = "Production" + """Production setup.""" + DEVELOPMENT_OR_TESTING = "DevelopmentOrTesting" + """Development or testing setup.""" class ShapeAttribute(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -785,57 +1077,57 @@ class ShapeAttribute(str, Enum, metaclass=CaseInsensitiveEnumMeta): """ SMART_STORAGE = "SMART_STORAGE" - """Smart storage""" + """Smart storage.""" BLOCK_STORAGE = "BLOCK_STORAGE" - """block storage""" + """block storage.""" class ShapeFamily(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Allowed values for GI Minor Versions shapeFamily filter.""" EXADATA = "EXADATA" - """Family value for Exadata Shape""" + """Family value for Exadata Shape.""" EXADB_XS = "EXADB_XS" - """Family value for Exadb XS Shape""" + """Family value for Exadb XS Shape.""" class ShapeFamilyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Allowed values for shape family.""" EXADATA = "EXADATA" - """Family value for Exadata Shape""" + """Family value for Exadata Shape.""" EXADB_XS = "EXADB_XS" - """Family value for Exadb XS Shape""" + """Family value for Exadb XS Shape.""" SINGLE_NODE = "SINGLENODE" - """Family value for Single Node Shape""" + """Family value for Single Node Shape.""" VIRTUAL_MACHINE = "VIRTUALMACHINE" - """Family value for Virtual Machine Shape""" + """Family value for Virtual Machine Shape.""" class SourceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Source type enum.""" NONE = "None" - """None source""" + """None source.""" DATABASE = "Database" - """Database source""" + """Database source.""" BACKUP_FROM_ID = "BackupFromId" - """Backup from ID source""" + """Backup from ID source.""" BACKUP_FROM_TIMESTAMP = "BackupFromTimestamp" - """Backup from timestamp source""" + """Backup from timestamp source.""" CLONE_TO_REFRESHABLE = "CloneToRefreshable" - """Clone to refreshable source""" + """Clone to refreshable source.""" CROSS_REGION_DATAGUARD = "CrossRegionDataguard" - """Cross region dataguard source""" + """Cross region dataguard source.""" CROSS_REGION_DISASTER_RECOVERY = "CrossRegionDisasterRecovery" - """cross region disaster recovery source""" + """cross region disaster recovery source.""" class StorageManagementType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Storage Management type enum.""" LVM = "LVM" - """Logical Volume management""" + """Logical Volume management.""" class StorageVolumePerformanceMode(str, Enum, metaclass=CaseInsensitiveEnumMeta): @@ -853,66 +1145,70 @@ class SyntaxFormatType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Syntax format type enum.""" LONG = "Long" - """Long format""" + """Long format.""" EZCONNECT = "Ezconnect" - """Ezconnect format""" + """Ezconnect format.""" EZCONNECTPLUS = "Ezconnectplus" - """Ezconnectplus format""" + """Ezconnectplus format.""" class SystemShapes(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Allowed values for System Shapes.""" EXADATA_X9_M = "Exadata.X9M" - """Exadata X9M shape""" + """Exadata X9M shape.""" EXADATA_X11_M = "Exadata.X11M" - """Exadata X11M shape""" + """Exadata X11M shape.""" + EXADATA_X11_MV = "Exadata.X11MV" + """Exadata X11M shape.""" EXA_DB_XS = "ExaDbXS" - """Exadata DB on Exascale Infrastructure shape""" + """Exadata DB on Exascale Infrastructure shape.""" class TlsAuthenticationType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """TLS authentication type enum.""" SERVER = "Server" - """Server authentication""" + """Server authentication.""" MUTUAL = "Mutual" - """Mutual TLS""" + """Mutual TLS.""" class VirtualNetworkAddressLifecycleState(str, Enum, metaclass=CaseInsensitiveEnumMeta): """VirtualNetworkAddressLifecycleState enum.""" PROVISIONING = "Provisioning" - """Indicates that resource in Provisioning state""" + """Indicates that resource in Provisioning state.""" AVAILABLE = "Available" - """Indicates that resource in Available state""" + """Indicates that resource in Available state.""" TERMINATING = "Terminating" - """Indicates that resource in Terminating state""" + """Indicates that resource in Terminating state.""" TERMINATED = "Terminated" - """Indicates that resource in Terminated state""" + """Indicates that resource in Terminated state.""" FAILED = "Failed" - """Indicates that resource in Failed state""" + """Indicates that resource in Failed state.""" class WorkloadType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """WorkloadType enum.""" OLTP = "OLTP" - """OLTP - indicates an Autonomous Transaction Processing database""" + """OLTP - indicates an Autonomous Transaction Processing database.""" DW = "DW" - """DW - indicates an Autonomous Data Warehouse database""" + """DW - indicates an Autonomous Data Warehouse database.""" AJD = "AJD" - """AJD - indicates an Autonomous JSON Database""" + """AJD - indicates an Autonomous JSON Database.""" APEX = "APEX" """APEX - indicates an Autonomous Database with the Oracle APEX Application Development workload type.""" + LH = "LH" + """LH - indicates an Oracle Autonomous AI Lakehouse database.""" class ZoneType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Zone type enum.""" PRIMARY = "Primary" - """Primary zone""" + """Primary zone.""" SECONDARY = "Secondary" - """Secondary zone""" + """Secondary zone.""" diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_models.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_models.py index af63efd47454..9a82bf6ee644 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_models.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_models.py @@ -12,7 +12,7 @@ from typing import Any, Literal, Mapping, Optional, TYPE_CHECKING, Union, overload from .._utils.model_base import Model as _Model, rest_discriminator, rest_field -from ._enums import DataBaseType, DbSystemSourceType, SourceType +from ._enums import ConnectionType, DataBaseType, DbSystemSourceType, SourceType if TYPE_CHECKING: from .. import models as _models @@ -37,7 +37,7 @@ class ActivationLinks(_Model): """Existing Cloud Account Activation Link.""" -class AddRemoveDbNode(_Model): +class AddRemoveDbNode(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Add/Remove (Virtual Machine) DbNode model. :ivar db_servers: Db servers ocids. Required. @@ -65,7 +65,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AllConnectionStringType(_Model): +class AllConnectionStringType(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The connection string profile to allow clients to group, filter and select connection string values based on structured metadata. @@ -114,7 +114,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ApexDetailsType(_Model): +class ApexDetailsType(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Information about Oracle APEX Application Development. :ivar apex_version: The Oracle APEX Application Development version. @@ -179,7 +179,162 @@ class Resource(_Model): """Azure Resource Manager metadata containing createdBy and modifiedBy information.""" -class TrackedResource(Resource): +class ProxyResource(Resource): + """Proxy Resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + """ + + +class AssignedConnection(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """Assigned Connection resource belonging to GoldenGate Deployment. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.DeploymentConnectionAssignmentProperties + """ + + properties: Optional["_models.DeploymentConnectionAssignmentProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The resource-specific properties for this resource.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.DeploymentConnectionAssignmentProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AssignedDeployment(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """Assigned Deployment resource belonging to GoldenGate Connection. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.DeploymentConnectionAssignmentProperties + """ + + properties: Optional["_models.DeploymentConnectionAssignmentProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The resource-specific properties for this resource.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.DeploymentConnectionAssignmentProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AssignUnassignConnection(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The payload for assigning or unassigning a connection on a deployment. + + :ivar connection_id: The Azure resource ID of the connection to assign or unassign. Required. + :vartype connection_id: str + """ + + connection_id: str = rest_field(name="connectionId", visibility=["read", "create", "update", "delete", "query"]) + """The Azure resource ID of the connection to assign or unassign. Required.""" + + @overload + def __init__( + self, + *, + connection_id: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class AssignUnassignDeployment(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The payload for assigning or unassigning a deployment on a connection. + + :ivar deployment_id: The Azure resource ID of the deployment to assign or unassign. Required. + :vartype deployment_id: str + """ + + deployment_id: str = rest_field(name="deploymentId", visibility=["read", "create", "update", "delete", "query"]) + """The Azure resource ID of the deployment to assign or unassign. Required.""" + + @overload + def __init__( + self, + *, + deployment_id: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class TrackedResource(Resource): # pylint: disable=docstring-keyword-should-match-keyword-only """Tracked Resource. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -223,7 +378,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabase(TrackedResource): +class AutonomousDatabase(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only """Autonomous Database resource model. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -270,24 +425,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ProxyResource(Resource): - """Proxy Resource. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData - """ - - -class AutonomousDatabaseBackup(ProxyResource): +class AutonomousDatabaseBackup(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only """AutonomousDatabaseBackup resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -328,7 +466,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseBackupProperties(_Model): +class AutonomousDatabaseBackupProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """AutonomousDatabaseBackup resource model. :ivar autonomous_database_ocid: The OCID of the Autonomous Database. @@ -369,6 +507,9 @@ class AutonomousDatabaseBackupProperties(_Model): "Failed", "Canceled", and "Provisioning". :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar backup_destination: The destination where this backup is stored. Known values are: "OCI" + and "AZURE". + :vartype backup_destination: str or ~azure.mgmt.oracledatabase.models.BackupDestinationType """ autonomous_database_ocid: Optional[str] = rest_field(name="autonomousDatabaseOcid", visibility=["read"]) @@ -415,6 +556,10 @@ class AutonomousDatabaseBackupProperties(_Model): ) """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and \"Provisioning\".""" + backup_destination: Optional[Union[str, "_models.BackupDestinationType"]] = rest_field( + name="backupDestination", visibility=["read"] + ) + """The destination where this backup is stored. Known values are: \"OCI\" and \"AZURE\".""" @overload def __init__( @@ -435,7 +580,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseBackupUpdate(_Model): +class AutonomousDatabaseBackupUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The type used for update operations of the AutonomousDatabaseBackup. :ivar properties: The resource-specific properties for this resource. @@ -465,7 +610,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseBackupUpdateProperties(_Model): +class AutonomousDatabaseBackupUpdateProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The updatable properties of the AutonomousDatabaseBackup. :ivar retention_period_in_days: Retention period, in days. @@ -495,7 +640,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseBaseProperties(_Model): +class AutonomousDatabaseBaseProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Autonomous Database base resource model. You probably want to use the sub-classes and not this class directly. Known sub-classes are: @@ -530,7 +675,7 @@ class AutonomousDatabaseBaseProperties(_Model): :ivar db_version: A valid Oracle Database version for Autonomous Database. :vartype db_version: str :ivar db_workload: The Autonomous Database workload type. Known values are: "OLTP", "DW", - "AJD", and "APEX". + "AJD", "APEX", and "LH". :vartype db_workload: str or ~azure.mgmt.oracledatabase.models.WorkloadType :ivar display_name: The user-friendly name for the Autonomous Database. :vartype display_name: str @@ -717,6 +862,21 @@ class AutonomousDatabaseBaseProperties(_Model): notations and/or IP addresses. Values should be separate strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25']. :vartype whitelisted_ips: list[str] + :ivar is_schedule_az_update_to_earliest: Update AZ at the earliest available opportunity. + :vartype is_schedule_az_update_to_earliest: bool + :ivar time_scheduled_az_update: The date and time when the Autonomous Database availability + zone is to be updated. + :vartype time_scheduled_az_update: str + :ivar zone: The logical zone where the Autonomous Database is provisioned. + :vartype zone: str + :ivar backup_destination: Backup destination for auto and long-term backups. Existing backups + stay in their original destination when this value changes. Known values are: "OCI" and + "AZURE". + :vartype backup_destination: str or ~azure.mgmt.oracledatabase.models.BackupDestinationType + :ivar resource_anchor_id: Azure Resource Anchor ID. + :vartype resource_anchor_id: str + :ivar network_anchor_id: Azure Network Anchor ID. + :vartype network_anchor_id: str """ __mapping__: dict[str, _Model] = {} @@ -757,8 +917,8 @@ class AutonomousDatabaseBaseProperties(_Model): db_workload: Optional[Union[str, "_models.WorkloadType"]] = rest_field( name="dbWorkload", visibility=["read", "create"] ) - """The Autonomous Database workload type. Known values are: \"OLTP\", \"DW\", \"AJD\", and - \"APEX\".""" + """The Autonomous Database workload type. Known values are: \"OLTP\", \"DW\", \"AJD\", \"APEX\", + and \"LH\".""" display_name: Optional[str] = rest_field(name="displayName", visibility=["read", "create", "update"]) """The user-friendly name for the Autonomous Database.""" is_auto_scaling_enabled: Optional[bool] = rest_field( @@ -974,6 +1134,23 @@ class AutonomousDatabaseBaseProperties(_Model): """The client IP access control list (ACL). This is an array of CIDR notations and/or IP addresses. Values should be separate strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25'].""" + is_schedule_az_update_to_earliest: Optional[bool] = rest_field( + name="isScheduleAzUpdateToEarliest", visibility=["update"] + ) + """Update AZ at the earliest available opportunity.""" + time_scheduled_az_update: Optional[str] = rest_field(name="timeScheduledAzUpdate", visibility=["update"]) + """The date and time when the Autonomous Database availability zone is to be updated.""" + zone: Optional[str] = rest_field(visibility=["read", "create", "update"]) + """The logical zone where the Autonomous Database is provisioned.""" + backup_destination: Optional[Union[str, "_models.BackupDestinationType"]] = rest_field( + name="backupDestination", visibility=["read", "create", "update"] + ) + """Backup destination for auto and long-term backups. Existing backups stay in their original + destination when this value changes. Known values are: \"OCI\" and \"AZURE\".""" + resource_anchor_id: Optional[str] = rest_field(name="resourceAnchorId", visibility=["read", "create"]) + """Azure Resource Anchor ID.""" + network_anchor_id: Optional[str] = rest_field(name="networkAnchorId", visibility=["read", "create"]) + """Azure Network Anchor ID.""" @overload def __init__( # pylint: disable=too-many-locals @@ -1014,6 +1191,12 @@ def __init__( # pylint: disable=too-many-locals role: Optional[Union[str, "_models.RoleType"]] = None, backup_retention_period_in_days: Optional[int] = None, whitelisted_ips: Optional[list[str]] = None, + is_schedule_az_update_to_earliest: Optional[bool] = None, + time_scheduled_az_update: Optional[str] = None, + zone: Optional[str] = None, + backup_destination: Optional[Union[str, "_models.BackupDestinationType"]] = None, + resource_anchor_id: Optional[str] = None, + network_anchor_id: Optional[str] = None, ) -> None: ... @overload @@ -1027,7 +1210,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseCharacterSet(ProxyResource): +class AutonomousDatabaseCharacterSet(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only """AutonomousDatabaseCharacterSets resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -1068,7 +1251,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseCharacterSetProperties(_Model): +class AutonomousDatabaseCharacterSetProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """AutonomousDatabaseCharacterSet resource model. :ivar character_set: The Oracle Autonomous Database supported character sets. Required. @@ -1096,7 +1279,9 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseCloneProperties(AutonomousDatabaseBaseProperties, discriminator="Clone"): +class AutonomousDatabaseCloneProperties( + AutonomousDatabaseBaseProperties, discriminator="Clone" +): # pylint: disable=docstring-keyword-should-match-keyword-only """Autonomous Database clone resource model. :ivar admin_password: Admin password. @@ -1124,7 +1309,7 @@ class AutonomousDatabaseCloneProperties(AutonomousDatabaseBaseProperties, discri :ivar db_version: A valid Oracle Database version for Autonomous Database. :vartype db_version: str :ivar db_workload: The Autonomous Database workload type. Known values are: "OLTP", "DW", - "AJD", and "APEX". + "AJD", "APEX", and "LH". :vartype db_workload: str or ~azure.mgmt.oracledatabase.models.WorkloadType :ivar display_name: The user-friendly name for the Autonomous Database. :vartype display_name: str @@ -1311,7 +1496,22 @@ class AutonomousDatabaseCloneProperties(AutonomousDatabaseBaseProperties, discri notations and/or IP addresses. Values should be separate strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25']. :vartype whitelisted_ips: list[str] - :ivar data_base_type: Database type to be created. Required. Clone DB + :ivar is_schedule_az_update_to_earliest: Update AZ at the earliest available opportunity. + :vartype is_schedule_az_update_to_earliest: bool + :ivar time_scheduled_az_update: The date and time when the Autonomous Database availability + zone is to be updated. + :vartype time_scheduled_az_update: str + :ivar zone: The logical zone where the Autonomous Database is provisioned. + :vartype zone: str + :ivar backup_destination: Backup destination for auto and long-term backups. Existing backups + stay in their original destination when this value changes. Known values are: "OCI" and + "AZURE". + :vartype backup_destination: str or ~azure.mgmt.oracledatabase.models.BackupDestinationType + :ivar resource_anchor_id: Azure Resource Anchor ID. + :vartype resource_anchor_id: str + :ivar network_anchor_id: Azure Network Anchor ID. + :vartype network_anchor_id: str + :ivar data_base_type: Database type to be created. Required. Clone DB. :vartype data_base_type: str or ~azure.mgmt.oracledatabase.models.CLONE :ivar source: The source of the database. Known values are: "None", "Database", "BackupFromId", "BackupFromTimestamp", "CloneToRefreshable", "CrossRegionDataguard", and @@ -1341,7 +1541,7 @@ class AutonomousDatabaseCloneProperties(AutonomousDatabaseBaseProperties, discri """ data_base_type: Literal[DataBaseType.CLONE] = rest_discriminator(name="dataBaseType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore - """Database type to be created. Required. Clone DB""" + """Database type to be created. Required. Clone DB.""" source: Optional[Union[str, "_models.SourceType"]] = rest_field(visibility=["create"]) """The source of the database. Known values are: \"None\", \"Database\", \"BackupFromId\", \"BackupFromTimestamp\", \"CloneToRefreshable\", \"CrossRegionDataguard\", and @@ -1409,6 +1609,12 @@ def __init__( # pylint: disable=too-many-locals role: Optional[Union[str, "_models.RoleType"]] = None, backup_retention_period_in_days: Optional[int] = None, whitelisted_ips: Optional[list[str]] = None, + is_schedule_az_update_to_earliest: Optional[bool] = None, + time_scheduled_az_update: Optional[str] = None, + zone: Optional[str] = None, + backup_destination: Optional[Union[str, "_models.BackupDestinationType"]] = None, + resource_anchor_id: Optional[str] = None, + network_anchor_id: Optional[str] = None, source: Optional[Union[str, "_models.SourceType"]] = None, refreshable_model: Optional[Union[str, "_models.RefreshableModelType"]] = None, time_until_reconnect_clone_enabled: Optional[str] = None, @@ -1428,7 +1634,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: class AutonomousDatabaseCrossRegionDisasterRecoveryProperties( AutonomousDatabaseBaseProperties, discriminator="CrossRegionDisasterRecovery" -): # pylint: disable=name-too-long +): # pylint: disable=name-too-long,docstring-keyword-should-match-keyword-only """Autonomous Database Cross Region Disaster Recovery resource model. :ivar admin_password: Admin password. @@ -1456,7 +1662,7 @@ class AutonomousDatabaseCrossRegionDisasterRecoveryProperties( :ivar db_version: A valid Oracle Database version for Autonomous Database. :vartype db_version: str :ivar db_workload: The Autonomous Database workload type. Known values are: "OLTP", "DW", - "AJD", and "APEX". + "AJD", "APEX", and "LH". :vartype db_workload: str or ~azure.mgmt.oracledatabase.models.WorkloadType :ivar display_name: The user-friendly name for the Autonomous Database. :vartype display_name: str @@ -1643,10 +1849,25 @@ class AutonomousDatabaseCrossRegionDisasterRecoveryProperties( notations and/or IP addresses. Values should be separate strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25']. :vartype whitelisted_ips: list[str] - :ivar data_base_type: Database type to be created. Required. Cross Region Disaster Recovery + :ivar is_schedule_az_update_to_earliest: Update AZ at the earliest available opportunity. + :vartype is_schedule_az_update_to_earliest: bool + :ivar time_scheduled_az_update: The date and time when the Autonomous Database availability + zone is to be updated. + :vartype time_scheduled_az_update: str + :ivar zone: The logical zone where the Autonomous Database is provisioned. + :vartype zone: str + :ivar backup_destination: Backup destination for auto and long-term backups. Existing backups + stay in their original destination when this value changes. Known values are: "OCI" and + "AZURE". + :vartype backup_destination: str or ~azure.mgmt.oracledatabase.models.BackupDestinationType + :ivar resource_anchor_id: Azure Resource Anchor ID. + :vartype resource_anchor_id: str + :ivar network_anchor_id: Azure Network Anchor ID. + :vartype network_anchor_id: str + :ivar data_base_type: Database type to be created. Required. Cross Region Disaster Recovery. :vartype data_base_type: str or ~azure.mgmt.oracledatabase.models.CROSS_REGION_DISASTER_RECOVERY - :ivar source: The source of the database. Required. cross region disaster recovery source + :ivar source: The source of the database. Required. cross region disaster recovery source. :vartype source: str or ~azure.mgmt.oracledatabase.models.CROSS_REGION_DISASTER_RECOVERY :ivar source_id: The Azure ID of the source Autonomous Database that will be used to create a new peer database for the DR association. Required. @@ -1669,9 +1890,9 @@ class AutonomousDatabaseCrossRegionDisasterRecoveryProperties( """ data_base_type: Literal[DataBaseType.CROSS_REGION_DISASTER_RECOVERY] = rest_discriminator(name="dataBaseType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore - """Database type to be created. Required. Cross Region Disaster Recovery""" + """Database type to be created. Required. Cross Region Disaster Recovery.""" source: Literal[SourceType.CROSS_REGION_DISASTER_RECOVERY] = rest_field(visibility=["create"]) - """The source of the database. Required. cross region disaster recovery source""" + """The source of the database. Required. cross region disaster recovery source.""" source_id: str = rest_field(name="sourceId", visibility=["read", "create"]) """The Azure ID of the source Autonomous Database that will be used to create a new peer database for the DR association. Required.""" @@ -1735,6 +1956,12 @@ def __init__( # pylint: disable=too-many-locals role: Optional[Union[str, "_models.RoleType"]] = None, backup_retention_period_in_days: Optional[int] = None, whitelisted_ips: Optional[list[str]] = None, + is_schedule_az_update_to_earliest: Optional[bool] = None, + time_scheduled_az_update: Optional[str] = None, + zone: Optional[str] = None, + backup_destination: Optional[Union[str, "_models.BackupDestinationType"]] = None, + resource_anchor_id: Optional[str] = None, + network_anchor_id: Optional[str] = None, source_location: Optional[str] = None, source_ocid: Optional[str] = None, is_replicate_automatic_backups: Optional[bool] = None, @@ -1754,7 +1981,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: class AutonomousDatabaseFromBackupTimestampProperties( AutonomousDatabaseBaseProperties, discriminator="CloneFromBackupTimestamp" -): # pylint: disable=name-too-long +): # pylint: disable=name-too-long,docstring-keyword-should-match-keyword-only """Autonomous Database From Backup Timestamp resource model. :ivar admin_password: Admin password. @@ -1782,7 +2009,7 @@ class AutonomousDatabaseFromBackupTimestampProperties( :ivar db_version: A valid Oracle Database version for Autonomous Database. :vartype db_version: str :ivar db_workload: The Autonomous Database workload type. Known values are: "OLTP", "DW", - "AJD", and "APEX". + "AJD", "APEX", and "LH". :vartype db_workload: str or ~azure.mgmt.oracledatabase.models.WorkloadType :ivar display_name: The user-friendly name for the Autonomous Database. :vartype display_name: str @@ -1969,9 +2196,24 @@ class AutonomousDatabaseFromBackupTimestampProperties( notations and/or IP addresses. Values should be separate strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25']. :vartype whitelisted_ips: list[str] - :ivar data_base_type: Database type to be created. Required. Clone DB from backup timestamp + :ivar is_schedule_az_update_to_earliest: Update AZ at the earliest available opportunity. + :vartype is_schedule_az_update_to_earliest: bool + :ivar time_scheduled_az_update: The date and time when the Autonomous Database availability + zone is to be updated. + :vartype time_scheduled_az_update: str + :ivar zone: The logical zone where the Autonomous Database is provisioned. + :vartype zone: str + :ivar backup_destination: Backup destination for auto and long-term backups. Existing backups + stay in their original destination when this value changes. Known values are: "OCI" and + "AZURE". + :vartype backup_destination: str or ~azure.mgmt.oracledatabase.models.BackupDestinationType + :ivar resource_anchor_id: Azure Resource Anchor ID. + :vartype resource_anchor_id: str + :ivar network_anchor_id: Azure Network Anchor ID. + :vartype network_anchor_id: str + :ivar data_base_type: Database type to be created. Required. Clone DB from backup timestamp. :vartype data_base_type: str or ~azure.mgmt.oracledatabase.models.CLONE_FROM_BACKUP_TIMESTAMP - :ivar source: The source of the database. Required. Backup from timestamp source + :ivar source: The source of the database. Required. Backup from timestamp source. :vartype source: str or ~azure.mgmt.oracledatabase.models.BACKUP_FROM_TIMESTAMP :ivar source_id: The ID of the source Autonomous Database that you will clone to create a new Autonomous Database. Required. @@ -1987,9 +2229,9 @@ class AutonomousDatabaseFromBackupTimestampProperties( """ data_base_type: Literal[DataBaseType.CLONE_FROM_BACKUP_TIMESTAMP] = rest_discriminator(name="dataBaseType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore - """Database type to be created. Required. Clone DB from backup timestamp""" + """Database type to be created. Required. Clone DB from backup timestamp.""" source: Literal[SourceType.BACKUP_FROM_TIMESTAMP] = rest_field(visibility=["create"]) - """The source of the database. Required. Backup from timestamp source""" + """The source of the database. Required. Backup from timestamp source.""" source_id: str = rest_field(name="sourceId", visibility=["read", "create"]) """The ID of the source Autonomous Database that you will clone to create a new Autonomous Database. Required.""" @@ -2044,6 +2286,12 @@ def __init__( # pylint: disable=too-many-locals role: Optional[Union[str, "_models.RoleType"]] = None, backup_retention_period_in_days: Optional[int] = None, whitelisted_ips: Optional[list[str]] = None, + is_schedule_az_update_to_earliest: Optional[bool] = None, + time_scheduled_az_update: Optional[str] = None, + zone: Optional[str] = None, + backup_destination: Optional[Union[str, "_models.BackupDestinationType"]] = None, + resource_anchor_id: Optional[str] = None, + network_anchor_id: Optional[str] = None, timestamp: Optional[datetime.datetime] = None, use_latest_available_backup_time_stamp: Optional[bool] = None, ) -> None: ... @@ -2060,7 +2308,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: self.data_base_type = DataBaseType.CLONE_FROM_BACKUP_TIMESTAMP # type: ignore -class AutonomousDatabaseLifecycleAction(_Model): +class AutonomousDatabaseLifecycleAction(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Autonomous Database Action Object. :ivar action: Autonomous Database lifecycle action. Required. Known values are: "Start", @@ -2092,7 +2340,9 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseNationalCharacterSet(ProxyResource): +class AutonomousDatabaseNationalCharacterSet( + ProxyResource +): # pylint: disable=docstring-keyword-should-match-keyword-only """AutonomousDatabaseNationalCharacterSets resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -2134,7 +2384,9 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseNationalCharacterSetProperties(_Model): # pylint: disable=name-too-long +class AutonomousDatabaseNationalCharacterSetProperties( + _Model +): # pylint: disable=name-too-long,docstring-keyword-should-match-keyword-only """AutonomousDatabaseNationalCharacterSet resource model. :ivar character_set: The Oracle Autonomous Database supported national character sets. @@ -2163,7 +2415,9 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseProperties(AutonomousDatabaseBaseProperties, discriminator="Regular"): +class AutonomousDatabaseProperties( + AutonomousDatabaseBaseProperties, discriminator="Regular" +): # pylint: disable=docstring-keyword-should-match-keyword-only """Autonomous Database resource model. :ivar admin_password: Admin password. @@ -2191,7 +2445,7 @@ class AutonomousDatabaseProperties(AutonomousDatabaseBaseProperties, discriminat :ivar db_version: A valid Oracle Database version for Autonomous Database. :vartype db_version: str :ivar db_workload: The Autonomous Database workload type. Known values are: "OLTP", "DW", - "AJD", and "APEX". + "AJD", "APEX", and "LH". :vartype db_workload: str or ~azure.mgmt.oracledatabase.models.WorkloadType :ivar display_name: The user-friendly name for the Autonomous Database. :vartype display_name: str @@ -2378,12 +2632,27 @@ class AutonomousDatabaseProperties(AutonomousDatabaseBaseProperties, discriminat notations and/or IP addresses. Values should be separate strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25']. :vartype whitelisted_ips: list[str] - :ivar data_base_type: Database type to be created. Required. Regular DB + :ivar is_schedule_az_update_to_earliest: Update AZ at the earliest available opportunity. + :vartype is_schedule_az_update_to_earliest: bool + :ivar time_scheduled_az_update: The date and time when the Autonomous Database availability + zone is to be updated. + :vartype time_scheduled_az_update: str + :ivar zone: The logical zone where the Autonomous Database is provisioned. + :vartype zone: str + :ivar backup_destination: Backup destination for auto and long-term backups. Existing backups + stay in their original destination when this value changes. Known values are: "OCI" and + "AZURE". + :vartype backup_destination: str or ~azure.mgmt.oracledatabase.models.BackupDestinationType + :ivar resource_anchor_id: Azure Resource Anchor ID. + :vartype resource_anchor_id: str + :ivar network_anchor_id: Azure Network Anchor ID. + :vartype network_anchor_id: str + :ivar data_base_type: Database type to be created. Required. Regular DB. :vartype data_base_type: str or ~azure.mgmt.oracledatabase.models.REGULAR """ data_base_type: Literal[DataBaseType.REGULAR] = rest_discriminator(name="dataBaseType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore - """Database type to be created. Required. Regular DB""" + """Database type to be created. Required. Regular DB.""" @overload def __init__( # pylint: disable=too-many-locals @@ -2423,6 +2692,12 @@ def __init__( # pylint: disable=too-many-locals role: Optional[Union[str, "_models.RoleType"]] = None, backup_retention_period_in_days: Optional[int] = None, whitelisted_ips: Optional[list[str]] = None, + is_schedule_az_update_to_earliest: Optional[bool] = None, + time_scheduled_az_update: Optional[str] = None, + zone: Optional[str] = None, + backup_destination: Optional[Union[str, "_models.BackupDestinationType"]] = None, + resource_anchor_id: Optional[str] = None, + network_anchor_id: Optional[str] = None, ) -> None: ... @overload @@ -2437,7 +2712,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: self.data_base_type = DataBaseType.REGULAR # type: ignore -class AutonomousDatabaseStandbySummary(_Model): +class AutonomousDatabaseStandbySummary(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Autonomous Disaster Recovery standby database details. :ivar lag_time_in_seconds: The amount of time, in seconds, that the data of the standby @@ -2511,7 +2786,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseUpdate(_Model): +class AutonomousDatabaseUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The type used for update operations of the AutonomousDatabase. :ivar tags: Resource tags. @@ -2546,7 +2821,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseUpdateProperties(_Model): +class AutonomousDatabaseUpdateProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The updatable properties of the AutonomousDatabase. :ivar admin_password: Admin password. @@ -2744,7 +3019,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDatabaseWalletFile(_Model): +class AutonomousDatabaseWalletFile(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Autonomous Database Wallet File resource model. :ivar wallet_files: The base64 encoded wallet files. Required. @@ -2772,7 +3047,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDbVersion(ProxyResource): +class AutonomousDbVersion(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only """AutonomousDbVersion resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -2813,13 +3088,13 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AutonomousDbVersionProperties(_Model): +class AutonomousDbVersionProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """AutonomousDbVersion resource model. :ivar version: Supported Autonomous Db versions. Required. :vartype version: str :ivar db_workload: The Autonomous Database workload type. Known values are: "OLTP", "DW", - "AJD", and "APEX". + "AJD", "APEX", and "LH". :vartype db_workload: str or ~azure.mgmt.oracledatabase.models.WorkloadType :ivar is_default_for_free: True if this version of the Oracle Database software's default is free. @@ -2840,8 +3115,8 @@ class AutonomousDbVersionProperties(_Model): db_workload: Optional[Union[str, "_models.WorkloadType"]] = rest_field( name="dbWorkload", visibility=["read", "create", "update", "delete", "query"] ) - """The Autonomous Database workload type. Known values are: \"OLTP\", \"DW\", \"AJD\", and - \"APEX\".""" + """The Autonomous Database workload type. Known values are: \"OLTP\", \"DW\", \"AJD\", \"APEX\", + and \"LH\".""" is_default_for_free: Optional[bool] = rest_field( name="isDefaultForFree", visibility=["read", "create", "update", "delete", "query"] ) @@ -2883,7 +3158,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class AzureSubscriptions(_Model): +class AzureSubscriptions(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Azure Subscriptions model. :ivar azure_subscription_ids: Azure Subscription Ids to be updated. Required. @@ -2913,6 +3188,72 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) +class BackupScheduleType(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Backup schedule type. + + :ivar bucket_name: Bucket name. + :vartype bucket_name: str + :ivar compartment_id: Compartment ID. + :vartype compartment_id: str + :ivar frequency_backup_scheduled: Backup schedule frequency. Known values are: "Daily", + "Weekly", and "Monthly". + :vartype frequency_backup_scheduled: str or ~azure.mgmt.oracledatabase.models.FrequencyType + :ivar is_metadata_only: Indicates whether the backup contains metadata only. + :vartype is_metadata_only: bool + :ivar namespace_name: Namespace. + :vartype namespace_name: str + :ivar time_backup_scheduled: Scheduled backup time. + :vartype time_backup_scheduled: str + """ + + bucket_name: Optional[str] = rest_field( + name="bucketName", visibility=["read", "create", "update", "delete", "query"] + ) + """Bucket name.""" + compartment_id: Optional[str] = rest_field( + name="compartmentId", visibility=["read", "create", "update", "delete", "query"] + ) + """Compartment ID.""" + frequency_backup_scheduled: Optional[Union[str, "_models.FrequencyType"]] = rest_field( + name="frequencyBackupScheduled", visibility=["read", "create", "update", "delete", "query"] + ) + """Backup schedule frequency. Known values are: \"Daily\", \"Weekly\", and \"Monthly\".""" + is_metadata_only: Optional[bool] = rest_field( + name="isMetadataOnly", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether the backup contains metadata only.""" + namespace_name: Optional[str] = rest_field( + name="namespaceName", visibility=["read", "create", "update", "delete", "query"] + ) + """Namespace.""" + time_backup_scheduled: Optional[str] = rest_field( + name="timeBackupScheduled", visibility=["read", "create", "update", "delete", "query"] + ) + """Scheduled backup time.""" + + @overload + def __init__( + self, + *, + bucket_name: Optional[str] = None, + compartment_id: Optional[str] = None, + frequency_backup_scheduled: Optional[Union[str, "_models.FrequencyType"]] = None, + is_metadata_only: Optional[bool] = None, + namespace_name: Optional[str] = None, + time_backup_scheduled: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + class CloudAccountDetails(_Model): """Cloud Account Details model. @@ -2928,7 +3269,7 @@ class CloudAccountDetails(_Model): """Cloud Account Home region.""" -class CloudExadataInfrastructure(TrackedResource): +class CloudExadataInfrastructure(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only """CloudExadataInfrastructure resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -2980,7 +3321,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class CloudExadataInfrastructureProperties(_Model): +class CloudExadataInfrastructureProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """CloudExadataInfrastructure resource model. :ivar defined_file_system_configuration: Defined file system configurations. @@ -2988,6 +3329,8 @@ class CloudExadataInfrastructureProperties(_Model): list[~azure.mgmt.oracledatabase.models.DefinedFileSystemConfiguration] :ivar ocid: Exadata infra ocid. :vartype ocid: str + :ivar resource_anchor_id: Azure Resource Anchor ID. + :vartype resource_anchor_id: str :ivar compute_count: The number of compute servers for the cloud Exadata infrastructure. :vartype compute_count: int :ivar storage_count: The number of storage servers for the cloud Exadata infrastructure. @@ -3024,6 +3367,8 @@ class CloudExadataInfrastructureProperties(_Model): ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructureLifecycleState :ivar shape: The model name of the cloud Exadata infrastructure resource. Required. :vartype shape: str + :ivar proximity_placement_group: Proximity placement group settings. + :vartype proximity_placement_group: ~azure.mgmt.oracledatabase.models.ProximityPlacementGroup :ivar oci_url: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. :vartype oci_url: str :ivar cpu_count: The total number of CPU cores allocated. @@ -3083,6 +3428,8 @@ class CloudExadataInfrastructureProperties(_Model): """Defined file system configurations.""" ocid: Optional[str] = rest_field(visibility=["read"]) """Exadata infra ocid.""" + resource_anchor_id: Optional[str] = rest_field(name="resourceAnchorId", visibility=["read", "create"]) + """Azure Resource Anchor ID.""" compute_count: Optional[int] = rest_field(name="computeCount", visibility=["read", "create", "update"]) """The number of compute servers for the cloud Exadata infrastructure.""" storage_count: Optional[int] = rest_field(name="storageCount", visibility=["read", "create", "update"]) @@ -3125,6 +3472,10 @@ class CloudExadataInfrastructureProperties(_Model): \"Updating\", \"Terminating\", \"Terminated\", \"MaintenanceInProgress\", and \"Failed\".""" shape: str = rest_field(visibility=["read", "create"]) """The model name of the cloud Exadata infrastructure resource. Required.""" + proximity_placement_group: Optional["_models.ProximityPlacementGroup"] = rest_field( + name="proximityPlacementGroup", visibility=["read", "create"] + ) + """Proximity placement group settings.""" oci_url: Optional[str] = rest_field(name="ociUrl", visibility=["read"]) """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" cpu_count: Optional[int] = rest_field(name="cpuCount", visibility=["read"]) @@ -3176,10 +3527,12 @@ def __init__( # pylint: disable=too-many-locals *, shape: str, display_name: str, + resource_anchor_id: Optional[str] = None, compute_count: Optional[int] = None, storage_count: Optional[int] = None, maintenance_window: Optional["_models.MaintenanceWindow"] = None, customer_contacts: Optional[list["_models.CustomerContact"]] = None, + proximity_placement_group: Optional["_models.ProximityPlacementGroup"] = None, database_server_type: Optional[str] = None, storage_server_type: Optional[str] = None, ) -> None: ... @@ -3195,7 +3548,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class CloudExadataInfrastructureUpdate(_Model): +class CloudExadataInfrastructureUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The type used for update operations of the CloudExadataInfrastructure. :ivar zones: CloudExadataInfrastructure zones. @@ -3236,7 +3589,9 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class CloudExadataInfrastructureUpdateProperties(_Model): # pylint: disable=name-too-long +class CloudExadataInfrastructureUpdateProperties( + _Model +): # pylint: disable=name-too-long,docstring-keyword-should-match-keyword-only """The updatable properties of the CloudExadataInfrastructure. :ivar compute_count: The number of compute servers for the cloud Exadata infrastructure. @@ -3296,7 +3651,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class CloudVmCluster(TrackedResource): +class CloudVmCluster(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only """CloudVmCluster resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -3343,11 +3698,15 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class CloudVmClusterProperties(_Model): +class CloudVmClusterProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """CloudVmCluster resource model. :ivar ocid: Cloud VM Cluster ocid. :vartype ocid: str + :ivar resource_anchor_id: Azure Resource Anchor ID. + :vartype resource_anchor_id: str + :ivar network_anchor_id: Azure Network Anchor ID. + :vartype network_anchor_id: str :ivar listener_port: The port number configured for the listener on the cloud VM cluster. :vartype listener_port: int :ivar node_count: The number of nodes in the cloud VM cluster. @@ -3372,8 +3731,8 @@ class CloudVmClusterProperties(_Model): :vartype time_zone: str :ivar zone_id: The OCID of the zone the cloud VM cluster is associated with. :vartype zone_id: str - :ivar hostname: The hostname for the cloud VM cluster. Required. - :vartype hostname: str + :ivar hostname_v2: The hostname for the cloud VM cluster. Required. + :vartype hostname_v2: str :ivar domain: The domain name for the cloud VM cluster. :vartype domain: str :ivar cpu_core_count: The number of CPU cores enabled on the cloud VM cluster. Required. @@ -3392,12 +3751,23 @@ class CloudVmClusterProperties(_Model): `_ in the Exadata documentation for details on the impact of the configuration settings on storage. :vartype data_storage_percentage: int + :ivar reco_storage_percentage: The percentage assigned to RECO storage (database redo logs, + archive logs, and recovery manager backups). See `Storage Configuration + `_ in the Exadata documentation for details + on the impact of the configuration settings on storage. + :vartype reco_storage_percentage: int + :ivar sparse_storage_percentage: The percentage assigned to SPARSE storage (Exadata snapshots). + See `Storage Configuration `_ in the + Exadata documentation for details on the impact of the configuration settings on storage. + :vartype sparse_storage_percentage: int :ivar is_local_backup_enabled: If true, database backup on local Exadata storage is configured for the cloud VM cluster. If false, database backup on local Exadata storage is not available in the cloud VM cluster. :vartype is_local_backup_enabled: bool :ivar cloud_exadata_infrastructure_id: Cloud Exadata Infrastructure ID. Required. :vartype cloud_exadata_infrastructure_id: str + :ivar proximity_placement_group: Proximity placement group settings. + :vartype proximity_placement_group: ~azure.mgmt.oracledatabase.models.ProximityPlacementGroup :ivar is_sparse_diskgroup_enabled: If true, sparse disk group is configured for the cloud VM cluster. If false, sparse disk group is not created. :vartype is_sparse_diskgroup_enabled: bool @@ -3422,9 +3792,9 @@ class CloudVmClusterProperties(_Model): Service instance to enable failover. If one node fails, the VIP is reassigned to another active node in the cluster. **Note:** For a single-node DB system, this list is empty. :vartype vip_ids: list[str] - :ivar scan_dns_name: The FQDN of the DNS record for the SCAN IP addresses that are associated - with the cloud VM cluster. - :vartype scan_dns_name: str + :ivar scan_dns_name_v2: The FQDN of the DNS record for the SCAN IP addresses that are + associated with the cloud VM cluster. + :vartype scan_dns_name_v2: str :ivar scan_listener_port_tcp: The TCP Single Client Access Name (SCAN) port. The default port is 1521. :vartype scan_listener_port_tcp: int @@ -3484,10 +3854,17 @@ class CloudVmClusterProperties(_Model): cluster is ASM or Exascale. Known values are: "ASM" and "Exascale". :vartype storage_management_type: str or ~azure.mgmt.oracledatabase.models.ExadataVmClusterStorageManagementType + :ivar is_accelerated_network_enabled: Indicates if the Accelerated Networking feature is + enabled or disabled for provisioning an Exadata VM cluster. The default value is: false. + :vartype is_accelerated_network_enabled: bool """ ocid: Optional[str] = rest_field(visibility=["read"]) """Cloud VM Cluster ocid.""" + resource_anchor_id: Optional[str] = rest_field(name="resourceAnchorId", visibility=["read", "create"]) + """Azure Resource Anchor ID.""" + network_anchor_id: Optional[str] = rest_field(name="networkAnchorId", visibility=["read", "create"]) + """Azure Network Anchor ID.""" listener_port: Optional[int] = rest_field(name="listenerPort", visibility=["read"]) """The port number configured for the listener on the cloud VM cluster.""" node_count: Optional[int] = rest_field(name="nodeCount", visibility=["read"]) @@ -3519,7 +3896,7 @@ class CloudVmClusterProperties(_Model): `_.""" zone_id: Optional[str] = rest_field(name="zoneId", visibility=["read", "create"]) """The OCID of the zone the cloud VM cluster is associated with.""" - hostname: str = rest_field(visibility=["read", "create"]) + hostname_v2: str = rest_field(name="hostname", visibility=["read", "create"]) """The hostname for the cloud VM cluster. Required.""" domain: Optional[str] = rest_field(visibility=["read", "create"]) """The domain name for the cloud VM cluster.""" @@ -3540,6 +3917,14 @@ class CloudVmClusterProperties(_Model): backups). Accepted values are 35, 40, 60 and 80. The default is 80 percent assigned to DATA storage. See `Storage Configuration `_ in the Exadata documentation for details on the impact of the configuration settings on storage.""" + reco_storage_percentage: Optional[int] = rest_field(name="recoStoragePercentage", visibility=["read", "create"]) + """The percentage assigned to RECO storage (database redo logs, archive logs, and recovery manager + backups). See `Storage Configuration `_ in + the Exadata documentation for details on the impact of the configuration settings on storage.""" + sparse_storage_percentage: Optional[int] = rest_field(name="sparseStoragePercentage", visibility=["read", "create"]) + """The percentage assigned to SPARSE storage (Exadata snapshots). See `Storage Configuration + `_ in the Exadata documentation for details + on the impact of the configuration settings on storage.""" is_local_backup_enabled: Optional[bool] = rest_field(name="isLocalBackupEnabled", visibility=["read", "create"]) """If true, database backup on local Exadata storage is configured for the cloud VM cluster. If false, database backup on local Exadata storage is not available in the cloud VM cluster.""" @@ -3547,6 +3932,10 @@ class CloudVmClusterProperties(_Model): name="cloudExadataInfrastructureId", visibility=["read", "create"] ) """Cloud Exadata Infrastructure ID. Required.""" + proximity_placement_group: Optional["_models.ProximityPlacementGroup"] = rest_field( + name="proximityPlacementGroup", visibility=["read", "create"] + ) + """Proximity placement group settings.""" is_sparse_diskgroup_enabled: Optional[bool] = rest_field( name="isSparseDiskgroupEnabled", visibility=["read", "create"] ) @@ -3579,7 +3968,7 @@ class CloudVmClusterProperties(_Model): (CRS) creates and maintains one VIP address for each node in the Exadata Cloud Service instance to enable failover. If one node fails, the VIP is reassigned to another active node in the cluster. **Note:** For a single-node DB system, this list is empty.""" - scan_dns_name: Optional[str] = rest_field(name="scanDnsName", visibility=["read"]) + scan_dns_name_v2: Optional[str] = rest_field(name="scanDnsName", visibility=["read"]) """The FQDN of the DNS record for the SCAN IP addresses that are associated with the cloud VM cluster.""" scan_listener_port_tcp: Optional[int] = rest_field(name="scanListenerPortTcp", visibility=["read", "create"]) @@ -3646,12 +4035,17 @@ class CloudVmClusterProperties(_Model): ) """Specifies whether the type of storage management for the VM cluster is ASM or Exascale. Known values are: \"ASM\" and \"Exascale\".""" + is_accelerated_network_enabled: Optional[bool] = rest_field( + name="isAcceleratedNetworkEnabled", visibility=["read", "create", "update"] + ) + """Indicates if the Accelerated Networking feature is enabled or disabled for provisioning an + Exadata VM cluster. The default value is: false.""" @overload def __init__( # pylint: disable=too-many-locals self, *, - hostname: str, + hostname_v2: str, cpu_core_count: int, cloud_exadata_infrastructure_id: str, ssh_public_keys: list[str], @@ -3659,6 +4053,8 @@ def __init__( # pylint: disable=too-many-locals gi_version: str, subnet_id: str, display_name: str, + resource_anchor_id: Optional[str] = None, + network_anchor_id: Optional[str] = None, storage_size_in_gbs: Optional[int] = None, file_system_configuration_details: Optional[list["_models.FileSystemConfigurationDetails"]] = None, data_storage_size_in_tbs: Optional[float] = None, @@ -3670,7 +4066,10 @@ def __init__( # pylint: disable=too-many-locals ocpu_count: Optional[float] = None, cluster_name: Optional[str] = None, data_storage_percentage: Optional[int] = None, + reco_storage_percentage: Optional[int] = None, + sparse_storage_percentage: Optional[int] = None, is_local_backup_enabled: Optional[bool] = None, + proximity_placement_group: Optional["_models.ProximityPlacementGroup"] = None, is_sparse_diskgroup_enabled: Optional[bool] = None, system_version: Optional[str] = None, license_model: Optional[Union[str, "_models.LicenseModel"]] = None, @@ -3682,6 +4081,7 @@ def __init__( # pylint: disable=too-many-locals compute_nodes: Optional[list[str]] = None, db_servers: Optional[list[str]] = None, exascale_db_storage_vault_id: Optional[str] = None, + is_accelerated_network_enabled: Optional[bool] = None, ) -> None: ... @overload @@ -3695,7 +4095,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class CloudVmClusterUpdate(_Model): +class CloudVmClusterUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The type used for update operations of the CloudVmCluster. :ivar tags: Resource tags. @@ -3730,7 +4130,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class CloudVmClusterUpdateProperties(_Model): +class CloudVmClusterUpdateProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The updatable properties of the CloudVmCluster. :ivar storage_size_in_gbs: The data disk group size to be allocated in GBs per VM. @@ -3762,6 +4162,9 @@ class CloudVmClusterUpdateProperties(_Model): :vartype display_name: str :ivar compute_nodes: The list of compute servers to be added to the cloud VM cluster. :vartype compute_nodes: list[str] + :ivar is_accelerated_network_enabled: Indicates if the Accelerated Networking feature is + enabled or disabled for provisioning an Exadata VM cluster. The default value is: false. + :vartype is_accelerated_network_enabled: bool """ storage_size_in_gbs: Optional[int] = rest_field(name="storageSizeInGbs", visibility=["read", "update"]) @@ -3811,6 +4214,11 @@ class CloudVmClusterUpdateProperties(_Model): """Display Name.""" compute_nodes: Optional[list[str]] = rest_field(name="computeNodes", visibility=["update"]) """The list of compute servers to be added to the cloud VM cluster.""" + is_accelerated_network_enabled: Optional[bool] = rest_field( + name="isAcceleratedNetworkEnabled", visibility=["read", "create", "update"] + ) + """Indicates if the Accelerated Networking feature is enabled or disabled for provisioning an + Exadata VM cluster. The default value is: false.""" @overload def __init__( @@ -3828,6 +4236,7 @@ def __init__( data_collection_options: Optional["_models.DataCollectionOptions"] = None, display_name: Optional[str] = None, compute_nodes: Optional[list[str]] = None, + is_accelerated_network_enabled: Optional[bool] = None, ) -> None: ... @overload @@ -3841,7 +4250,9 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ConfigureExascaleCloudExadataInfrastructureDetails(_Model): # pylint: disable=name-too-long +class ConfigureExascaleCloudExadataInfrastructureDetails( + _Model +): # pylint: disable=name-too-long,docstring-keyword-should-match-keyword-only """The exascale config request details for the Cloud Exadata infrastructure. :ivar total_storage_in_gbs: Storage size needed for Exascale in GBs. Required. @@ -3871,7 +4282,131 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ConnectionStringType(_Model): +class ConnectionBaseProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """GoldenGate Connection base resource model. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + KafkaConnectionDetails, MicrosoftFabricConnectionDetails, OracleConnectionDetails + + :ivar connection_type: The connection type to be created. Required. Known values are: + "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", + "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", + "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_NOSQL", "MONGODB", + "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", + "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", + and "ICEBERG". + :vartype connection_type: str or ~azure.mgmt.oracledatabase.models.ConnectionType + :ivar display_name: The connection display name. Required. + :vartype display_name: str + :ivar resource_anchor_id: The corresponding resource anchor Azure ID. Required. + :vartype resource_anchor_id: str + :ivar network_anchor_id: The corresponding network anchor Azure ID. Required. + :vartype network_anchor_id: str + :ivar compartment_id: The OCID of the compartment being referenced. + :vartype compartment_id: str + :ivar ocid: The OCID of the connection being referenced. + :vartype ocid: str + :ivar routing_method: Controls the network traffic direction to the target. Known values are: + "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", and "DEDICATED_ENDPOINT". + :vartype routing_method: str or ~azure.mgmt.oracledatabase.models.RoutingMethod + :ivar vault_id: The customer's vault OCID. + :vartype vault_id: str + :ivar key_id: The customer's master key OCID. + :vartype key_id: str + :ivar does_use_secret_ids: Indicates whether secret OCIDs are used for credential fields. + :vartype does_use_secret_ids: bool + :ivar provisioning_state: Connection provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar lifecycle_state: The connection lifecycle state. Known values are: "CREATING", + "UPDATING", "ACTIVE", "DELETING", "DELETED", and "FAILED". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.ConnectionLifecycleState + :ivar lifecycle_details: The description of lifecycle state in detail. + :vartype lifecycle_details: str + :ivar time_created: The date time the resource was created in OCI. + :vartype time_created: str + :ivar time_updated: The date time the resource was last updated in OCI. + :vartype time_updated: str + """ + + __mapping__: dict[str, _Model] = {} + connection_type: str = rest_discriminator( + name="connectionType", visibility=["read", "create", "update", "delete", "query"] + ) + """The connection type to be created. Required. Known values are: \"GOLDENGATE\", \"KAFKA\", + \"KAFKA_SCHEMA_REGISTRY\", \"MYSQL\", \"JAVA_MESSAGE_SERVICE\", \"MICROSOFT_SQLSERVER\", + \"OCI_OBJECT_STORAGE\", \"ORACLE\", \"AZURE_DATA_LAKE_STORAGE\", \"POSTGRESQL\", + \"AZURE_SYNAPSE_ANALYTICS\", \"SNOWFLAKE\", \"AMAZON_S3\", \"HDFS\", \"ORACLE_NOSQL\", + \"MONGODB\", \"AMAZON_KINESIS\", \"AMAZON_REDSHIFT\", \"DB2\", \"REDIS\", \"ELASTICSEARCH\", + \"GENERIC\", \"GOOGLE_CLOUD_STORAGE\", \"GOOGLE_BIGQUERY\", \"DATABRICKS\", \"GOOGLE_PUBSUB\", + \"MICROSOFT_FABRIC\", and \"ICEBERG\".""" + display_name: str = rest_field(name="displayName", visibility=["read", "create", "update", "delete", "query"]) + """The connection display name. Required.""" + resource_anchor_id: str = rest_field(name="resourceAnchorId", visibility=["read", "create"]) + """The corresponding resource anchor Azure ID. Required.""" + network_anchor_id: str = rest_field(name="networkAnchorId", visibility=["read", "create"]) + """The corresponding network anchor Azure ID. Required.""" + compartment_id: Optional[str] = rest_field(name="compartmentId", visibility=["read"]) + """The OCID of the compartment being referenced.""" + ocid: Optional[str] = rest_field(visibility=["read"]) + """The OCID of the connection being referenced.""" + routing_method: Optional[Union[str, "_models.RoutingMethod"]] = rest_field( + name="routingMethod", visibility=["read", "create", "update", "delete", "query"] + ) + """Controls the network traffic direction to the target. Known values are: + \"SHARED_SERVICE_ENDPOINT\", \"SHARED_DEPLOYMENT_ENDPOINT\", and \"DEDICATED_ENDPOINT\".""" + vault_id: Optional[str] = rest_field(name="vaultId", visibility=["read", "create", "update", "delete", "query"]) + """The customer's vault OCID.""" + key_id: Optional[str] = rest_field(name="keyId", visibility=["read", "create", "update", "delete", "query"]) + """The customer's master key OCID.""" + does_use_secret_ids: Optional[bool] = rest_field( + name="doesUseSecretIds", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether secret OCIDs are used for credential fields.""" + provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """Connection provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and + \"Provisioning\".""" + lifecycle_state: Optional[Union[str, "_models.ConnectionLifecycleState"]] = rest_field( + name="lifecycleState", visibility=["read"] + ) + """The connection lifecycle state. Known values are: \"CREATING\", \"UPDATING\", \"ACTIVE\", + \"DELETING\", \"DELETED\", and \"FAILED\".""" + lifecycle_details: Optional[str] = rest_field(name="lifecycleDetails", visibility=["read"]) + """The description of lifecycle state in detail.""" + time_created: Optional[str] = rest_field(name="timeCreated", visibility=["read"]) + """The date time the resource was created in OCI.""" + time_updated: Optional[str] = rest_field(name="timeUpdated", visibility=["read"]) + """The date time the resource was last updated in OCI.""" + + @overload + def __init__( + self, + *, + connection_type: str, + display_name: str, + resource_anchor_id: str, + network_anchor_id: str, + routing_method: Optional[Union[str, "_models.RoutingMethod"]] = None, + vault_id: Optional[str] = None, + key_id: Optional[str] = None, + does_use_secret_ids: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ConnectionStringType(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Connection strings to connect to an Oracle Autonomous Database. :ivar all_connection_strings: Returns all connection strings that can be used to connect to the @@ -3943,7 +4478,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ConnectionUrlType(_Model): +class ConnectionUrlType(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser from a Compute instance within your VCN or that has a direct connection to your VCN. @@ -4014,7 +4549,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class CustomerContact(_Model): +class CustomerContact(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """CustomerContact resource properties. :ivar email: The email address used by Oracle to send notifications regarding databases and @@ -4044,138 +4579,34 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DataCollectionOptions(_Model): - """DataCollectionOptions resource properties. - - :ivar is_diagnostics_events_enabled: Indicates whether diagnostic collection is enabled for the - VM cluster/Cloud VM cluster/VMBM DBCS. - :vartype is_diagnostics_events_enabled: bool - :ivar is_health_monitoring_enabled: Indicates whether health monitoring is enabled for the VM - cluster / Cloud VM cluster / VMBM DBCS. - :vartype is_health_monitoring_enabled: bool - :ivar is_incident_logs_enabled: Indicates whether incident logs and trace collection are - enabled for the VM cluster / Cloud VM cluster / VMBM DBCS. - :vartype is_incident_logs_enabled: bool - """ - - is_diagnostics_events_enabled: Optional[bool] = rest_field( - name="isDiagnosticsEventsEnabled", visibility=["read", "create", "update", "delete", "query"] - ) - """Indicates whether diagnostic collection is enabled for the VM cluster/Cloud VM cluster/VMBM - DBCS.""" - is_health_monitoring_enabled: Optional[bool] = rest_field( - name="isHealthMonitoringEnabled", visibility=["read", "create", "update", "delete", "query"] - ) - """Indicates whether health monitoring is enabled for the VM cluster / Cloud VM cluster / VMBM - DBCS.""" - is_incident_logs_enabled: Optional[bool] = rest_field( - name="isIncidentLogsEnabled", visibility=["read", "create", "update", "delete", "query"] - ) - """Indicates whether incident logs and trace collection are enabled for the VM cluster / Cloud VM - cluster / VMBM DBCS.""" - - @overload - def __init__( - self, - *, - is_diagnostics_events_enabled: Optional[bool] = None, - is_health_monitoring_enabled: Optional[bool] = None, - is_incident_logs_enabled: Optional[bool] = None, - ) -> None: ... - - @overload - def __init__(self, mapping: Mapping[str, Any]) -> None: - """ - :param mapping: raw JSON to initialize the model. - :type mapping: Mapping[str, Any] - """ - - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) - - -class DayOfWeek(_Model): - """DayOfWeek resource properties. - - :ivar name: Name of the day of the week. Required. Known values are: "Monday", "Tuesday", - "Wednesday", "Thursday", "Friday", "Saturday", and "Sunday". - :vartype name: str or ~azure.mgmt.oracledatabase.models.DayOfWeekName - """ - - name: Union[str, "_models.DayOfWeekName"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """Name of the day of the week. Required. Known values are: \"Monday\", \"Tuesday\", - \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\", and \"Sunday\".""" - - @overload - def __init__( - self, - *, - name: Union[str, "_models.DayOfWeekName"], - ) -> None: ... - - @overload - def __init__(self, mapping: Mapping[str, Any]) -> None: - """ - :param mapping: raw JSON to initialize the model. - :type mapping: Mapping[str, Any] - """ - - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) +class DatabaseEdition(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """DatabaseEdition resource definition. - -class DayOfWeekUpdate(_Model): - """DayOfWeek resource properties. - - :ivar name: Name of the day of the week. Known values are: "Monday", "Tuesday", "Wednesday", - "Thursday", "Friday", "Saturday", and "Sunday". - :vartype name: str or ~azure.mgmt.oracledatabase.models.DayOfWeekName + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.DatabaseEditionProperties """ - name: Optional[Union[str, "_models.DayOfWeekName"]] = rest_field( + properties: Optional["_models.DatabaseEditionProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) - """Name of the day of the week. Known values are: \"Monday\", \"Tuesday\", \"Wednesday\", - \"Thursday\", \"Friday\", \"Saturday\", and \"Sunday\".""" - - @overload - def __init__( - self, - *, - name: Optional[Union[str, "_models.DayOfWeekName"]] = None, - ) -> None: ... - - @overload - def __init__(self, mapping: Mapping[str, Any]) -> None: - """ - :param mapping: raw JSON to initialize the model. - :type mapping: Mapping[str, Any] - """ - - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) - - -class DbActionResponse(_Model): - """ExascaleDbNode action response. - - :ivar provisioning_state: ExascaleDbNode provisioning state. Known values are: "Succeeded", - "Failed", "Canceled", and "Provisioning". - :vartype provisioning_state: str or - ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState - """ - - provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( - name="provisioningState", visibility=["read", "create", "update", "delete", "query"] - ) - """ExascaleDbNode provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", - and \"Provisioning\".""" + """The resource-specific properties for this resource.""" @overload def __init__( self, *, - provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = None, + properties: Optional["_models.DatabaseEditionProperties"] = None, ) -> None: ... @overload @@ -4189,35 +4620,27 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbIormConfig(_Model): - """DbIormConfig for cloud vm cluster. +class DatabaseEditionProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DatabaseEdition resource model. - :ivar db_name: The database name. For the default DbPlan, the dbName is default. - :vartype db_name: str - :ivar flash_cache_limit: The flash cache limit for this database. This value is internally - configured based on the share value assigned to the database. - :vartype flash_cache_limit: str - :ivar share: The relative priority of this database. - :vartype share: int + :ivar database_edition: The Oracle database edition. Required. Known values are: + "StandardEdition", "EnterpriseEdition", "EnterpriseEditionHighPerformance", + "EnterpriseEditionExtreme", and "EnterpriseEditionDeveloper". + :vartype database_edition: str or ~azure.mgmt.oracledatabase.models.DbSystemDatabaseEditionType """ - db_name: Optional[str] = rest_field(name="dbName", visibility=["read", "create", "update", "delete", "query"]) - """The database name. For the default DbPlan, the dbName is default.""" - flash_cache_limit: Optional[str] = rest_field( - name="flashCacheLimit", visibility=["read", "create", "update", "delete", "query"] + database_edition: Union[str, "_models.DbSystemDatabaseEditionType"] = rest_field( + name="databaseEdition", visibility=["read", "create", "update", "delete", "query"] ) - """The flash cache limit for this database. This value is internally configured based on the share - value assigned to the database.""" - share: Optional[int] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The relative priority of this database.""" + """The Oracle database edition. Required. Known values are: \"StandardEdition\", + \"EnterpriseEdition\", \"EnterpriseEditionHighPerformance\", \"EnterpriseEditionExtreme\", and + \"EnterpriseEditionDeveloper\".""" @overload def __init__( self, *, - db_name: Optional[str] = None, - flash_cache_limit: Optional[str] = None, - share: Optional[int] = None, + database_edition: Union[str, "_models.DbSystemDatabaseEditionType"], ) -> None: ... @overload @@ -4231,8 +4654,8 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbNode(ProxyResource): - """The DbNode resource belonging to vmCluster. +class DatabaseSystemShape(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """DatabaseSystemShape resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. @@ -4246,10 +4669,10 @@ class DbNode(ProxyResource): information. :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.DbNodeProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.DatabaseSystemShapeProperties """ - properties: Optional["_models.DbNodeProperties"] = rest_field( + properties: Optional["_models.DatabaseSystemShapeProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" @@ -4258,7 +4681,7 @@ class DbNode(ProxyResource): def __init__( self, *, - properties: Optional["_models.DbNodeProperties"] = None, + properties: Optional["_models.DatabaseSystemShapeProperties"] = None, ) -> None: ... @overload @@ -4272,52 +4695,208 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbNodeAction(_Model): - """DbNode action object. +class DatabaseSystemShapeProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DatabaseSystemShape resource model. - :ivar action: Db action. Required. Known values are: "Start", "Stop", "SoftReset", and "Reset". - :vartype action: str or ~azure.mgmt.oracledatabase.models.DbNodeActionEnum + :ivar shape_family: The family of the shape used for the DB system. + :vartype shape_family: str + :ivar shape_name: The shape used for the DB system. Required. + :vartype shape_name: str + :ivar available_core_count: The maximum number of CPU cores that can be enabled on the DB + system for this shape. Required. + :vartype available_core_count: int + :ivar minimum_core_count: The minimum number of CPU cores that can be enabled on the DB system + for this shape. + :vartype minimum_core_count: int + :ivar runtime_minimum_core_count: The runtime minimum number of CPU cores that can be enabled + on the DB system for this shape. + :vartype runtime_minimum_core_count: int + :ivar core_count_increment: The discrete number by which the CPU core count for this shape can + be increased or decreased. + :vartype core_count_increment: int + :ivar min_storage_count: The minimum number of Exadata storage servers available for the + Exadata infrastructure. + :vartype min_storage_count: int + :ivar max_storage_count: The maximum number of Exadata storage servers available for the + Exadata infrastructure. + :vartype max_storage_count: int + :ivar available_data_storage_per_server_in_tbs: The maximum data storage available per storage + server for this shape. Only applicable to ExaCC Elastic shapes. + :vartype available_data_storage_per_server_in_tbs: float + :ivar available_memory_per_node_in_gbs: The maximum memory available per database node for this + shape. Only applicable to ExaCC Elastic shapes. + :vartype available_memory_per_node_in_gbs: int + :ivar available_db_node_per_node_in_gbs: The maximum Db Node storage available per database + node for this shape. Only applicable to ExaCC Elastic shapes. + :vartype available_db_node_per_node_in_gbs: int + :ivar min_core_count_per_node: The minimum number of CPU cores that can be enabled per node for + this shape. + :vartype min_core_count_per_node: int + :ivar available_memory_in_gbs: The maximum memory that can be enabled for this shape. + :vartype available_memory_in_gbs: int + :ivar min_memory_per_node_in_gbs: The minimum memory that need be allocated per node for this + shape. + :vartype min_memory_per_node_in_gbs: int + :ivar available_db_node_storage_in_gbs: The maximum Db Node storage that can be enabled for + this shape. + :vartype available_db_node_storage_in_gbs: int + :ivar min_db_node_storage_per_node_in_gbs: The minimum Db Node storage that need be allocated + per node for this shape. + :vartype min_db_node_storage_per_node_in_gbs: int + :ivar available_data_storage_in_tbs: The maximum DATA storage that can be enabled for this + shape. + :vartype available_data_storage_in_tbs: int + :ivar min_data_storage_in_tbs: The minimum data storage that need be allocated for this shape. + :vartype min_data_storage_in_tbs: int + :ivar minimum_node_count: The minimum number of database nodes available for this shape. + :vartype minimum_node_count: int + :ivar maximum_node_count: The maximum number of database nodes available for this shape. + :vartype maximum_node_count: int + :ivar available_core_count_per_node: The maximum number of CPU cores per database node that can + be enabled for this shape. Only applicable to the flex Exadata shape and ExaCC Elastic shapes. + :vartype available_core_count_per_node: int + :ivar compute_model: The compute model of the DB system for this shape. Known values are: + "ECPU" and "OCPU". + :vartype compute_model: str or ~azure.mgmt.oracledatabase.models.ComputeModel + :ivar are_server_types_supported: Indicates if the shape supports database and storage server + types. + :vartype are_server_types_supported: bool + :ivar display_name: The display name of the shape used for the DB system. + :vartype display_name: str + :ivar shape_attributes: The shapeAttributes of the DB system shape.. + :vartype shape_attributes: list[str] """ - action: Union[str, "_models.DbNodeActionEnum"] = rest_field( - visibility=["read", "create", "update", "delete", "query"] + shape_family: Optional[str] = rest_field( + name="shapeFamily", visibility=["read", "create", "update", "delete", "query"] ) - """Db action. Required. Known values are: \"Start\", \"Stop\", \"SoftReset\", and \"Reset\".""" - - @overload - def __init__( - self, - *, - action: Union[str, "_models.DbNodeActionEnum"], - ) -> None: ... - - @overload - def __init__(self, mapping: Mapping[str, Any]) -> None: - """ - :param mapping: raw JSON to initialize the model. - :type mapping: Mapping[str, Any] - """ - - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) - - -class DbNodeDetails(_Model): - """Details of the ExaCS Db node. Applies to Exadata Database Service on Exascale Infrastructure - only. - - :ivar db_node_id: Exascale DbNode Azure Resource ID. Required. - :vartype db_node_id: str - """ - - db_node_id: str = rest_field(name="dbNodeId", visibility=["read", "create", "update", "delete", "query"]) - """Exascale DbNode Azure Resource ID. Required.""" + """The family of the shape used for the DB system.""" + shape_name: str = rest_field(name="shapeName", visibility=["read", "create", "update", "delete", "query"]) + """The shape used for the DB system. Required.""" + available_core_count: int = rest_field( + name="availableCoreCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum number of CPU cores that can be enabled on the DB system for this shape. Required.""" + minimum_core_count: Optional[int] = rest_field( + name="minimumCoreCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum number of CPU cores that can be enabled on the DB system for this shape.""" + runtime_minimum_core_count: Optional[int] = rest_field( + name="runtimeMinimumCoreCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The runtime minimum number of CPU cores that can be enabled on the DB system for this shape.""" + core_count_increment: Optional[int] = rest_field( + name="coreCountIncrement", visibility=["read", "create", "update", "delete", "query"] + ) + """The discrete number by which the CPU core count for this shape can be increased or decreased.""" + min_storage_count: Optional[int] = rest_field( + name="minStorageCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum number of Exadata storage servers available for the Exadata infrastructure.""" + max_storage_count: Optional[int] = rest_field( + name="maxStorageCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum number of Exadata storage servers available for the Exadata infrastructure.""" + available_data_storage_per_server_in_tbs: Optional[float] = rest_field( + name="availableDataStoragePerServerInTbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum data storage available per storage server for this shape. Only applicable to ExaCC + Elastic shapes.""" + available_memory_per_node_in_gbs: Optional[int] = rest_field( + name="availableMemoryPerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum memory available per database node for this shape. Only applicable to ExaCC Elastic + shapes.""" + available_db_node_per_node_in_gbs: Optional[int] = rest_field( + name="availableDbNodePerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum Db Node storage available per database node for this shape. Only applicable to + ExaCC Elastic shapes.""" + min_core_count_per_node: Optional[int] = rest_field( + name="minCoreCountPerNode", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum number of CPU cores that can be enabled per node for this shape.""" + available_memory_in_gbs: Optional[int] = rest_field( + name="availableMemoryInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum memory that can be enabled for this shape.""" + min_memory_per_node_in_gbs: Optional[int] = rest_field( + name="minMemoryPerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum memory that need be allocated per node for this shape.""" + available_db_node_storage_in_gbs: Optional[int] = rest_field( + name="availableDbNodeStorageInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum Db Node storage that can be enabled for this shape.""" + min_db_node_storage_per_node_in_gbs: Optional[int] = rest_field( + name="minDbNodeStoragePerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum Db Node storage that need be allocated per node for this shape.""" + available_data_storage_in_tbs: Optional[int] = rest_field( + name="availableDataStorageInTbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum DATA storage that can be enabled for this shape.""" + min_data_storage_in_tbs: Optional[int] = rest_field( + name="minDataStorageInTbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum data storage that need be allocated for this shape.""" + minimum_node_count: Optional[int] = rest_field( + name="minimumNodeCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum number of database nodes available for this shape.""" + maximum_node_count: Optional[int] = rest_field( + name="maximumNodeCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum number of database nodes available for this shape.""" + available_core_count_per_node: Optional[int] = rest_field( + name="availableCoreCountPerNode", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum number of CPU cores per database node that can be enabled for this shape. Only + applicable to the flex Exadata shape and ExaCC Elastic shapes.""" + compute_model: Optional[Union[str, "_models.ComputeModel"]] = rest_field( + name="computeModel", visibility=["read", "create", "update", "delete", "query"] + ) + """The compute model of the DB system for this shape. Known values are: \"ECPU\" and \"OCPU\".""" + are_server_types_supported: Optional[bool] = rest_field( + name="areServerTypesSupported", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates if the shape supports database and storage server types.""" + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """The display name of the shape used for the DB system.""" + shape_attributes: Optional[list[str]] = rest_field(name="shapeAttributes", visibility=["read", "create"]) + """The shapeAttributes of the DB system shape..""" @overload def __init__( self, *, - db_node_id: str, + shape_name: str, + available_core_count: int, + shape_family: Optional[str] = None, + minimum_core_count: Optional[int] = None, + runtime_minimum_core_count: Optional[int] = None, + core_count_increment: Optional[int] = None, + min_storage_count: Optional[int] = None, + max_storage_count: Optional[int] = None, + available_data_storage_per_server_in_tbs: Optional[float] = None, + available_memory_per_node_in_gbs: Optional[int] = None, + available_db_node_per_node_in_gbs: Optional[int] = None, + min_core_count_per_node: Optional[int] = None, + available_memory_in_gbs: Optional[int] = None, + min_memory_per_node_in_gbs: Optional[int] = None, + available_db_node_storage_in_gbs: Optional[int] = None, + min_db_node_storage_per_node_in_gbs: Optional[int] = None, + available_data_storage_in_tbs: Optional[int] = None, + min_data_storage_in_tbs: Optional[int] = None, + minimum_node_count: Optional[int] = None, + maximum_node_count: Optional[int] = None, + available_core_count_per_node: Optional[int] = None, + compute_model: Optional[Union[str, "_models.ComputeModel"]] = None, + are_server_types_supported: Optional[bool] = None, + display_name: Optional[str] = None, + shape_attributes: Optional[list[str]] = None, ) -> None: ... @overload @@ -4331,172 +4910,1490 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbNodeProperties(_Model): - """The properties of DbNodeResource. +class DataCollectionOptions(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DataCollectionOptions resource properties. - :ivar ocid: DbNode OCID. Required. - :vartype ocid: str - :ivar additional_details: Additional information about the planned maintenance. - :vartype additional_details: str - :ivar backup_ip_id: The OCID of the backup IP address associated with the database node. - :vartype backup_ip_id: str - :ivar backup_vnic2_id: The OCID of the second backup VNIC. - :vartype backup_vnic2_id: str - :ivar backup_vnic_id: The OCID of the backup VNIC. - :vartype backup_vnic_id: str - :ivar cpu_core_count: The number of CPU cores enabled on the Db node. - :vartype cpu_core_count: int - :ivar db_node_storage_size_in_gbs: The allocated local node storage in GBs on the Db node. - :vartype db_node_storage_size_in_gbs: int - :ivar db_server_id: The OCID of the Exacc Db server associated with the database node. - :vartype db_server_id: str - :ivar db_system_id: The OCID of the DB system. Required. - :vartype db_system_id: str - :ivar fault_domain: The name of the Fault Domain the instance is contained in. - :vartype fault_domain: str - :ivar host_ip_id: The OCID of the host IP address associated with the database node. - :vartype host_ip_id: str - :ivar hostname: The host name for the database node. - :vartype hostname: str - :ivar lifecycle_state: The current state of the database node. Required. Known values are: - "Provisioning", "Available", "Updating", "Stopping", "Stopped", "Starting", "Terminating", - "Terminated", and "Failed". - :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbNodeProvisioningState - :ivar lifecycle_details: Lifecycle details of Db Node. - :vartype lifecycle_details: str - :ivar maintenance_type: The type of database node maintenance. "VmdbRebootMigration" - :vartype maintenance_type: str or ~azure.mgmt.oracledatabase.models.DbNodeMaintenanceType - :ivar memory_size_in_gbs: The allocated memory in GBs on the Db node. - :vartype memory_size_in_gbs: int - :ivar software_storage_size_in_gb: The size (in GB) of the block storage volume allocation for - the DB system. This attribute applies only for virtual machine DB systems. - :vartype software_storage_size_in_gb: int - :ivar time_created: The date and time that the database node was created. Required. - :vartype time_created: ~datetime.datetime - :ivar time_maintenance_window_end: End date and time of maintenance window. - :vartype time_maintenance_window_end: ~datetime.datetime - :ivar time_maintenance_window_start: Start date and time of maintenance window. - :vartype time_maintenance_window_start: ~datetime.datetime - :ivar vnic2_id: The OCID of the second VNIC. - :vartype vnic2_id: str - :ivar vnic_id: The OCID of the VNIC. Required. - :vartype vnic_id: str - :ivar provisioning_state: Azure resource provisioning state. Known values are: "Succeeded", - "Failed", and "Canceled". - :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.ResourceProvisioningState + :ivar is_diagnostics_events_enabled: Indicates whether diagnostic collection is enabled for the + VM cluster/Cloud VM cluster/VMBM DBCS. + :vartype is_diagnostics_events_enabled: bool + :ivar is_health_monitoring_enabled: Indicates whether health monitoring is enabled for the VM + cluster / Cloud VM cluster / VMBM DBCS. + :vartype is_health_monitoring_enabled: bool + :ivar is_incident_logs_enabled: Indicates whether incident logs and trace collection are + enabled for the VM cluster / Cloud VM cluster / VMBM DBCS. + :vartype is_incident_logs_enabled: bool """ - ocid: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """DbNode OCID. Required.""" - additional_details: Optional[str] = rest_field( - name="additionalDetails", visibility=["read", "create", "update", "delete", "query"] - ) - """Additional information about the planned maintenance.""" - backup_ip_id: Optional[str] = rest_field( - name="backupIpId", visibility=["read", "create", "update", "delete", "query"] - ) - """The OCID of the backup IP address associated with the database node.""" - backup_vnic2_id: Optional[str] = rest_field( - name="backupVnic2Id", visibility=["read", "create", "update", "delete", "query"] - ) - """The OCID of the second backup VNIC.""" - backup_vnic_id: Optional[str] = rest_field( - name="backupVnicId", visibility=["read", "create", "update", "delete", "query"] - ) - """The OCID of the backup VNIC.""" - cpu_core_count: Optional[int] = rest_field( - name="cpuCoreCount", visibility=["read", "create", "update", "delete", "query"] - ) - """The number of CPU cores enabled on the Db node.""" - db_node_storage_size_in_gbs: Optional[int] = rest_field( - name="dbNodeStorageSizeInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """The allocated local node storage in GBs on the Db node.""" - db_server_id: Optional[str] = rest_field( - name="dbServerId", visibility=["read", "create", "update", "delete", "query"] - ) - """The OCID of the Exacc Db server associated with the database node.""" - db_system_id: str = rest_field(name="dbSystemId", visibility=["read", "create", "update", "delete", "query"]) - """The OCID of the DB system. Required.""" - fault_domain: Optional[str] = rest_field( - name="faultDomain", visibility=["read", "create", "update", "delete", "query"] - ) - """The name of the Fault Domain the instance is contained in.""" - host_ip_id: Optional[str] = rest_field(name="hostIpId", visibility=["read", "create", "update", "delete", "query"]) - """The OCID of the host IP address associated with the database node.""" - hostname: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The host name for the database node.""" - lifecycle_state: Union[str, "_models.DbNodeProvisioningState"] = rest_field( - name="lifecycleState", visibility=["read", "create", "update", "delete", "query"] - ) - """The current state of the database node. Required. Known values are: \"Provisioning\", - \"Available\", \"Updating\", \"Stopping\", \"Stopped\", \"Starting\", \"Terminating\", - \"Terminated\", and \"Failed\".""" - lifecycle_details: Optional[str] = rest_field( - name="lifecycleDetails", visibility=["read", "create", "update", "delete", "query"] - ) - """Lifecycle details of Db Node.""" - maintenance_type: Optional[Union[str, "_models.DbNodeMaintenanceType"]] = rest_field( - name="maintenanceType", visibility=["read", "create", "update", "delete", "query"] + is_diagnostics_events_enabled: Optional[bool] = rest_field( + name="isDiagnosticsEventsEnabled", visibility=["read", "create", "update", "delete", "query"] ) - """The type of database node maintenance. \"VmdbRebootMigration\"""" - memory_size_in_gbs: Optional[int] = rest_field( - name="memorySizeInGbs", visibility=["read", "create", "update", "delete", "query"] + """Indicates whether diagnostic collection is enabled for the VM cluster/Cloud VM cluster/VMBM + DBCS.""" + is_health_monitoring_enabled: Optional[bool] = rest_field( + name="isHealthMonitoringEnabled", visibility=["read", "create", "update", "delete", "query"] ) - """The allocated memory in GBs on the Db node.""" - software_storage_size_in_gb: Optional[int] = rest_field( - name="softwareStorageSizeInGb", visibility=["read", "create", "update", "delete", "query"] + """Indicates whether health monitoring is enabled for the VM cluster / Cloud VM cluster / VMBM + DBCS.""" + is_incident_logs_enabled: Optional[bool] = rest_field( + name="isIncidentLogsEnabled", visibility=["read", "create", "update", "delete", "query"] ) - """The size (in GB) of the block storage volume allocation for the DB system. This attribute - applies only for virtual machine DB systems.""" - time_created: datetime.datetime = rest_field( + """Indicates whether incident logs and trace collection are enabled for the VM cluster / Cloud VM + cluster / VMBM DBCS.""" + + @overload + def __init__( + self, + *, + is_diagnostics_events_enabled: Optional[bool] = None, + is_health_monitoring_enabled: Optional[bool] = None, + is_incident_logs_enabled: Optional[bool] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DayOfWeek(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DayOfWeek resource properties. + + :ivar name: Name of the day of the week. Required. Known values are: "Monday", "Tuesday", + "Wednesday", "Thursday", "Friday", "Saturday", and "Sunday". + :vartype name: str or ~azure.mgmt.oracledatabase.models.DayOfWeekName + """ + + name: Union[str, "_models.DayOfWeekName"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Name of the day of the week. Required. Known values are: \"Monday\", \"Tuesday\", + \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\", and \"Sunday\".""" + + @overload + def __init__( + self, + *, + name: Union[str, "_models.DayOfWeekName"], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DayOfWeekUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DayOfWeek resource properties. + + :ivar name: Name of the day of the week. Known values are: "Monday", "Tuesday", "Wednesday", + "Thursday", "Friday", "Saturday", and "Sunday". + :vartype name: str or ~azure.mgmt.oracledatabase.models.DayOfWeekName + """ + + name: Optional[Union[str, "_models.DayOfWeekName"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Name of the day of the week. Known values are: \"Monday\", \"Tuesday\", \"Wednesday\", + \"Thursday\", \"Friday\", \"Saturday\", and \"Sunday\".""" + + @overload + def __init__( + self, + *, + name: Optional[Union[str, "_models.DayOfWeekName"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbActionResponse(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """ExascaleDbNode action response. + + :ivar provisioning_state: ExascaleDbNode provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + """ + + provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read", "create", "update", "delete", "query"] + ) + """ExascaleDbNode provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + + @overload + def __init__( + self, + *, + provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbIormConfig(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbIormConfig for cloud vm cluster. + + :ivar db_name: The database name. For the default DbPlan, the dbName is default. + :vartype db_name: str + :ivar flash_cache_limit: The flash cache limit for this database. This value is internally + configured based on the share value assigned to the database. + :vartype flash_cache_limit: str + :ivar share: The relative priority of this database. + :vartype share: int + """ + + db_name: Optional[str] = rest_field(name="dbName", visibility=["read", "create", "update", "delete", "query"]) + """The database name. For the default DbPlan, the dbName is default.""" + flash_cache_limit: Optional[str] = rest_field( + name="flashCacheLimit", visibility=["read", "create", "update", "delete", "query"] + ) + """The flash cache limit for this database. This value is internally configured based on the share + value assigned to the database.""" + share: Optional[int] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The relative priority of this database.""" + + @overload + def __init__( + self, + *, + db_name: Optional[str] = None, + flash_cache_limit: Optional[str] = None, + share: Optional[int] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbNode(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """The DbNode resource belonging to vmCluster. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.DbNodeProperties + """ + + properties: Optional["_models.DbNodeProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The resource-specific properties for this resource.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.DbNodeProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbNodeAction(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbNode action object. + + :ivar action: Db action. Required. Known values are: "Start", "Stop", "SoftReset", and "Reset". + :vartype action: str or ~azure.mgmt.oracledatabase.models.DbNodeActionEnum + """ + + action: Union[str, "_models.DbNodeActionEnum"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """Db action. Required. Known values are: \"Start\", \"Stop\", \"SoftReset\", and \"Reset\".""" + + @overload + def __init__( + self, + *, + action: Union[str, "_models.DbNodeActionEnum"], + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbNodeDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Details of the ExaCS Db node. Applies to Exadata Database Service on Exascale Infrastructure + only. + + :ivar db_node_id: Exascale DbNode Azure Resource ID. Required. + :vartype db_node_id: str + """ + + db_node_id: str = rest_field(name="dbNodeId", visibility=["read", "create", "update", "delete", "query"]) + """Exascale DbNode Azure Resource ID. Required.""" + + @overload + def __init__( + self, + *, + db_node_id: str, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbNodeProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The properties of DbNodeResource. + + :ivar ocid: DbNode OCID. Required. + :vartype ocid: str + :ivar additional_details: Additional information about the planned maintenance. + :vartype additional_details: str + :ivar backup_ip_id: The OCID of the backup IP address associated with the database node. + :vartype backup_ip_id: str + :ivar backup_vnic2_id: The OCID of the second backup VNIC. + :vartype backup_vnic2_id: str + :ivar backup_vnic_id: The OCID of the backup VNIC. + :vartype backup_vnic_id: str + :ivar cpu_core_count: The number of CPU cores enabled on the Db node. + :vartype cpu_core_count: int + :ivar db_node_storage_size_in_gbs: The allocated local node storage in GBs on the Db node. + :vartype db_node_storage_size_in_gbs: int + :ivar db_server_id: The OCID of the Exacc Db server associated with the database node. + :vartype db_server_id: str + :ivar db_system_id: The OCID of the DB system. Required. + :vartype db_system_id: str + :ivar fault_domain: The name of the Fault Domain the instance is contained in. + :vartype fault_domain: str + :ivar host_ip_id: The OCID of the host IP address associated with the database node. + :vartype host_ip_id: str + :ivar hostname: The host name for the database node. + :vartype hostname: str + :ivar lifecycle_state: The current state of the database node. Required. Known values are: + "Provisioning", "Available", "Updating", "Stopping", "Stopped", "Starting", "Terminating", + "Terminated", and "Failed". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbNodeProvisioningState + :ivar lifecycle_details: Lifecycle details of Db Node. + :vartype lifecycle_details: str + :ivar maintenance_type: The type of database node maintenance. "VmdbRebootMigration" + :vartype maintenance_type: str or ~azure.mgmt.oracledatabase.models.DbNodeMaintenanceType + :ivar memory_size_in_gbs: The allocated memory in GBs on the Db node. + :vartype memory_size_in_gbs: int + :ivar software_storage_size_in_gb: The size (in GB) of the block storage volume allocation for + the DB system. This attribute applies only for virtual machine DB systems. + :vartype software_storage_size_in_gb: int + :ivar time_created: The date and time that the database node was created. Required. + :vartype time_created: ~datetime.datetime + :ivar time_maintenance_window_end: End date and time of maintenance window. + :vartype time_maintenance_window_end: ~datetime.datetime + :ivar time_maintenance_window_start: Start date and time of maintenance window. + :vartype time_maintenance_window_start: ~datetime.datetime + :ivar vnic2_id: The OCID of the second VNIC. + :vartype vnic2_id: str + :ivar vnic_id: The OCID of the VNIC. Required. + :vartype vnic_id: str + :ivar provisioning_state: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", and "Canceled". + :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.ResourceProvisioningState + """ + + ocid: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """DbNode OCID. Required.""" + additional_details: Optional[str] = rest_field( + name="additionalDetails", visibility=["read", "create", "update", "delete", "query"] + ) + """Additional information about the planned maintenance.""" + backup_ip_id: Optional[str] = rest_field( + name="backupIpId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the backup IP address associated with the database node.""" + backup_vnic2_id: Optional[str] = rest_field( + name="backupVnic2Id", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the second backup VNIC.""" + backup_vnic_id: Optional[str] = rest_field( + name="backupVnicId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the backup VNIC.""" + cpu_core_count: Optional[int] = rest_field( + name="cpuCoreCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of CPU cores enabled on the Db node.""" + db_node_storage_size_in_gbs: Optional[int] = rest_field( + name="dbNodeStorageSizeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The allocated local node storage in GBs on the Db node.""" + db_server_id: Optional[str] = rest_field( + name="dbServerId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Exacc Db server associated with the database node.""" + db_system_id: str = rest_field(name="dbSystemId", visibility=["read", "create", "update", "delete", "query"]) + """The OCID of the DB system. Required.""" + fault_domain: Optional[str] = rest_field( + name="faultDomain", visibility=["read", "create", "update", "delete", "query"] + ) + """The name of the Fault Domain the instance is contained in.""" + host_ip_id: Optional[str] = rest_field(name="hostIpId", visibility=["read", "create", "update", "delete", "query"]) + """The OCID of the host IP address associated with the database node.""" + hostname: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The host name for the database node.""" + lifecycle_state: Union[str, "_models.DbNodeProvisioningState"] = rest_field( + name="lifecycleState", visibility=["read", "create", "update", "delete", "query"] + ) + """The current state of the database node. Required. Known values are: \"Provisioning\", + \"Available\", \"Updating\", \"Stopping\", \"Stopped\", \"Starting\", \"Terminating\", + \"Terminated\", and \"Failed\".""" + lifecycle_details: Optional[str] = rest_field( + name="lifecycleDetails", visibility=["read", "create", "update", "delete", "query"] + ) + """Lifecycle details of Db Node.""" + maintenance_type: Optional[Union[str, "_models.DbNodeMaintenanceType"]] = rest_field( + name="maintenanceType", visibility=["read", "create", "update", "delete", "query"] + ) + """The type of database node maintenance. \"VmdbRebootMigration\"""" + memory_size_in_gbs: Optional[int] = rest_field( + name="memorySizeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The allocated memory in GBs on the Db node.""" + software_storage_size_in_gb: Optional[int] = rest_field( + name="softwareStorageSizeInGb", visibility=["read", "create", "update", "delete", "query"] + ) + """The size (in GB) of the block storage volume allocation for the DB system. This attribute + applies only for virtual machine DB systems.""" + time_created: datetime.datetime = rest_field( name="timeCreated", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" ) - """The date and time that the database node was created. Required.""" - time_maintenance_window_end: Optional[datetime.datetime] = rest_field( - name="timeMaintenanceWindowEnd", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + """The date and time that the database node was created. Required.""" + time_maintenance_window_end: Optional[datetime.datetime] = rest_field( + name="timeMaintenanceWindowEnd", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """End date and time of maintenance window.""" + time_maintenance_window_start: Optional[datetime.datetime] = rest_field( + name="timeMaintenanceWindowStart", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """Start date and time of maintenance window.""" + vnic2_id: Optional[str] = rest_field(name="vnic2Id", visibility=["read", "create", "update", "delete", "query"]) + """The OCID of the second VNIC.""" + vnic_id: str = rest_field(name="vnicId", visibility=["read", "create", "update", "delete", "query"]) + """The OCID of the VNIC. Required.""" + provisioning_state: Optional[Union[str, "_models.ResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", and + \"Canceled\".""" + + @overload + def __init__( + self, + *, + ocid: str, + db_system_id: str, + lifecycle_state: Union[str, "_models.DbNodeProvisioningState"], + time_created: datetime.datetime, + vnic_id: str, + additional_details: Optional[str] = None, + backup_ip_id: Optional[str] = None, + backup_vnic2_id: Optional[str] = None, + backup_vnic_id: Optional[str] = None, + cpu_core_count: Optional[int] = None, + db_node_storage_size_in_gbs: Optional[int] = None, + db_server_id: Optional[str] = None, + fault_domain: Optional[str] = None, + host_ip_id: Optional[str] = None, + hostname: Optional[str] = None, + lifecycle_details: Optional[str] = None, + maintenance_type: Optional[Union[str, "_models.DbNodeMaintenanceType"]] = None, + memory_size_in_gbs: Optional[int] = None, + software_storage_size_in_gb: Optional[int] = None, + time_maintenance_window_end: Optional[datetime.datetime] = None, + time_maintenance_window_start: Optional[datetime.datetime] = None, + vnic2_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbServer(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbServer resource model. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.DbServerProperties + """ + + properties: Optional["_models.DbServerProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The resource-specific properties for this resource.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.DbServerProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbServerPatchingDetails(_Model): + """DbServer Patching Properties. + + :ivar estimated_patch_duration: Estimated Patch Duration. + :vartype estimated_patch_duration: int + :ivar patching_status: Patching Status. Known values are: "Scheduled", "MaintenanceInProgress", + "Failed", and "Complete". + :vartype patching_status: str or ~azure.mgmt.oracledatabase.models.DbServerPatchingStatus + :ivar time_patching_ended: Time Patching Ended. + :vartype time_patching_ended: ~datetime.datetime + :ivar time_patching_started: Time Patching Started. + :vartype time_patching_started: ~datetime.datetime + """ + + estimated_patch_duration: Optional[int] = rest_field(name="estimatedPatchDuration", visibility=["read"]) + """Estimated Patch Duration.""" + patching_status: Optional[Union[str, "_models.DbServerPatchingStatus"]] = rest_field( + name="patchingStatus", visibility=["read"] + ) + """Patching Status. Known values are: \"Scheduled\", \"MaintenanceInProgress\", \"Failed\", and + \"Complete\".""" + time_patching_ended: Optional[datetime.datetime] = rest_field( + name="timePatchingEnded", visibility=["read"], format="rfc3339" + ) + """Time Patching Ended.""" + time_patching_started: Optional[datetime.datetime] = rest_field( + name="timePatchingStarted", visibility=["read"], format="rfc3339" + ) + """Time Patching Started.""" + + +class DbServerProperties(_Model): + """DbServer resource properties. + + :ivar ocid: Db server name. + :vartype ocid: str + :ivar display_name: The name for the Db Server. + :vartype display_name: str + :ivar compartment_id: The OCID of the compartment. + :vartype compartment_id: str + :ivar exadata_infrastructure_id: The OCID of the Exadata infrastructure. + :vartype exadata_infrastructure_id: str + :ivar cpu_core_count: The number of CPU cores enabled on the Db server. + :vartype cpu_core_count: int + :ivar db_server_patching_details: dbServerPatching details of the Db server. + :vartype db_server_patching_details: ~azure.mgmt.oracledatabase.models.DbServerPatchingDetails + :ivar max_memory_in_gbs: The total memory available in GBs. + :vartype max_memory_in_gbs: int + :ivar db_node_storage_size_in_gbs: The allocated local node storage in GBs on the Db server. + :vartype db_node_storage_size_in_gbs: int + :ivar vm_cluster_ids: The OCID of the VM Clusters associated with the Db server. + :vartype vm_cluster_ids: list[str] + :ivar db_node_ids: The OCID of the Db nodes associated with the Db server. + :vartype db_node_ids: list[str] + :ivar lifecycle_details: Lifecycle details of dbServer. + :vartype lifecycle_details: str + :ivar lifecycle_state: DbServer provisioning state. Known values are: "Creating", "Available", + "Unavailable", "Deleting", "Deleted", and "MaintenanceInProgress". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbServerProvisioningState + :ivar max_cpu_count: The total number of CPU cores available. + :vartype max_cpu_count: int + :ivar autonomous_vm_cluster_ids: The list of OCIDs of the Autonomous VM Clusters associated + with the Db server. + :vartype autonomous_vm_cluster_ids: list[str] + :ivar autonomous_virtual_machine_ids: The list of OCIDs of the Autonomous Virtual Machines + associated with the Db server. + :vartype autonomous_virtual_machine_ids: list[str] + :ivar max_db_node_storage_in_gbs: The total max dbNode storage in GBs. + :vartype max_db_node_storage_in_gbs: int + :ivar memory_size_in_gbs: The total memory size in GBs. + :vartype memory_size_in_gbs: int + :ivar shape: The shape of the Db server. The shape determines the amount of CPU, storage, and + memory resources available. + :vartype shape: str + :ivar time_created: The date and time that the Db Server was created. + :vartype time_created: ~datetime.datetime + :ivar provisioning_state: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", and "Canceled". + :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.ResourceProvisioningState + :ivar compute_model: The compute model of the Exadata Infrastructure. Known values are: "ECPU" + and "OCPU". + :vartype compute_model: str or ~azure.mgmt.oracledatabase.models.ComputeModel + """ + + ocid: Optional[str] = rest_field(visibility=["read"]) + """Db server name.""" + display_name: Optional[str] = rest_field(name="displayName", visibility=["read"]) + """The name for the Db Server.""" + compartment_id: Optional[str] = rest_field(name="compartmentId", visibility=["read"]) + """The OCID of the compartment.""" + exadata_infrastructure_id: Optional[str] = rest_field(name="exadataInfrastructureId", visibility=["read"]) + """The OCID of the Exadata infrastructure.""" + cpu_core_count: Optional[int] = rest_field(name="cpuCoreCount", visibility=["read"]) + """The number of CPU cores enabled on the Db server.""" + db_server_patching_details: Optional["_models.DbServerPatchingDetails"] = rest_field( + name="dbServerPatchingDetails", visibility=["read"] + ) + """dbServerPatching details of the Db server.""" + max_memory_in_gbs: Optional[int] = rest_field(name="maxMemoryInGbs", visibility=["read"]) + """The total memory available in GBs.""" + db_node_storage_size_in_gbs: Optional[int] = rest_field(name="dbNodeStorageSizeInGbs", visibility=["read"]) + """The allocated local node storage in GBs on the Db server.""" + vm_cluster_ids: Optional[list[str]] = rest_field(name="vmClusterIds", visibility=["read"]) + """The OCID of the VM Clusters associated with the Db server.""" + db_node_ids: Optional[list[str]] = rest_field(name="dbNodeIds", visibility=["read"]) + """The OCID of the Db nodes associated with the Db server.""" + lifecycle_details: Optional[str] = rest_field(name="lifecycleDetails", visibility=["read"]) + """Lifecycle details of dbServer.""" + lifecycle_state: Optional[Union[str, "_models.DbServerProvisioningState"]] = rest_field( + name="lifecycleState", visibility=["read"] + ) + """DbServer provisioning state. Known values are: \"Creating\", \"Available\", \"Unavailable\", + \"Deleting\", \"Deleted\", and \"MaintenanceInProgress\".""" + max_cpu_count: Optional[int] = rest_field(name="maxCpuCount", visibility=["read"]) + """The total number of CPU cores available.""" + autonomous_vm_cluster_ids: Optional[list[str]] = rest_field(name="autonomousVmClusterIds", visibility=["read"]) + """The list of OCIDs of the Autonomous VM Clusters associated with the Db server.""" + autonomous_virtual_machine_ids: Optional[list[str]] = rest_field( + name="autonomousVirtualMachineIds", visibility=["read"] + ) + """The list of OCIDs of the Autonomous Virtual Machines associated with the Db server.""" + max_db_node_storage_in_gbs: Optional[int] = rest_field(name="maxDbNodeStorageInGbs", visibility=["read"]) + """The total max dbNode storage in GBs.""" + memory_size_in_gbs: Optional[int] = rest_field(name="memorySizeInGbs", visibility=["read"]) + """The total memory size in GBs.""" + shape: Optional[str] = rest_field(visibility=["read"]) + """The shape of the Db server. The shape determines the amount of CPU, storage, and memory + resources available.""" + time_created: Optional[datetime.datetime] = rest_field(name="timeCreated", visibility=["read"], format="rfc3339") + """The date and time that the Db Server was created.""" + provisioning_state: Optional[Union[str, "_models.ResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", and + \"Canceled\".""" + compute_model: Optional[Union[str, "_models.ComputeModel"]] = rest_field(name="computeModel", visibility=["read"]) + """The compute model of the Exadata Infrastructure. Known values are: \"ECPU\" and \"OCPU\".""" + + +class DbSystem(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbSystem resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.DbSystemProperties + :ivar zones: The availability zones. + :vartype zones: list[str] + """ + + properties: Optional["_models.DbSystemProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The resource-specific properties for this resource.""" + zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The availability zones.""" + + @overload + def __init__( + self, + *, + location: str, + tags: Optional[dict[str, str]] = None, + properties: Optional["_models.DbSystemProperties"] = None, + zones: Optional[list[str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbSystemBaseProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbSystem resource base model. + + You probably want to use the sub-classes and not this class directly. Known sub-classes are: + DbSystemProperties + + :ivar source: The source of the database: Use ``None`` for creating a new database. The default + is ``None``. "None" + :vartype source: str or ~azure.mgmt.oracledatabase.models.DbSystemSourceType + :ivar provisioning_state: dbSystem provisioning state. Known values are: "Succeeded", "Failed", + "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar oci_url: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype oci_url: str + :ivar resource_anchor_id: Azure Resource Anchor ID. Required. + :vartype resource_anchor_id: str + :ivar network_anchor_id: Azure Network Anchor ID. Required. + :vartype network_anchor_id: str + :ivar cluster_name: The cluster name for Exadata and 2-node RAC virtual machine DB systems. The + cluster name must begin with an alphabetic character, and may contain hyphens (-). Underscores + (_) are not permitted. The cluster name can be no longer than 11 characters and is not case + sensitive. + :vartype cluster_name: str + :ivar display_name: The user-friendly name for the DB system. The name does not have to be + unique. + :vartype display_name: str + :ivar initial_data_storage_size_in_gb: Size in GB of the initial data volume that will be + created and attached to a virtual machine DB system. You can scale up storage after + provisioning, as needed. Note that the total storage size attached will be more than the amount + you specify to allow for REDO/RECO space and software volume. + :vartype initial_data_storage_size_in_gb: int + :ivar data_storage_size_in_gbs: The data storage size, in gigabytes, that is currently + available to the DB system. Applies only for virtual machine DB systems. + :vartype data_storage_size_in_gbs: int + :ivar db_system_options: The DB system options. + :vartype db_system_options: ~azure.mgmt.oracledatabase.models.DbSystemOptions + :ivar disk_redundancy: The type of redundancy configured for the DB system. NORMAL is 2-way + redundancy. HIGH is 3-way redundancy. Known values are: "High" and "Normal". + :vartype disk_redundancy: str or ~azure.mgmt.oracledatabase.models.DiskRedundancyType + :ivar domain_v2: The domain name for the DB system. + :vartype domain_v2: str + :ivar grid_image_ocid: The OCID of a grid infrastructure software image. This is a database + software image of the type GRID_IMAGE. + :vartype grid_image_ocid: str + :ivar hostname: The hostname for the DB system. Required. + :vartype hostname: str + :ivar ocid: The OCID of the DB system. + :vartype ocid: str + :ivar license_model_v2: The Oracle license model that applies to all the databases on the DB + system. The default is LicenseIncluded. Known values are: "LicenseIncluded" and + "BringYourOwnLicense". + :vartype license_model_v2: str or ~azure.mgmt.oracledatabase.models.LicenseModel + :ivar lifecycle_details: Additional information about the current lifecycle state. + :vartype lifecycle_details: str + :ivar lifecycle_state: The current state of the DB system. Known values are: "Provisioning", + "Available", "Updating", "Terminating", "Terminated", "Failed", "Migrated", + "MaintenanceInProgress", "NeedsAttention", and "Upgrading". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbSystemLifecycleState + :ivar listener_port: The port number configured for the listener on the DB system. + :vartype listener_port: int + :ivar memory_size_in_gbs: Memory allocated to the DB system, in gigabytes. + :vartype memory_size_in_gbs: int + :ivar node_count: The number of nodes in the DB system. For RAC DB systems, the value is + greater than 1. + :vartype node_count: int + :ivar scan_dns_name: The FQDN of the DNS record for the SCAN IP addresses that are associated + with the DB system. + :vartype scan_dns_name: str + :ivar scan_ips: The list of Single Client Access Name (SCAN) IP addresses associated with the + DB system. SCAN IP addresses are typically used for load balancing and are not assigned to any + interface. Oracle Clusterware directs the requests to the appropriate nodes in the cluster. + Note: For a single-node DB system, this list is empty. + :vartype scan_ips: list[str] + :ivar shape: The shape of the DB system. The shape determines resources to allocate to the DB + system. For virtual machine shapes, the number of CPU cores and memory. For bare metal and + Exadata shapes, the number of CPU cores, storage, and memory. Required. + :vartype shape: str + :ivar ssh_public_keys: The public key portion of one or more key pairs used for SSH access to + the DB system. Required. + :vartype ssh_public_keys: list[str] + :ivar storage_volume_performance_mode: The block storage volume performance level. Valid values + are Balanced and HighPerformance. See `Block Volume Performance + `_ for more information. Known values are: + "Balanced" and "HighPerformance". + :vartype storage_volume_performance_mode: str or + ~azure.mgmt.oracledatabase.models.StorageVolumePerformanceMode + :ivar time_zone: The time zone of the DB system, e.g., UTC, to set the timeZone as UTC. + :vartype time_zone: str + :ivar version: The Oracle Database version of the DB system. + :vartype version: str + :ivar compute_model: The compute model for Base Database Service. This is required if using the + ``computeCount`` parameter. If using ``cpuCoreCount`` then it is an error to specify + ``computeModel`` to a non-null value. The ECPU compute model is the recommended model, and the + OCPU compute model is legacy. Known values are: "ECPU" and "OCPU". + :vartype compute_model: str or ~azure.mgmt.oracledatabase.models.ComputeModel + :ivar compute_count: The number of compute servers for the DB system. + :vartype compute_count: int + :ivar data_collection_options: Indicates user preferences for the various diagnostic collection + options for the Base DB. + :vartype data_collection_options: ~azure.mgmt.oracledatabase.models.DataCollectionOptions + :ivar character_set: The character set for the DB system. The default is AL32UTF8. + :vartype character_set: str + :ivar ncharacter_set: The national character set for the DB system. The default is AL16UTF16. + :vartype ncharacter_set: str + """ + + __mapping__: dict[str, _Model] = {} + source: str = rest_discriminator(name="source", visibility=["read", "create"]) + """The source of the database: Use ``None`` for creating a new database. The default is ``None``. + \"None\"""" + provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """dbSystem provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and + \"Provisioning\".""" + oci_url: Optional[str] = rest_field(name="ociUrl", visibility=["read"]) + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + resource_anchor_id: str = rest_field(name="resourceAnchorId", visibility=["read", "create"]) + """Azure Resource Anchor ID. Required.""" + network_anchor_id: str = rest_field(name="networkAnchorId", visibility=["read", "create"]) + """Azure Network Anchor ID. Required.""" + cluster_name: Optional[str] = rest_field(name="clusterName", visibility=["read", "create"]) + """The cluster name for Exadata and 2-node RAC virtual machine DB systems. The cluster name must + begin with an alphabetic character, and may contain hyphens (-). Underscores (_) are not + permitted. The cluster name can be no longer than 11 characters and is not case sensitive.""" + display_name: Optional[str] = rest_field(name="displayName", visibility=["read", "create"]) + """The user-friendly name for the DB system. The name does not have to be unique.""" + initial_data_storage_size_in_gb: Optional[int] = rest_field( + name="initialDataStorageSizeInGb", visibility=["create"] + ) + """Size in GB of the initial data volume that will be created and attached to a virtual machine DB + system. You can scale up storage after provisioning, as needed. Note that the total storage + size attached will be more than the amount you specify to allow for REDO/RECO space and + software volume.""" + data_storage_size_in_gbs: Optional[int] = rest_field(name="dataStorageSizeInGbs", visibility=["read"]) + """The data storage size, in gigabytes, that is currently available to the DB system. Applies only + for virtual machine DB systems.""" + db_system_options: Optional["_models.DbSystemOptions"] = rest_field( + name="dbSystemOptions", visibility=["read", "create"] + ) + """The DB system options.""" + disk_redundancy: Optional[Union[str, "_models.DiskRedundancyType"]] = rest_field( + name="diskRedundancy", visibility=["read", "create"] + ) + """The type of redundancy configured for the DB system. NORMAL is 2-way redundancy. HIGH is 3-way + redundancy. Known values are: \"High\" and \"Normal\".""" + domain_v2: Optional[str] = rest_field(name="domain", visibility=["read", "create"]) + """The domain name for the DB system.""" + grid_image_ocid: Optional[str] = rest_field(name="gridImageOcid", visibility=["read"]) + """The OCID of a grid infrastructure software image. This is a database software image of the type + GRID_IMAGE.""" + hostname: str = rest_field(visibility=["read", "create"]) + """The hostname for the DB system. Required.""" + ocid: Optional[str] = rest_field(visibility=["read"]) + """The OCID of the DB system.""" + license_model_v2: Optional[Union[str, "_models.LicenseModel"]] = rest_field( + name="licenseModel", visibility=["read", "create"] + ) + """The Oracle license model that applies to all the databases on the DB system. The default is + LicenseIncluded. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + lifecycle_details: Optional[str] = rest_field(name="lifecycleDetails", visibility=["read"]) + """Additional information about the current lifecycle state.""" + lifecycle_state: Optional[Union[str, "_models.DbSystemLifecycleState"]] = rest_field( + name="lifecycleState", visibility=["read"] + ) + """The current state of the DB system. Known values are: \"Provisioning\", \"Available\", + \"Updating\", \"Terminating\", \"Terminated\", \"Failed\", \"Migrated\", + \"MaintenanceInProgress\", \"NeedsAttention\", and \"Upgrading\".""" + listener_port: Optional[int] = rest_field(name="listenerPort", visibility=["read"]) + """The port number configured for the listener on the DB system.""" + memory_size_in_gbs: Optional[int] = rest_field(name="memorySizeInGbs", visibility=["read"]) + """Memory allocated to the DB system, in gigabytes.""" + node_count: Optional[int] = rest_field(name="nodeCount", visibility=["read", "create"]) + """The number of nodes in the DB system. For RAC DB systems, the value is greater than 1.""" + scan_dns_name: Optional[str] = rest_field(name="scanDnsName", visibility=["read"]) + """The FQDN of the DNS record for the SCAN IP addresses that are associated with the DB system.""" + scan_ips: Optional[list[str]] = rest_field(name="scanIps", visibility=["read"]) + """The list of Single Client Access Name (SCAN) IP addresses associated with the DB system. SCAN + IP addresses are typically used for load balancing and are not assigned to any interface. + Oracle Clusterware directs the requests to the appropriate nodes in the cluster. Note: For a + single-node DB system, this list is empty.""" + shape: str = rest_field(visibility=["read", "create"]) + """The shape of the DB system. The shape determines resources to allocate to the DB system. For + virtual machine shapes, the number of CPU cores and memory. For bare metal and Exadata shapes, + the number of CPU cores, storage, and memory. Required.""" + ssh_public_keys: list[str] = rest_field(name="sshPublicKeys", visibility=["read", "create"]) + """The public key portion of one or more key pairs used for SSH access to the DB system. Required.""" + storage_volume_performance_mode: Optional[Union[str, "_models.StorageVolumePerformanceMode"]] = rest_field( + name="storageVolumePerformanceMode", visibility=["read", "create"] + ) + """The block storage volume performance level. Valid values are Balanced and HighPerformance. See + `Block Volume Performance `_ for more + information. Known values are: \"Balanced\" and \"HighPerformance\".""" + time_zone: Optional[str] = rest_field(name="timeZone", visibility=["read", "create"]) + """The time zone of the DB system, e.g., UTC, to set the timeZone as UTC.""" + version: Optional[str] = rest_field(visibility=["read"]) + """The Oracle Database version of the DB system.""" + compute_model: Optional[Union[str, "_models.ComputeModel"]] = rest_field( + name="computeModel", visibility=["read", "create"] + ) + """The compute model for Base Database Service. This is required if using the ``computeCount`` + parameter. If using ``cpuCoreCount`` then it is an error to specify ``computeModel`` to a + non-null value. The ECPU compute model is the recommended model, and the OCPU compute model is + legacy. Known values are: \"ECPU\" and \"OCPU\".""" + compute_count: Optional[int] = rest_field(name="computeCount", visibility=["read", "create"]) + """The number of compute servers for the DB system.""" + data_collection_options: Optional["_models.DataCollectionOptions"] = rest_field( + name="dataCollectionOptions", visibility=["read", "create"] + ) + """Indicates user preferences for the various diagnostic collection options for the Base DB.""" + character_set: Optional[str] = rest_field(name="characterSet", visibility=["read", "create"]) + """The character set for the DB system. The default is AL32UTF8.""" + ncharacter_set: Optional[str] = rest_field(name="ncharacterSet", visibility=["read", "create"]) + """The national character set for the DB system. The default is AL16UTF16.""" + + @overload + def __init__( # pylint: disable=too-many-locals + self, + *, + resource_anchor_id: str, + network_anchor_id: str, + hostname: str, + shape: str, + ssh_public_keys: list[str], + source: str = None, + cluster_name: Optional[str] = None, + display_name: Optional[str] = None, + initial_data_storage_size_in_gb: Optional[int] = None, + db_system_options: Optional["_models.DbSystemOptions"] = None, + disk_redundancy: Optional[Union[str, "_models.DiskRedundancyType"]] = None, + domain_v2: Optional[str] = None, + license_model_v2: Optional[Union[str, "_models.LicenseModel"]] = None, + node_count: Optional[int] = None, + storage_volume_performance_mode: Optional[Union[str, "_models.StorageVolumePerformanceMode"]] = None, + time_zone: Optional[str] = None, + compute_model: Optional[Union[str, "_models.ComputeModel"]] = None, + compute_count: Optional[int] = None, + data_collection_options: Optional["_models.DataCollectionOptions"] = None, + character_set: Optional[str] = None, + ncharacter_set: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbSystemOptions(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbSystemOptions resource properties. + + :ivar storage_management: The storage option used in DB system. ASM - Automatic storage + management, LVM - Logical Volume management. "LVM" + :vartype storage_management: str or ~azure.mgmt.oracledatabase.models.StorageManagementType + """ + + storage_management: Optional[Union[str, "_models.StorageManagementType"]] = rest_field( + name="storageManagement", visibility=["read", "create", "update", "delete", "query"] + ) + """The storage option used in DB system. ASM - Automatic storage management, LVM - Logical Volume + management. \"LVM\"""" + + @overload + def __init__( + self, + *, + storage_management: Optional[Union[str, "_models.StorageManagementType"]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbSystemProperties( + DbSystemBaseProperties, discriminator="None" +): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbSystem resource model. + + :ivar provisioning_state: dbSystem provisioning state. Known values are: "Succeeded", "Failed", + "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar oci_url: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype oci_url: str + :ivar resource_anchor_id: Azure Resource Anchor ID. Required. + :vartype resource_anchor_id: str + :ivar network_anchor_id: Azure Network Anchor ID. Required. + :vartype network_anchor_id: str + :ivar cluster_name: The cluster name for Exadata and 2-node RAC virtual machine DB systems. The + cluster name must begin with an alphabetic character, and may contain hyphens (-). Underscores + (_) are not permitted. The cluster name can be no longer than 11 characters and is not case + sensitive. + :vartype cluster_name: str + :ivar display_name: The user-friendly name for the DB system. The name does not have to be + unique. + :vartype display_name: str + :ivar initial_data_storage_size_in_gb: Size in GB of the initial data volume that will be + created and attached to a virtual machine DB system. You can scale up storage after + provisioning, as needed. Note that the total storage size attached will be more than the amount + you specify to allow for REDO/RECO space and software volume. + :vartype initial_data_storage_size_in_gb: int + :ivar data_storage_size_in_gbs: The data storage size, in gigabytes, that is currently + available to the DB system. Applies only for virtual machine DB systems. + :vartype data_storage_size_in_gbs: int + :ivar db_system_options: The DB system options. + :vartype db_system_options: ~azure.mgmt.oracledatabase.models.DbSystemOptions + :ivar disk_redundancy: The type of redundancy configured for the DB system. NORMAL is 2-way + redundancy. HIGH is 3-way redundancy. Known values are: "High" and "Normal". + :vartype disk_redundancy: str or ~azure.mgmt.oracledatabase.models.DiskRedundancyType + :ivar domain_v2: The domain name for the DB system. + :vartype domain_v2: str + :ivar grid_image_ocid: The OCID of a grid infrastructure software image. This is a database + software image of the type GRID_IMAGE. + :vartype grid_image_ocid: str + :ivar hostname: The hostname for the DB system. Required. + :vartype hostname: str + :ivar ocid: The OCID of the DB system. + :vartype ocid: str + :ivar license_model_v2: The Oracle license model that applies to all the databases on the DB + system. The default is LicenseIncluded. Known values are: "LicenseIncluded" and + "BringYourOwnLicense". + :vartype license_model_v2: str or ~azure.mgmt.oracledatabase.models.LicenseModel + :ivar lifecycle_details: Additional information about the current lifecycle state. + :vartype lifecycle_details: str + :ivar lifecycle_state: The current state of the DB system. Known values are: "Provisioning", + "Available", "Updating", "Terminating", "Terminated", "Failed", "Migrated", + "MaintenanceInProgress", "NeedsAttention", and "Upgrading". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbSystemLifecycleState + :ivar listener_port: The port number configured for the listener on the DB system. + :vartype listener_port: int + :ivar memory_size_in_gbs: Memory allocated to the DB system, in gigabytes. + :vartype memory_size_in_gbs: int + :ivar node_count: The number of nodes in the DB system. For RAC DB systems, the value is + greater than 1. + :vartype node_count: int + :ivar scan_dns_name: The FQDN of the DNS record for the SCAN IP addresses that are associated + with the DB system. + :vartype scan_dns_name: str + :ivar scan_ips: The list of Single Client Access Name (SCAN) IP addresses associated with the + DB system. SCAN IP addresses are typically used for load balancing and are not assigned to any + interface. Oracle Clusterware directs the requests to the appropriate nodes in the cluster. + Note: For a single-node DB system, this list is empty. + :vartype scan_ips: list[str] + :ivar shape: The shape of the DB system. The shape determines resources to allocate to the DB + system. For virtual machine shapes, the number of CPU cores and memory. For bare metal and + Exadata shapes, the number of CPU cores, storage, and memory. Required. + :vartype shape: str + :ivar ssh_public_keys: The public key portion of one or more key pairs used for SSH access to + the DB system. Required. + :vartype ssh_public_keys: list[str] + :ivar storage_volume_performance_mode: The block storage volume performance level. Valid values + are Balanced and HighPerformance. See `Block Volume Performance + `_ for more information. Known values are: + "Balanced" and "HighPerformance". + :vartype storage_volume_performance_mode: str or + ~azure.mgmt.oracledatabase.models.StorageVolumePerformanceMode + :ivar time_zone: The time zone of the DB system, e.g., UTC, to set the timeZone as UTC. + :vartype time_zone: str + :ivar version: The Oracle Database version of the DB system. + :vartype version: str + :ivar compute_model: The compute model for Base Database Service. This is required if using the + ``computeCount`` parameter. If using ``cpuCoreCount`` then it is an error to specify + ``computeModel`` to a non-null value. The ECPU compute model is the recommended model, and the + OCPU compute model is legacy. Known values are: "ECPU" and "OCPU". + :vartype compute_model: str or ~azure.mgmt.oracledatabase.models.ComputeModel + :ivar compute_count: The number of compute servers for the DB system. + :vartype compute_count: int + :ivar data_collection_options: Indicates user preferences for the various diagnostic collection + options for the Base DB. + :vartype data_collection_options: ~azure.mgmt.oracledatabase.models.DataCollectionOptions + :ivar character_set: The character set for the DB system. The default is AL32UTF8. + :vartype character_set: str + :ivar ncharacter_set: The national character set for the DB system. The default is AL16UTF16. + :vartype ncharacter_set: str + :ivar source: The source of the database for creating a new database. Required. for creating a + new database. + :vartype source: str or ~azure.mgmt.oracledatabase.models.NONE + :ivar database_edition: The Oracle Database Edition that applies to all the databases on the DB + system. Exadata DB systems and 2-node RAC DB systems require + EnterpriseEditionExtremePerformance. Required. Known values are: "StandardEdition", + "EnterpriseEdition", "EnterpriseEditionHighPerformance", "EnterpriseEditionExtreme", and + "EnterpriseEditionDeveloper". + :vartype database_edition: str or ~azure.mgmt.oracledatabase.models.DbSystemDatabaseEditionType + :ivar admin_password: A strong password for SYS, SYSTEM, and PDB Admin. The password must be at + least nine characters and contain at least two uppercase, two lowercase, two numbers, and two + special characters. The special characters must be _, #, or -. + :vartype admin_password: str + :ivar db_version: A valid Oracle Database version. For a list of supported versions, use the + ListDbVersions operation. Required. + :vartype db_version: str + :ivar pdb_name: The name of the pluggable database. The name must begin with an alphabetic + character and can contain a maximum of thirty alphanumeric characters. Special characters are + not permitted. Pluggable database should not be same as database name. + :vartype pdb_name: str + """ + + source: Literal[DbSystemSourceType.NONE] = rest_discriminator(name="source", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """The source of the database for creating a new database. Required. for creating a new database.""" + database_edition: Union[str, "_models.DbSystemDatabaseEditionType"] = rest_field( + name="databaseEdition", visibility=["read", "create"] + ) + """The Oracle Database Edition that applies to all the databases on the DB system. Exadata DB + systems and 2-node RAC DB systems require EnterpriseEditionExtremePerformance. Required. Known + values are: \"StandardEdition\", \"EnterpriseEdition\", \"EnterpriseEditionHighPerformance\", + \"EnterpriseEditionExtreme\", and \"EnterpriseEditionDeveloper\".""" + admin_password: Optional[str] = rest_field(name="adminPassword", visibility=["create"]) + """A strong password for SYS, SYSTEM, and PDB Admin. The password must be at least nine characters + and contain at least two uppercase, two lowercase, two numbers, and two special characters. The + special characters must be _, #, or -.""" + db_version: str = rest_field(name="dbVersion", visibility=["read", "create"]) + """A valid Oracle Database version. For a list of supported versions, use the ListDbVersions + operation. Required.""" + pdb_name: Optional[str] = rest_field(name="pdbName", visibility=["create"]) + """The name of the pluggable database. The name must begin with an alphabetic character and can + contain a maximum of thirty alphanumeric characters. Special characters are not permitted. + Pluggable database should not be same as database name.""" + + @overload + def __init__( # pylint: disable=too-many-locals + self, + *, + resource_anchor_id: str, + network_anchor_id: str, + hostname: str, + shape: str, + ssh_public_keys: list[str], + database_edition: Union[str, "_models.DbSystemDatabaseEditionType"], + db_version: str, + cluster_name: Optional[str] = None, + display_name: Optional[str] = None, + initial_data_storage_size_in_gb: Optional[int] = None, + db_system_options: Optional["_models.DbSystemOptions"] = None, + disk_redundancy: Optional[Union[str, "_models.DiskRedundancyType"]] = None, + domain_v2: Optional[str] = None, + license_model_v2: Optional[Union[str, "_models.LicenseModel"]] = None, + node_count: Optional[int] = None, + storage_volume_performance_mode: Optional[Union[str, "_models.StorageVolumePerformanceMode"]] = None, + time_zone: Optional[str] = None, + compute_model: Optional[Union[str, "_models.ComputeModel"]] = None, + compute_count: Optional[int] = None, + data_collection_options: Optional["_models.DataCollectionOptions"] = None, + character_set: Optional[str] = None, + ncharacter_set: Optional[str] = None, + admin_password: Optional[str] = None, + pdb_name: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.source = DbSystemSourceType.NONE # type: ignore + + +class DbSystemShape(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbSystemShape resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.DbSystemShapeProperties + """ + + properties: Optional["_models.DbSystemShapeProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The resource-specific properties for this resource.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.DbSystemShapeProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbSystemShapeProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbSystemShape resource model. + + :ivar shape_family: The family of the shape used for the DB system. + :vartype shape_family: str + :ivar shape_name: The shape used for the DB system. Required. + :vartype shape_name: str + :ivar available_core_count: The maximum number of CPU cores that can be enabled on the DB + system for this shape. Required. + :vartype available_core_count: int + :ivar minimum_core_count: The minimum number of CPU cores that can be enabled on the DB system + for this shape. + :vartype minimum_core_count: int + :ivar runtime_minimum_core_count: The runtime minimum number of CPU cores that can be enabled + on the DB system for this shape. + :vartype runtime_minimum_core_count: int + :ivar core_count_increment: The discrete number by which the CPU core count for this shape can + be increased or decreased. + :vartype core_count_increment: int + :ivar min_storage_count: The minimum number of Exadata storage servers available for the + Exadata infrastructure. + :vartype min_storage_count: int + :ivar max_storage_count: The maximum number of Exadata storage servers available for the + Exadata infrastructure. + :vartype max_storage_count: int + :ivar available_data_storage_per_server_in_tbs: The maximum data storage available per storage + server for this shape. Only applicable to ExaCC Elastic shapes. + :vartype available_data_storage_per_server_in_tbs: float + :ivar available_memory_per_node_in_gbs: The maximum memory available per database node for this + shape. Only applicable to ExaCC Elastic shapes. + :vartype available_memory_per_node_in_gbs: int + :ivar available_db_node_per_node_in_gbs: The maximum Db Node storage available per database + node for this shape. Only applicable to ExaCC Elastic shapes. + :vartype available_db_node_per_node_in_gbs: int + :ivar min_core_count_per_node: The minimum number of CPU cores that can be enabled per node for + this shape. + :vartype min_core_count_per_node: int + :ivar available_memory_in_gbs: The maximum memory that can be enabled for this shape. + :vartype available_memory_in_gbs: int + :ivar min_memory_per_node_in_gbs: The minimum memory that need be allocated per node for this + shape. + :vartype min_memory_per_node_in_gbs: int + :ivar available_db_node_storage_in_gbs: The maximum Db Node storage that can be enabled for + this shape. + :vartype available_db_node_storage_in_gbs: int + :ivar min_db_node_storage_per_node_in_gbs: The minimum Db Node storage that need be allocated + per node for this shape. + :vartype min_db_node_storage_per_node_in_gbs: int + :ivar available_data_storage_in_tbs: The maximum DATA storage that can be enabled for this + shape. + :vartype available_data_storage_in_tbs: int + :ivar min_data_storage_in_tbs: The minimum data storage that need be allocated for this shape. + :vartype min_data_storage_in_tbs: int + :ivar minimum_node_count: The minimum number of database nodes available for this shape. + :vartype minimum_node_count: int + :ivar maximum_node_count: The maximum number of database nodes available for this shape. + :vartype maximum_node_count: int + :ivar available_core_count_per_node: The maximum number of CPU cores per database node that can + be enabled for this shape. Only applicable to the flex Exadata shape and ExaCC Elastic shapes. + :vartype available_core_count_per_node: int + :ivar compute_model: The compute model of the Exadata Infrastructure. Known values are: "ECPU" + and "OCPU". + :vartype compute_model: str or ~azure.mgmt.oracledatabase.models.ComputeModel + :ivar are_server_types_supported: Indicates if the shape supports database and storage server + types. + :vartype are_server_types_supported: bool + :ivar display_name: The display name of the shape used for the DB system. + :vartype display_name: str + :ivar shape_attributes: The shapeAttributes of the DB system shape.. + :vartype shape_attributes: list[str] + """ + + shape_family: Optional[str] = rest_field( + name="shapeFamily", visibility=["read", "create", "update", "delete", "query"] + ) + """The family of the shape used for the DB system.""" + shape_name: str = rest_field(name="shapeName", visibility=["read", "create", "update", "delete", "query"]) + """The shape used for the DB system. Required.""" + available_core_count: int = rest_field( + name="availableCoreCount", visibility=["read", "create", "update", "delete", "query"] ) - """End date and time of maintenance window.""" - time_maintenance_window_start: Optional[datetime.datetime] = rest_field( - name="timeMaintenanceWindowStart", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + """The maximum number of CPU cores that can be enabled on the DB system for this shape. Required.""" + minimum_core_count: Optional[int] = rest_field( + name="minimumCoreCount", visibility=["read", "create", "update", "delete", "query"] ) - """Start date and time of maintenance window.""" - vnic2_id: Optional[str] = rest_field(name="vnic2Id", visibility=["read", "create", "update", "delete", "query"]) - """The OCID of the second VNIC.""" - vnic_id: str = rest_field(name="vnicId", visibility=["read", "create", "update", "delete", "query"]) - """The OCID of the VNIC. Required.""" - provisioning_state: Optional[Union[str, "_models.ResourceProvisioningState"]] = rest_field( - name="provisioningState", visibility=["read"] + """The minimum number of CPU cores that can be enabled on the DB system for this shape.""" + runtime_minimum_core_count: Optional[int] = rest_field( + name="runtimeMinimumCoreCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The runtime minimum number of CPU cores that can be enabled on the DB system for this shape.""" + core_count_increment: Optional[int] = rest_field( + name="coreCountIncrement", visibility=["read", "create", "update", "delete", "query"] + ) + """The discrete number by which the CPU core count for this shape can be increased or decreased.""" + min_storage_count: Optional[int] = rest_field( + name="minStorageCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum number of Exadata storage servers available for the Exadata infrastructure.""" + max_storage_count: Optional[int] = rest_field( + name="maxStorageCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum number of Exadata storage servers available for the Exadata infrastructure.""" + available_data_storage_per_server_in_tbs: Optional[float] = rest_field( + name="availableDataStoragePerServerInTbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum data storage available per storage server for this shape. Only applicable to ExaCC + Elastic shapes.""" + available_memory_per_node_in_gbs: Optional[int] = rest_field( + name="availableMemoryPerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum memory available per database node for this shape. Only applicable to ExaCC Elastic + shapes.""" + available_db_node_per_node_in_gbs: Optional[int] = rest_field( + name="availableDbNodePerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum Db Node storage available per database node for this shape. Only applicable to + ExaCC Elastic shapes.""" + min_core_count_per_node: Optional[int] = rest_field( + name="minCoreCountPerNode", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum number of CPU cores that can be enabled per node for this shape.""" + available_memory_in_gbs: Optional[int] = rest_field( + name="availableMemoryInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum memory that can be enabled for this shape.""" + min_memory_per_node_in_gbs: Optional[int] = rest_field( + name="minMemoryPerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum memory that need be allocated per node for this shape.""" + available_db_node_storage_in_gbs: Optional[int] = rest_field( + name="availableDbNodeStorageInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum Db Node storage that can be enabled for this shape.""" + min_db_node_storage_per_node_in_gbs: Optional[int] = rest_field( + name="minDbNodeStoragePerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum Db Node storage that need be allocated per node for this shape.""" + available_data_storage_in_tbs: Optional[int] = rest_field( + name="availableDataStorageInTbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum DATA storage that can be enabled for this shape.""" + min_data_storage_in_tbs: Optional[int] = rest_field( + name="minDataStorageInTbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum data storage that need be allocated for this shape.""" + minimum_node_count: Optional[int] = rest_field( + name="minimumNodeCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The minimum number of database nodes available for this shape.""" + maximum_node_count: Optional[int] = rest_field( + name="maximumNodeCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum number of database nodes available for this shape.""" + available_core_count_per_node: Optional[int] = rest_field( + name="availableCoreCountPerNode", visibility=["read", "create", "update", "delete", "query"] + ) + """The maximum number of CPU cores per database node that can be enabled for this shape. Only + applicable to the flex Exadata shape and ExaCC Elastic shapes.""" + compute_model: Optional[Union[str, "_models.ComputeModel"]] = rest_field( + name="computeModel", visibility=["read", "create", "update", "delete", "query"] + ) + """The compute model of the Exadata Infrastructure. Known values are: \"ECPU\" and \"OCPU\".""" + are_server_types_supported: Optional[bool] = rest_field( + name="areServerTypesSupported", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates if the shape supports database and storage server types.""" + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] + ) + """The display name of the shape used for the DB system.""" + shape_attributes: Optional[list[str]] = rest_field(name="shapeAttributes", visibility=["read", "create"]) + """The shapeAttributes of the DB system shape..""" + + @overload + def __init__( + self, + *, + shape_name: str, + available_core_count: int, + shape_family: Optional[str] = None, + minimum_core_count: Optional[int] = None, + runtime_minimum_core_count: Optional[int] = None, + core_count_increment: Optional[int] = None, + min_storage_count: Optional[int] = None, + max_storage_count: Optional[int] = None, + available_data_storage_per_server_in_tbs: Optional[float] = None, + available_memory_per_node_in_gbs: Optional[int] = None, + available_db_node_per_node_in_gbs: Optional[int] = None, + min_core_count_per_node: Optional[int] = None, + available_memory_in_gbs: Optional[int] = None, + min_memory_per_node_in_gbs: Optional[int] = None, + available_db_node_storage_in_gbs: Optional[int] = None, + min_db_node_storage_per_node_in_gbs: Optional[int] = None, + available_data_storage_in_tbs: Optional[int] = None, + min_data_storage_in_tbs: Optional[int] = None, + minimum_node_count: Optional[int] = None, + maximum_node_count: Optional[int] = None, + available_core_count_per_node: Optional[int] = None, + compute_model: Optional[Union[str, "_models.ComputeModel"]] = None, + are_server_types_supported: Optional[bool] = None, + display_name: Optional[str] = None, + shape_attributes: Optional[list[str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbSystemUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The type used for update operations of the DbSystem. + + :ivar zones: The availability zones. + :vartype zones: list[str] + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.DbSystemUpdateProperties + """ + + zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The availability zones.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + properties: Optional["_models.DbSystemUpdateProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The resource-specific properties for this resource.""" + + @overload + def __init__( + self, + *, + zones: Optional[list[str]] = None, + tags: Optional[dict[str, str]] = None, + properties: Optional["_models.DbSystemUpdateProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DbSystemUpdateProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The updatable properties of the DbSystem. + + :ivar source: The source of the database for creating a new database. for creating a new + database. + :vartype source: str or ~azure.mgmt.oracledatabase.models.NONE + """ + + source: Optional[Literal[DbSystemSourceType.NONE]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] ) - """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", and - \"Canceled\".""" + """The source of the database for creating a new database. for creating a new database.""" @overload def __init__( self, *, - ocid: str, - db_system_id: str, - lifecycle_state: Union[str, "_models.DbNodeProvisioningState"], - time_created: datetime.datetime, - vnic_id: str, - additional_details: Optional[str] = None, - backup_ip_id: Optional[str] = None, - backup_vnic2_id: Optional[str] = None, - backup_vnic_id: Optional[str] = None, - cpu_core_count: Optional[int] = None, - db_node_storage_size_in_gbs: Optional[int] = None, - db_server_id: Optional[str] = None, - fault_domain: Optional[str] = None, - host_ip_id: Optional[str] = None, - hostname: Optional[str] = None, - lifecycle_details: Optional[str] = None, - maintenance_type: Optional[Union[str, "_models.DbNodeMaintenanceType"]] = None, - memory_size_in_gbs: Optional[int] = None, - software_storage_size_in_gb: Optional[int] = None, - time_maintenance_window_end: Optional[datetime.datetime] = None, - time_maintenance_window_start: Optional[datetime.datetime] = None, - vnic2_id: Optional[str] = None, + source: Optional[Literal[DbSystemSourceType.NONE]] = None, ) -> None: ... @overload @@ -4510,8 +6407,8 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbServer(ProxyResource): - """DbServer resource model. +class DbVersion(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """Oracle Database DbVersion resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. @@ -4525,10 +6422,10 @@ class DbServer(ProxyResource): information. :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.DbServerProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.DbVersionProperties """ - properties: Optional["_models.DbServerProperties"] = rest_field( + properties: Optional["_models.DbVersionProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" @@ -4537,7 +6434,7 @@ class DbServer(ProxyResource): def __init__( self, *, - properties: Optional["_models.DbServerProperties"] = None, + properties: Optional["_models.DbVersionProperties"] = None, ) -> None: ... @overload @@ -4551,184 +6448,104 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbServerPatchingDetails(_Model): - """DbServer Patching Properties. - - :ivar estimated_patch_duration: Estimated Patch Duration. - :vartype estimated_patch_duration: int - :ivar patching_status: Patching Status. Known values are: "Scheduled", "MaintenanceInProgress", - "Failed", and "Complete". - :vartype patching_status: str or ~azure.mgmt.oracledatabase.models.DbServerPatchingStatus - :ivar time_patching_ended: Time Patching Ended. - :vartype time_patching_ended: ~datetime.datetime - :ivar time_patching_started: Time Patching Started. - :vartype time_patching_started: ~datetime.datetime - """ - - estimated_patch_duration: Optional[int] = rest_field(name="estimatedPatchDuration", visibility=["read"]) - """Estimated Patch Duration.""" - patching_status: Optional[Union[str, "_models.DbServerPatchingStatus"]] = rest_field( - name="patchingStatus", visibility=["read"] - ) - """Patching Status. Known values are: \"Scheduled\", \"MaintenanceInProgress\", \"Failed\", and - \"Complete\".""" - time_patching_ended: Optional[datetime.datetime] = rest_field( - name="timePatchingEnded", visibility=["read"], format="rfc3339" - ) - """Time Patching Ended.""" - time_patching_started: Optional[datetime.datetime] = rest_field( - name="timePatchingStarted", visibility=["read"], format="rfc3339" - ) - """Time Patching Started.""" - - -class DbServerProperties(_Model): - """DbServer resource properties. +class DbVersionProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DbVersion resource model. - :ivar ocid: Db server name. - :vartype ocid: str - :ivar display_name: The name for the Db Server. - :vartype display_name: str - :ivar compartment_id: The OCID of the compartment. - :vartype compartment_id: str - :ivar exadata_infrastructure_id: The OCID of the Exadata infrastructure. - :vartype exadata_infrastructure_id: str - :ivar cpu_core_count: The number of CPU cores enabled on the Db server. - :vartype cpu_core_count: int - :ivar db_server_patching_details: dbServerPatching details of the Db server. - :vartype db_server_patching_details: ~azure.mgmt.oracledatabase.models.DbServerPatchingDetails - :ivar max_memory_in_gbs: The total memory available in GBs. - :vartype max_memory_in_gbs: int - :ivar db_node_storage_size_in_gbs: The allocated local node storage in GBs on the Db server. - :vartype db_node_storage_size_in_gbs: int - :ivar vm_cluster_ids: The OCID of the VM Clusters associated with the Db server. - :vartype vm_cluster_ids: list[str] - :ivar db_node_ids: The OCID of the Db nodes associated with the Db server. - :vartype db_node_ids: list[str] - :ivar lifecycle_details: Lifecycle details of dbServer. - :vartype lifecycle_details: str - :ivar lifecycle_state: DbServer provisioning state. Known values are: "Creating", "Available", - "Unavailable", "Deleting", "Deleted", and "MaintenanceInProgress". - :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbServerProvisioningState - :ivar max_cpu_count: The total number of CPU cores available. - :vartype max_cpu_count: int - :ivar autonomous_vm_cluster_ids: The list of OCIDs of the Autonomous VM Clusters associated - with the Db server. - :vartype autonomous_vm_cluster_ids: list[str] - :ivar autonomous_virtual_machine_ids: The list of OCIDs of the Autonomous Virtual Machines - associated with the Db server. - :vartype autonomous_virtual_machine_ids: list[str] - :ivar max_db_node_storage_in_gbs: The total max dbNode storage in GBs. - :vartype max_db_node_storage_in_gbs: int - :ivar memory_size_in_gbs: The total memory size in GBs. - :vartype memory_size_in_gbs: int - :ivar shape: The shape of the Db server. The shape determines the amount of CPU, storage, and - memory resources available. - :vartype shape: str - :ivar time_created: The date and time that the Db Server was created. - :vartype time_created: ~datetime.datetime - :ivar provisioning_state: Azure resource provisioning state. Known values are: "Succeeded", - "Failed", and "Canceled". - :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.ResourceProvisioningState - :ivar compute_model: The compute model of the Exadata Infrastructure. Known values are: "ECPU" - and "OCPU". - :vartype compute_model: str or ~azure.mgmt.oracledatabase.models.ComputeModel + :ivar version: A valid Oracle Database version. Required. + :vartype version: str + :ivar is_latest_for_major_version: True if this version of the Oracle Database software is the + latest version for a release. + :vartype is_latest_for_major_version: bool + :ivar is_preview_db_version: True if this version of the Oracle Database software is the + preview version. + :vartype is_preview_db_version: bool + :ivar is_upgrade_supported: True if this version of the Oracle Database software is supported + for Upgrade. + :vartype is_upgrade_supported: bool + :ivar supports_pdb: True if this version of the Oracle Database software supports pluggable + databases. + :vartype supports_pdb: bool """ - ocid: Optional[str] = rest_field(visibility=["read"]) - """Db server name.""" - display_name: Optional[str] = rest_field(name="displayName", visibility=["read"]) - """The name for the Db Server.""" - compartment_id: Optional[str] = rest_field(name="compartmentId", visibility=["read"]) - """The OCID of the compartment.""" - exadata_infrastructure_id: Optional[str] = rest_field(name="exadataInfrastructureId", visibility=["read"]) - """The OCID of the Exadata infrastructure.""" - cpu_core_count: Optional[int] = rest_field(name="cpuCoreCount", visibility=["read"]) - """The number of CPU cores enabled on the Db server.""" - db_server_patching_details: Optional["_models.DbServerPatchingDetails"] = rest_field( - name="dbServerPatchingDetails", visibility=["read"] + version: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """A valid Oracle Database version. Required.""" + is_latest_for_major_version: Optional[bool] = rest_field( + name="isLatestForMajorVersion", visibility=["read", "create", "update", "delete", "query"] ) - """dbServerPatching details of the Db server.""" - max_memory_in_gbs: Optional[int] = rest_field(name="maxMemoryInGbs", visibility=["read"]) - """The total memory available in GBs.""" - db_node_storage_size_in_gbs: Optional[int] = rest_field(name="dbNodeStorageSizeInGbs", visibility=["read"]) - """The allocated local node storage in GBs on the Db server.""" - vm_cluster_ids: Optional[list[str]] = rest_field(name="vmClusterIds", visibility=["read"]) - """The OCID of the VM Clusters associated with the Db server.""" - db_node_ids: Optional[list[str]] = rest_field(name="dbNodeIds", visibility=["read"]) - """The OCID of the Db nodes associated with the Db server.""" - lifecycle_details: Optional[str] = rest_field(name="lifecycleDetails", visibility=["read"]) - """Lifecycle details of dbServer.""" - lifecycle_state: Optional[Union[str, "_models.DbServerProvisioningState"]] = rest_field( - name="lifecycleState", visibility=["read"] + """True if this version of the Oracle Database software is the latest version for a release.""" + is_preview_db_version: Optional[bool] = rest_field( + name="isPreviewDbVersion", visibility=["read", "create", "update", "delete", "query"] ) - """DbServer provisioning state. Known values are: \"Creating\", \"Available\", \"Unavailable\", - \"Deleting\", \"Deleted\", and \"MaintenanceInProgress\".""" - max_cpu_count: Optional[int] = rest_field(name="maxCpuCount", visibility=["read"]) - """The total number of CPU cores available.""" - autonomous_vm_cluster_ids: Optional[list[str]] = rest_field(name="autonomousVmClusterIds", visibility=["read"]) - """The list of OCIDs of the Autonomous VM Clusters associated with the Db server.""" - autonomous_virtual_machine_ids: Optional[list[str]] = rest_field( - name="autonomousVirtualMachineIds", visibility=["read"] + """True if this version of the Oracle Database software is the preview version.""" + is_upgrade_supported: Optional[bool] = rest_field( + name="isUpgradeSupported", visibility=["read", "create", "update", "delete", "query"] ) - """The list of OCIDs of the Autonomous Virtual Machines associated with the Db server.""" - max_db_node_storage_in_gbs: Optional[int] = rest_field(name="maxDbNodeStorageInGbs", visibility=["read"]) - """The total max dbNode storage in GBs.""" - memory_size_in_gbs: Optional[int] = rest_field(name="memorySizeInGbs", visibility=["read"]) - """The total memory size in GBs.""" - shape: Optional[str] = rest_field(visibility=["read"]) - """The shape of the Db server. The shape determines the amount of CPU, storage, and memory - resources available.""" - time_created: Optional[datetime.datetime] = rest_field(name="timeCreated", visibility=["read"], format="rfc3339") - """The date and time that the Db Server was created.""" - provisioning_state: Optional[Union[str, "_models.ResourceProvisioningState"]] = rest_field( - name="provisioningState", visibility=["read"] + """True if this version of the Oracle Database software is supported for Upgrade.""" + supports_pdb: Optional[bool] = rest_field( + name="supportsPdb", visibility=["read", "create", "update", "delete", "query"] ) - """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", and - \"Canceled\".""" - compute_model: Optional[Union[str, "_models.ComputeModel"]] = rest_field(name="computeModel", visibility=["read"]) - """The compute model of the Exadata Infrastructure. Known values are: \"ECPU\" and \"OCPU\".""" - + """True if this version of the Oracle Database software supports pluggable databases.""" -class DbSystem(TrackedResource): - """DbSystem resource definition. + @overload + def __init__( + self, + *, + version: str, + is_latest_for_major_version: Optional[bool] = None, + is_preview_db_version: Optional[bool] = None, + is_upgrade_supported: Optional[bool] = None, + supports_pdb: Optional[bool] = None, + ) -> None: ... - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar location: The geo-location where the resource lives. Required. - :vartype location: str - :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.DbSystemProperties - :ivar zones: The availability zones. - :vartype zones: list[str] + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DefinedFileSystemConfiguration(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Predefined configurations for the file system. + + :ivar is_backup_partition: Checks if the data can be backed up. + :vartype is_backup_partition: bool + :ivar is_resizable: Checks if the mount path is resizable. + :vartype is_resizable: bool + :ivar min_size_gb: Minimum size of mount path in Gb. + :vartype min_size_gb: int + :ivar mount_point: Mount path for the file system. + :vartype mount_point: str """ - properties: Optional["_models.DbSystemProperties"] = rest_field( - visibility=["read", "create", "update", "delete", "query"] + is_backup_partition: Optional[bool] = rest_field( + name="isBackupPartition", visibility=["read", "create", "update", "delete", "query"] ) - """The resource-specific properties for this resource.""" - zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The availability zones.""" + """Checks if the data can be backed up.""" + is_resizable: Optional[bool] = rest_field( + name="isResizable", visibility=["read", "create", "update", "delete", "query"] + ) + """Checks if the mount path is resizable.""" + min_size_gb: Optional[int] = rest_field( + name="minSizeGb", visibility=["read", "create", "update", "delete", "query"] + ) + """Minimum size of mount path in Gb.""" + mount_point: Optional[str] = rest_field( + name="mountPoint", visibility=["read", "create", "update", "delete", "query"] + ) + """Mount path for the file system.""" @overload def __init__( self, *, - location: str, - tags: Optional[dict[str, str]] = None, - properties: Optional["_models.DbSystemProperties"] = None, - zones: Optional[list[str]] = None, + is_backup_partition: Optional[bool] = None, + is_resizable: Optional[bool] = None, + min_size_gb: Optional[int] = None, + mount_point: Optional[str] = None, ) -> None: ... @overload @@ -4742,229 +6559,237 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbSystemBaseProperties(_Model): - """DbSystem resource base model. - - You probably want to use the sub-classes and not this class directly. Known sub-classes are: - DbSystemProperties +class DeploymentConnectionAssignmentProperties(_Model): + """Deployment-connection assignment properties. - :ivar source: The source of the database: Use ``None`` for creating a new database. The default - is ``None``. "None" - :vartype source: str or ~azure.mgmt.oracledatabase.models.DbSystemSourceType - :ivar provisioning_state: dbSystem provisioning state. Known values are: "Succeeded", "Failed", - "Canceled", and "Provisioning". + :ivar connection_id: The OCID of the connection being referenced. Required. + :vartype connection_id: str + :ivar deployment_id: The OCID of the deployment being referenced. Required. + :vartype deployment_id: str + :ivar compartment_id: The OCID of the compartment being referenced. + :vartype compartment_id: str + :ivar deployment_name: The deployment name. + :vartype deployment_name: str + :ivar connection_name: The connection name. + :vartype connection_name: str + :ivar ocid: The OCID of the assignment being referenced. + :vartype ocid: str + :ivar lifecycle_state: The assignment lifecycle state. Known values are: "CREATING", "ACTIVE", + "FAILED", "UPDATING", "DELETING", and "DELETED". + :vartype lifecycle_state: str or + ~azure.mgmt.oracledatabase.models.GoldenGateConnectionAssignmentLifecycleState + :ivar time_created: The time the assignment was created. + :vartype time_created: str + :ivar time_updated: The time the assignment was last updated. + :vartype time_updated: str + :ivar alias_name: The assignment alias name. + :vartype alias_name: str + :ivar provisioning_state: Deployment-connection assignment provisioning state. Known values + are: "Succeeded", "Failed", "Canceled", and "Provisioning". :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState - :ivar oci_url: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. - :vartype oci_url: str - :ivar resource_anchor_id: Azure Resource Anchor ID. Required. - :vartype resource_anchor_id: str - :ivar network_anchor_id: Azure Network Anchor ID. Required. - :vartype network_anchor_id: str - :ivar cluster_name: The cluster name for Exadata and 2-node RAC virtual machine DB systems. The - cluster name must begin with an alphabetic character, and may contain hyphens (-). Underscores - (_) are not permitted. The cluster name can be no longer than 11 characters and is not case - sensitive. - :vartype cluster_name: str - :ivar display_name: The user-friendly name for the DB system. The name does not have to be - unique. - :vartype display_name: str - :ivar initial_data_storage_size_in_gb: Size in GB of the initial data volume that will be - created and attached to a virtual machine DB system. You can scale up storage after - provisioning, as needed. Note that the total storage size attached will be more than the amount - you specify to allow for REDO/RECO space and software volume. - :vartype initial_data_storage_size_in_gb: int - :ivar data_storage_size_in_gbs: The data storage size, in gigabytes, that is currently - available to the DB system. Applies only for virtual machine DB systems. - :vartype data_storage_size_in_gbs: int - :ivar db_system_options: The DB system options. - :vartype db_system_options: ~azure.mgmt.oracledatabase.models.DbSystemOptions - :ivar disk_redundancy: The type of redundancy configured for the DB system. NORMAL is 2-way - redundancy. HIGH is 3-way redundancy. Known values are: "High" and "Normal". - :vartype disk_redundancy: str or ~azure.mgmt.oracledatabase.models.DiskRedundancyType - :ivar domain_v2: The domain name for the DB system. - :vartype domain_v2: str - :ivar grid_image_ocid: The OCID of a grid infrastructure software image. This is a database - software image of the type GRID_IMAGE. - :vartype grid_image_ocid: str - :ivar hostname: The hostname for the DB system. Required. - :vartype hostname: str - :ivar ocid: The OCID of the DB system. + """ + + connection_id: str = rest_field(name="connectionId", visibility=["read"]) + """The OCID of the connection being referenced. Required.""" + deployment_id: str = rest_field(name="deploymentId", visibility=["read"]) + """The OCID of the deployment being referenced. Required.""" + compartment_id: Optional[str] = rest_field(name="compartmentId", visibility=["read"]) + """The OCID of the compartment being referenced.""" + deployment_name: Optional[str] = rest_field(name="deploymentName", visibility=["read"]) + """The deployment name.""" + connection_name: Optional[str] = rest_field(name="connectionName", visibility=["read"]) + """The connection name.""" + ocid: Optional[str] = rest_field(visibility=["read"]) + """The OCID of the assignment being referenced.""" + lifecycle_state: Optional[Union[str, "_models.GoldenGateConnectionAssignmentLifecycleState"]] = rest_field( + name="lifecycleState", visibility=["read"] + ) + """The assignment lifecycle state. Known values are: \"CREATING\", \"ACTIVE\", \"FAILED\", + \"UPDATING\", \"DELETING\", and \"DELETED\".""" + time_created: Optional[str] = rest_field(name="timeCreated", visibility=["read"]) + """The time the assignment was created.""" + time_updated: Optional[str] = rest_field(name="timeUpdated", visibility=["read"]) + """The time the assignment was last updated.""" + alias_name: Optional[str] = rest_field(name="aliasName", visibility=["read"]) + """The assignment alias name.""" + provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """Deployment-connection assignment provisioning state. Known values are: \"Succeeded\", + \"Failed\", \"Canceled\", and \"Provisioning\".""" + + +class DeploymentProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """GoldenGate Deployment resource model. + + :ivar backup_schedule: Backup schedule. + :vartype backup_schedule: ~azure.mgmt.oracledatabase.models.BackupScheduleType + :ivar compartment: OCI compartment. + :vartype compartment: str + :ivar ocid: The OCID of the deployment being referenced. :vartype ocid: str - :ivar license_model_v2: The Oracle license model that applies to all the databases on the DB - system. The default is LicenseIncluded. Known values are: "LicenseIncluded" and - "BringYourOwnLicense". - :vartype license_model_v2: str or ~azure.mgmt.oracledatabase.models.LicenseModel - :ivar lifecycle_details: Additional information about the current lifecycle state. + :ivar cpu_core_count: The minimum number of OCPUs to be made available for this deployment. + :vartype cpu_core_count: int + :ivar display_name: Display name. Required. + :vartype display_name: str + :ivar category: The deployment category. Known values are: "DataReplication", + "StreamAnalytics", and "DataTransforms". + :vartype category: str or ~azure.mgmt.oracledatabase.models.CategoryType + :ivar deployment_type: The type of deployment. Known values are: "Ogg", "DatabaseOracle", + "BigData", "DatabaseMicrosoftSQLServer", "DatabaseMySQL", "DatabasePostGreSQL", + "DatabaseDB2ZOS", "DATABASE_DB2I", "GGSA", and "DataTransforms". + :vartype deployment_type: str or ~azure.mgmt.oracledatabase.models.DeploymentType + :ivar deployment_url: HTTPS link to OCI resource exposed to Azure Customer via Azure Interface. + :vartype deployment_url: str + :ivar environment_type: Environment type. Known values are: "Production" and + "DevelopmentOrTesting". + :vartype environment_type: str or ~azure.mgmt.oracledatabase.models.SetupType + :ivar is_auto_scaling_enabled: Indicates if auto scaling is enabled for the deployment's CPU + core count. + :vartype is_auto_scaling_enabled: bool + :ivar ingress_ips: Connection IP address. + :vartype ingress_ips: list[str] + :ivar is_public: True if this object is publicly available. + :vartype is_public: bool + :ivar license_model: The Oracle license model that applies to a Deployment. Known values are: + "LicenseIncluded" and "BringYourOwnLicense". + :vartype license_model: str or ~azure.mgmt.oracledatabase.models.LicenseModel + :ivar lifecycle_details: Describes the object's current state in detail. :vartype lifecycle_details: str - :ivar lifecycle_state: The current state of the DB system. Known values are: "Provisioning", - "Available", "Updating", "Terminating", "Terminated", "Failed", "Migrated", - "MaintenanceInProgress", "NeedsAttention", and "Upgrading". - :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbSystemLifecycleState - :ivar listener_port: The port number configured for the listener on the DB system. - :vartype listener_port: int - :ivar memory_size_in_gbs: Memory allocated to the DB system, in gigabytes. - :vartype memory_size_in_gbs: int - :ivar node_count: The number of nodes in the DB system. For RAC DB systems, the value is - greater than 1. - :vartype node_count: int - :ivar scan_dns_name: The FQDN of the DNS record for the SCAN IP addresses that are associated - with the DB system. - :vartype scan_dns_name: str - :ivar scan_ips: The list of Single Client Access Name (SCAN) IP addresses associated with the - DB system. SCAN IP addresses are typically used for load balancing and are not assigned to any - interface. Oracle Clusterware directs the requests to the appropriate nodes in the cluster. - Note: For a single-node DB system, this list is empty. - :vartype scan_ips: list[str] - :ivar shape: The shape of the DB system. The shape determines resources to allocate to the DB - system. For virtual machine shapes, the number of CPU cores and memory. For bare metal and - Exadata shapes, the number of CPU cores, storage, and memory. Required. - :vartype shape: str - :ivar ssh_public_keys: The public key portion of one or more key pairs used for SSH access to - the DB system. Required. - :vartype ssh_public_keys: list[str] - :ivar storage_volume_performance_mode: The block storage volume performance level. Valid values - are Balanced and HighPerformance. See `Block Volume Performance - `_ for more information. Known values are: - "Balanced" and "HighPerformance". - :vartype storage_volume_performance_mode: str or - ~azure.mgmt.oracledatabase.models.StorageVolumePerformanceMode - :ivar time_zone: The time zone of the DB system, e.g., UTC, to set the timeZone as UTC. + :ivar lifecycle_state: Possible lifecycle states. Known values are: "Creating", "Updating", + "Active", "InActive", "Deleting", "Deleted", "Failed", "Needs Attention", "In Progress", + "Canceling", "Canceled", "Succeeded", and "Waiting". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DeploymentLifecycleState + :ivar time_created: The date time the resource was created in OCI. + :vartype time_created: str + :ivar time_updated: The date time the resource was last updated in OCI. + :vartype time_updated: str + :ivar maintenance_configuration: Maintenance configuration. + :vartype maintenance_configuration: + ~azure.mgmt.oracledatabase.models.MaintenanceConfigurationType + :ivar maintenance_window: Maintenance window. + :vartype maintenance_window: ~azure.mgmt.oracledatabase.models.MaintenanceWindowType + :ivar network_anchor_id: Azure network anchor ID. Required. + :vartype network_anchor_id: str + :ivar ogg_data: Deployment data for creating an OGG deployment. + :vartype ogg_data: ~azure.mgmt.oracledatabase.models.OggDeploymentDetails + :ivar private_ip_address: The private IP address of VCN representing the access point for the + associated endpoint service in the GoldenGate service VCN. + :vartype private_ip_address: str + :ivar provisioning_state: Deployment provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar resource_anchor_id: Corresponding Azure resource anchor ID. Required. + :vartype resource_anchor_id: str + :ivar storage_utilization_in_bytes: Storage utilization in bytes. + :vartype storage_utilization_in_bytes: int + :ivar time_zone: The time zone of the deployment, for example, UTC. :vartype time_zone: str - :ivar version: The Oracle Database version of the DB system. + :ivar version: The current version. :vartype version: str - :ivar compute_model: The compute model for Base Database Service. This is required if using the - ``computeCount`` parameter. If using ``cpuCoreCount`` then it is an error to specify - ``computeModel`` to a non-null value. The ECPU compute model is the recommended model, and the - OCPU compute model is legacy. Known values are: "ECPU" and "OCPU". - :vartype compute_model: str or ~azure.mgmt.oracledatabase.models.ComputeModel - :ivar compute_count: The number of compute servers for the DB system. - :vartype compute_count: int """ - __mapping__: dict[str, _Model] = {} - source: str = rest_discriminator(name="source", visibility=["read", "create"]) - """The source of the database: Use ``None`` for creating a new database. The default is ``None``. - \"None\"""" - provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( - name="provisioningState", visibility=["read"] - ) - """dbSystem provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and - \"Provisioning\".""" - oci_url: Optional[str] = rest_field(name="ociUrl", visibility=["read"]) - """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" - resource_anchor_id: str = rest_field(name="resourceAnchorId", visibility=["read", "create"]) - """Azure Resource Anchor ID. Required.""" - network_anchor_id: str = rest_field(name="networkAnchorId", visibility=["read", "create"]) - """Azure Network Anchor ID. Required.""" - cluster_name: Optional[str] = rest_field(name="clusterName", visibility=["read", "create"]) - """The cluster name for Exadata and 2-node RAC virtual machine DB systems. The cluster name must - begin with an alphabetic character, and may contain hyphens (-). Underscores (_) are not - permitted. The cluster name can be no longer than 11 characters and is not case sensitive.""" - display_name: Optional[str] = rest_field(name="displayName", visibility=["read", "create"]) - """The user-friendly name for the DB system. The name does not have to be unique.""" - initial_data_storage_size_in_gb: Optional[int] = rest_field( - name="initialDataStorageSizeInGb", visibility=["create"] - ) - """Size in GB of the initial data volume that will be created and attached to a virtual machine DB - system. You can scale up storage after provisioning, as needed. Note that the total storage - size attached will be more than the amount you specify to allow for REDO/RECO space and - software volume.""" - data_storage_size_in_gbs: Optional[int] = rest_field(name="dataStorageSizeInGbs", visibility=["read"]) - """The data storage size, in gigabytes, that is currently available to the DB system. Applies only - for virtual machine DB systems.""" - db_system_options: Optional["_models.DbSystemOptions"] = rest_field( - name="dbSystemOptions", visibility=["read", "create"] - ) - """The DB system options.""" - disk_redundancy: Optional[Union[str, "_models.DiskRedundancyType"]] = rest_field( - name="diskRedundancy", visibility=["read", "create"] + backup_schedule: Optional["_models.BackupScheduleType"] = rest_field( + name="backupSchedule", visibility=["read", "create", "update"] ) - """The type of redundancy configured for the DB system. NORMAL is 2-way redundancy. HIGH is 3-way - redundancy. Known values are: \"High\" and \"Normal\".""" - domain_v2: Optional[str] = rest_field(name="domain", visibility=["read", "create"]) - """The domain name for the DB system.""" - grid_image_ocid: Optional[str] = rest_field(name="gridImageOcid", visibility=["read"]) - """The OCID of a grid infrastructure software image. This is a database software image of the type - GRID_IMAGE.""" - hostname: str = rest_field(visibility=["read", "create"]) - """The hostname for the DB system. Required.""" + """Backup schedule.""" + compartment: Optional[str] = rest_field(visibility=["read"]) + """OCI compartment.""" ocid: Optional[str] = rest_field(visibility=["read"]) - """The OCID of the DB system.""" - license_model_v2: Optional[Union[str, "_models.LicenseModel"]] = rest_field( - name="licenseModel", visibility=["read", "create"] + """The OCID of the deployment being referenced.""" + cpu_core_count: Optional[int] = rest_field(name="cpuCoreCount", visibility=["read", "create", "update"]) + """The minimum number of OCPUs to be made available for this deployment.""" + display_name: str = rest_field(name="displayName", visibility=["read", "create"]) + """Display name. Required.""" + category: Optional[Union[str, "_models.CategoryType"]] = rest_field(visibility=["read", "create"]) + """The deployment category. Known values are: \"DataReplication\", \"StreamAnalytics\", and + \"DataTransforms\".""" + deployment_type: Optional[Union[str, "_models.DeploymentType"]] = rest_field( + name="deploymentType", visibility=["read", "create"] + ) + """The type of deployment. Known values are: \"Ogg\", \"DatabaseOracle\", \"BigData\", + \"DatabaseMicrosoftSQLServer\", \"DatabaseMySQL\", \"DatabasePostGreSQL\", \"DatabaseDB2ZOS\", + \"DATABASE_DB2I\", \"GGSA\", and \"DataTransforms\".""" + deployment_url: Optional[str] = rest_field(name="deploymentUrl", visibility=["read"]) + """HTTPS link to OCI resource exposed to Azure Customer via Azure Interface.""" + environment_type: Optional[Union[str, "_models.SetupType"]] = rest_field( + name="environmentType", visibility=["read", "create"] + ) + """Environment type. Known values are: \"Production\" and \"DevelopmentOrTesting\".""" + is_auto_scaling_enabled: Optional[bool] = rest_field(name="isAutoScalingEnabled", visibility=["create"]) + """Indicates if auto scaling is enabled for the deployment's CPU core count.""" + ingress_ips: Optional[list[str]] = rest_field(name="ingressIps", visibility=["read"]) + """Connection IP address.""" + is_public: Optional[bool] = rest_field(name="isPublic", visibility=["create"]) + """True if this object is publicly available.""" + license_model: Optional[Union[str, "_models.LicenseModel"]] = rest_field( + name="licenseModel", visibility=["read", "create", "update"] ) - """The Oracle license model that applies to all the databases on the DB system. The default is - LicenseIncluded. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + """The Oracle license model that applies to a Deployment. Known values are: \"LicenseIncluded\" + and \"BringYourOwnLicense\".""" lifecycle_details: Optional[str] = rest_field(name="lifecycleDetails", visibility=["read"]) - """Additional information about the current lifecycle state.""" - lifecycle_state: Optional[Union[str, "_models.DbSystemLifecycleState"]] = rest_field( + """Describes the object's current state in detail.""" + lifecycle_state: Optional[Union[str, "_models.DeploymentLifecycleState"]] = rest_field( name="lifecycleState", visibility=["read"] ) - """The current state of the DB system. Known values are: \"Provisioning\", \"Available\", - \"Updating\", \"Terminating\", \"Terminated\", \"Failed\", \"Migrated\", - \"MaintenanceInProgress\", \"NeedsAttention\", and \"Upgrading\".""" - listener_port: Optional[int] = rest_field(name="listenerPort", visibility=["read"]) - """The port number configured for the listener on the DB system.""" - memory_size_in_gbs: Optional[int] = rest_field(name="memorySizeInGbs", visibility=["read"]) - """Memory allocated to the DB system, in gigabytes.""" - node_count: Optional[int] = rest_field(name="nodeCount", visibility=["read", "create"]) - """The number of nodes in the DB system. For RAC DB systems, the value is greater than 1.""" - scan_dns_name: Optional[str] = rest_field(name="scanDnsName", visibility=["read"]) - """The FQDN of the DNS record for the SCAN IP addresses that are associated with the DB system.""" - scan_ips: Optional[list[str]] = rest_field(name="scanIps", visibility=["read"]) - """The list of Single Client Access Name (SCAN) IP addresses associated with the DB system. SCAN - IP addresses are typically used for load balancing and are not assigned to any interface. - Oracle Clusterware directs the requests to the appropriate nodes in the cluster. Note: For a - single-node DB system, this list is empty.""" - shape: str = rest_field(visibility=["read", "create"]) - """The shape of the DB system. The shape determines resources to allocate to the DB system. For - virtual machine shapes, the number of CPU cores and memory. For bare metal and Exadata shapes, - the number of CPU cores, storage, and memory. Required.""" - ssh_public_keys: list[str] = rest_field(name="sshPublicKeys", visibility=["read", "create"]) - """The public key portion of one or more key pairs used for SSH access to the DB system. Required.""" - storage_volume_performance_mode: Optional[Union[str, "_models.StorageVolumePerformanceMode"]] = rest_field( - name="storageVolumePerformanceMode", visibility=["read", "create"] - ) - """The block storage volume performance level. Valid values are Balanced and HighPerformance. See - `Block Volume Performance `_ for more - information. Known values are: \"Balanced\" and \"HighPerformance\".""" - time_zone: Optional[str] = rest_field(name="timeZone", visibility=["read", "create"]) - """The time zone of the DB system, e.g., UTC, to set the timeZone as UTC.""" - version: Optional[str] = rest_field(visibility=["read"]) - """The Oracle Database version of the DB system.""" - compute_model: Optional[Union[str, "_models.ComputeModel"]] = rest_field( - name="computeModel", visibility=["read", "create"] + """Possible lifecycle states. Known values are: \"Creating\", \"Updating\", \"Active\", + \"InActive\", \"Deleting\", \"Deleted\", \"Failed\", \"Needs Attention\", \"In Progress\", + \"Canceling\", \"Canceled\", \"Succeeded\", and \"Waiting\".""" + time_created: Optional[str] = rest_field(name="timeCreated", visibility=["read"]) + """The date time the resource was created in OCI.""" + time_updated: Optional[str] = rest_field(name="timeUpdated", visibility=["read"]) + """The date time the resource was last updated in OCI.""" + maintenance_configuration: Optional["_models.MaintenanceConfigurationType"] = rest_field( + name="maintenanceConfiguration", visibility=["read", "create", "update"] + ) + """Maintenance configuration.""" + maintenance_window: Optional["_models.MaintenanceWindowType"] = rest_field( + name="maintenanceWindow", visibility=["read", "create", "update"] ) - """The compute model for Base Database Service. This is required if using the ``computeCount`` - parameter. If using ``cpuCoreCount`` then it is an error to specify ``computeModel`` to a - non-null value. The ECPU compute model is the recommended model, and the OCPU compute model is - legacy. Known values are: \"ECPU\" and \"OCPU\".""" - compute_count: Optional[int] = rest_field(name="computeCount", visibility=["read", "create"]) - """The number of compute servers for the DB system.""" + """Maintenance window.""" + network_anchor_id: str = rest_field(name="networkAnchorId", visibility=["read", "create"]) + """Azure network anchor ID. Required.""" + ogg_data: Optional["_models.OggDeploymentDetails"] = rest_field(name="oggData", visibility=["read", "create"]) + """Deployment data for creating an OGG deployment.""" + private_ip_address: Optional[str] = rest_field(name="privateIpAddress", visibility=["read"]) + """The private IP address of VCN representing the access point for the associated endpoint service + in the GoldenGate service VCN.""" + provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] + ) + """Deployment provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and + \"Provisioning\".""" + resource_anchor_id: str = rest_field(name="resourceAnchorId", visibility=["read", "create"]) + """Corresponding Azure resource anchor ID. Required.""" + storage_utilization_in_bytes: Optional[int] = rest_field(name="storageUtilizationInBytes", visibility=["read"]) + """Storage utilization in bytes.""" + time_zone: Optional[str] = rest_field(name="timeZone", visibility=["read", "create"]) + """The time zone of the deployment, for example, UTC.""" + version: Optional[str] = rest_field(visibility=["read", "create"]) + """The current version.""" @overload def __init__( # pylint: disable=too-many-locals self, *, - resource_anchor_id: str, + display_name: str, network_anchor_id: str, - hostname: str, - shape: str, - ssh_public_keys: list[str], - source: str = None, - cluster_name: Optional[str] = None, - display_name: Optional[str] = None, - initial_data_storage_size_in_gb: Optional[int] = None, - db_system_options: Optional["_models.DbSystemOptions"] = None, - disk_redundancy: Optional[Union[str, "_models.DiskRedundancyType"]] = None, - domain_v2: Optional[str] = None, - license_model_v2: Optional[Union[str, "_models.LicenseModel"]] = None, - node_count: Optional[int] = None, - storage_volume_performance_mode: Optional[Union[str, "_models.StorageVolumePerformanceMode"]] = None, + resource_anchor_id: str, + backup_schedule: Optional["_models.BackupScheduleType"] = None, + cpu_core_count: Optional[int] = None, + category: Optional[Union[str, "_models.CategoryType"]] = None, + deployment_type: Optional[Union[str, "_models.DeploymentType"]] = None, + environment_type: Optional[Union[str, "_models.SetupType"]] = None, + is_auto_scaling_enabled: Optional[bool] = None, + is_public: Optional[bool] = None, + license_model: Optional[Union[str, "_models.LicenseModel"]] = None, + maintenance_configuration: Optional["_models.MaintenanceConfigurationType"] = None, + maintenance_window: Optional["_models.MaintenanceWindowType"] = None, + ogg_data: Optional["_models.OggDeploymentDetails"] = None, time_zone: Optional[str] = None, - compute_model: Optional[Union[str, "_models.ComputeModel"]] = None, - compute_count: Optional[int] = None, + version: Optional[str] = None, ) -> None: ... @overload @@ -4978,25 +6803,65 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbSystemOptions(_Model): - """DbSystemOptions resource properties. +class DisasterRecoveryConfigurationDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Configurations of a Disaster Recovery Details. - :ivar storage_management: The storage option used in DB system. ASM - Automatic storage - management, LVM - Logical Volume management. "LVM" - :vartype storage_management: str or ~azure.mgmt.oracledatabase.models.StorageManagementType + :ivar disaster_recovery_type: Indicates the disaster recovery (DR) type of the Autonomous + Database Serverless instance. Autonomous Data Guard (ADG) DR type provides business critical DR + with a faster recovery time objective (RTO) during failover or switchover. Backup-based DR type + provides lower cost DR with a slower RTO during failover or switchover. Known values are: "Adg" + and "BackupBased". + :vartype disaster_recovery_type: str or ~azure.mgmt.oracledatabase.models.DisasterRecoveryType + :ivar time_snapshot_standby_enabled_till: Time and date stored as an RFC 3339 formatted + timestamp string. For example, 2022-01-01T12:00:00.000Z would set a limit for the snapshot + standby to be converted back to a cross-region standby database. + :vartype time_snapshot_standby_enabled_till: ~datetime.datetime + :ivar is_snapshot_standby: Indicates if user wants to convert to a snapshot standby. For + example, true would set a standby database to snapshot standby database. False would set a + snapshot standby database back to regular standby database. + :vartype is_snapshot_standby: bool + :ivar is_replicate_automatic_backups: If true, 7 days worth of backups are replicated across + regions for Cross-Region ADB or Backup-Based DR between Primary and Standby. If false, the + backups taken on the Primary are not replicated to the Standby database. + :vartype is_replicate_automatic_backups: bool """ - storage_management: Optional[Union[str, "_models.StorageManagementType"]] = rest_field( - name="storageManagement", visibility=["read", "create", "update", "delete", "query"] + disaster_recovery_type: Optional[Union[str, "_models.DisasterRecoveryType"]] = rest_field( + name="disasterRecoveryType", visibility=["read", "create", "update", "delete", "query"] ) - """The storage option used in DB system. ASM - Automatic storage management, LVM - Logical Volume - management. \"LVM\"""" + """Indicates the disaster recovery (DR) type of the Autonomous Database Serverless instance. + Autonomous Data Guard (ADG) DR type provides business critical DR with a faster recovery time + objective (RTO) during failover or switchover. Backup-based DR type provides lower cost DR with + a slower RTO during failover or switchover. Known values are: \"Adg\" and \"BackupBased\".""" + time_snapshot_standby_enabled_till: Optional[datetime.datetime] = rest_field( + name="timeSnapshotStandbyEnabledTill", + visibility=["read", "create", "update", "delete", "query"], + format="rfc3339", + ) + """Time and date stored as an RFC 3339 formatted timestamp string. For example, + 2022-01-01T12:00:00.000Z would set a limit for the snapshot standby to be converted back to a + cross-region standby database.""" + is_snapshot_standby: Optional[bool] = rest_field( + name="isSnapshotStandby", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates if user wants to convert to a snapshot standby. For example, true would set a standby + database to snapshot standby database. False would set a snapshot standby database back to + regular standby database.""" + is_replicate_automatic_backups: Optional[bool] = rest_field( + name="isReplicateAutomaticBackups", visibility=["read", "create", "update", "delete", "query"] + ) + """If true, 7 days worth of backups are replicated across regions for Cross-Region ADB or + Backup-Based DR between Primary and Standby. If false, the backups taken on the Primary are not + replicated to the Standby database.""" @overload def __init__( self, *, - storage_management: Optional[Union[str, "_models.StorageManagementType"]] = None, + disaster_recovery_type: Optional[Union[str, "_models.DisasterRecoveryType"]] = None, + time_snapshot_standby_enabled_till: Optional[datetime.datetime] = None, + is_snapshot_standby: Optional[bool] = None, + is_replicate_automatic_backups: Optional[bool] = None, ) -> None: ... @overload @@ -5010,166 +6875,26 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbSystemProperties(DbSystemBaseProperties, discriminator="None"): - """DbSystem resource model. +class DnsForwardingRule(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """DNS forwarding rule properties. - :ivar provisioning_state: dbSystem provisioning state. Known values are: "Succeeded", "Failed", - "Canceled", and "Provisioning". - :vartype provisioning_state: str or - ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState - :ivar oci_url: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. - :vartype oci_url: str - :ivar resource_anchor_id: Azure Resource Anchor ID. Required. - :vartype resource_anchor_id: str - :ivar network_anchor_id: Azure Network Anchor ID. Required. - :vartype network_anchor_id: str - :ivar cluster_name: The cluster name for Exadata and 2-node RAC virtual machine DB systems. The - cluster name must begin with an alphabetic character, and may contain hyphens (-). Underscores - (_) are not permitted. The cluster name can be no longer than 11 characters and is not case - sensitive. - :vartype cluster_name: str - :ivar display_name: The user-friendly name for the DB system. The name does not have to be - unique. - :vartype display_name: str - :ivar initial_data_storage_size_in_gb: Size in GB of the initial data volume that will be - created and attached to a virtual machine DB system. You can scale up storage after - provisioning, as needed. Note that the total storage size attached will be more than the amount - you specify to allow for REDO/RECO space and software volume. - :vartype initial_data_storage_size_in_gb: int - :ivar data_storage_size_in_gbs: The data storage size, in gigabytes, that is currently - available to the DB system. Applies only for virtual machine DB systems. - :vartype data_storage_size_in_gbs: int - :ivar db_system_options: The DB system options. - :vartype db_system_options: ~azure.mgmt.oracledatabase.models.DbSystemOptions - :ivar disk_redundancy: The type of redundancy configured for the DB system. NORMAL is 2-way - redundancy. HIGH is 3-way redundancy. Known values are: "High" and "Normal". - :vartype disk_redundancy: str or ~azure.mgmt.oracledatabase.models.DiskRedundancyType - :ivar domain_v2: The domain name for the DB system. - :vartype domain_v2: str - :ivar grid_image_ocid: The OCID of a grid infrastructure software image. This is a database - software image of the type GRID_IMAGE. - :vartype grid_image_ocid: str - :ivar hostname: The hostname for the DB system. Required. - :vartype hostname: str - :ivar ocid: The OCID of the DB system. - :vartype ocid: str - :ivar license_model_v2: The Oracle license model that applies to all the databases on the DB - system. The default is LicenseIncluded. Known values are: "LicenseIncluded" and - "BringYourOwnLicense". - :vartype license_model_v2: str or ~azure.mgmt.oracledatabase.models.LicenseModel - :ivar lifecycle_details: Additional information about the current lifecycle state. - :vartype lifecycle_details: str - :ivar lifecycle_state: The current state of the DB system. Known values are: "Provisioning", - "Available", "Updating", "Terminating", "Terminated", "Failed", "Migrated", - "MaintenanceInProgress", "NeedsAttention", and "Upgrading". - :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbSystemLifecycleState - :ivar listener_port: The port number configured for the listener on the DB system. - :vartype listener_port: int - :ivar memory_size_in_gbs: Memory allocated to the DB system, in gigabytes. - :vartype memory_size_in_gbs: int - :ivar node_count: The number of nodes in the DB system. For RAC DB systems, the value is - greater than 1. - :vartype node_count: int - :ivar scan_dns_name: The FQDN of the DNS record for the SCAN IP addresses that are associated - with the DB system. - :vartype scan_dns_name: str - :ivar scan_ips: The list of Single Client Access Name (SCAN) IP addresses associated with the - DB system. SCAN IP addresses are typically used for load balancing and are not assigned to any - interface. Oracle Clusterware directs the requests to the appropriate nodes in the cluster. - Note: For a single-node DB system, this list is empty. - :vartype scan_ips: list[str] - :ivar shape: The shape of the DB system. The shape determines resources to allocate to the DB - system. For virtual machine shapes, the number of CPU cores and memory. For bare metal and - Exadata shapes, the number of CPU cores, storage, and memory. Required. - :vartype shape: str - :ivar ssh_public_keys: The public key portion of one or more key pairs used for SSH access to - the DB system. Required. - :vartype ssh_public_keys: list[str] - :ivar storage_volume_performance_mode: The block storage volume performance level. Valid values - are Balanced and HighPerformance. See `Block Volume Performance - `_ for more information. Known values are: - "Balanced" and "HighPerformance". - :vartype storage_volume_performance_mode: str or - ~azure.mgmt.oracledatabase.models.StorageVolumePerformanceMode - :ivar time_zone: The time zone of the DB system, e.g., UTC, to set the timeZone as UTC. - :vartype time_zone: str - :ivar version: The Oracle Database version of the DB system. - :vartype version: str - :ivar compute_model: The compute model for Base Database Service. This is required if using the - ``computeCount`` parameter. If using ``cpuCoreCount`` then it is an error to specify - ``computeModel`` to a non-null value. The ECPU compute model is the recommended model, and the - OCPU compute model is legacy. Known values are: "ECPU" and "OCPU". - :vartype compute_model: str or ~azure.mgmt.oracledatabase.models.ComputeModel - :ivar compute_count: The number of compute servers for the DB system. - :vartype compute_count: int - :ivar source: The source of the database for creating a new database. Required. for creating a - new database. - :vartype source: str or ~azure.mgmt.oracledatabase.models.NONE - :ivar database_edition: The Oracle Database Edition that applies to all the databases on the DB - system. Exadata DB systems and 2-node RAC DB systems require - EnterpriseEditionExtremePerformance. Required. Known values are: "StandardEdition", - "EnterpriseEdition", "EnterpriseEditionHighPerformance", "EnterpriseEditionExtreme", and - "EnterpriseEditionDeveloper". - :vartype database_edition: str or ~azure.mgmt.oracledatabase.models.DbSystemDatabaseEditionType - :ivar admin_password: A strong password for SYS, SYSTEM, and PDB Admin. The password must be at - least nine characters and contain at least two uppercase, two lowercase, two numbers, and two - special characters. The special characters must be _, #, or -. - :vartype admin_password: str - :ivar db_version: A valid Oracle Database version. For a list of supported versions, use the - ListDbVersions operation. Required. - :vartype db_version: str - :ivar pdb_name: The name of the pluggable database. The name must begin with an alphabetic - character and can contain a maximum of thirty alphanumeric characters. Special characters are - not permitted. Pluggable database should not be same as database name. - :vartype pdb_name: str + :ivar domain_names: Comma-separated domain names. Required. + :vartype domain_names: str + :ivar forwarding_ip_address: Forwarding ip address. Required. + :vartype forwarding_ip_address: str """ - - source: Literal[DbSystemSourceType.NONE] = rest_discriminator(name="source", visibility=["read", "create", "update", "delete", "query"]) # type: ignore - """The source of the database for creating a new database. Required. for creating a new database.""" - database_edition: Union[str, "_models.DbSystemDatabaseEditionType"] = rest_field( - name="databaseEdition", visibility=["read", "create"] - ) - """The Oracle Database Edition that applies to all the databases on the DB system. Exadata DB - systems and 2-node RAC DB systems require EnterpriseEditionExtremePerformance. Required. Known - values are: \"StandardEdition\", \"EnterpriseEdition\", \"EnterpriseEditionHighPerformance\", - \"EnterpriseEditionExtreme\", and \"EnterpriseEditionDeveloper\".""" - admin_password: Optional[str] = rest_field(name="adminPassword", visibility=["create"]) - """A strong password for SYS, SYSTEM, and PDB Admin. The password must be at least nine characters - and contain at least two uppercase, two lowercase, two numbers, and two special characters. The - special characters must be _, #, or -.""" - db_version: str = rest_field(name="dbVersion", visibility=["read", "create"]) - """A valid Oracle Database version. For a list of supported versions, use the ListDbVersions - operation. Required.""" - pdb_name: Optional[str] = rest_field(name="pdbName", visibility=["create"]) - """The name of the pluggable database. The name must begin with an alphabetic character and can - contain a maximum of thirty alphanumeric characters. Special characters are not permitted. - Pluggable database should not be same as database name.""" - - @overload - def __init__( # pylint: disable=too-many-locals - self, - *, - resource_anchor_id: str, - network_anchor_id: str, - hostname: str, - shape: str, - ssh_public_keys: list[str], - database_edition: Union[str, "_models.DbSystemDatabaseEditionType"], - db_version: str, - cluster_name: Optional[str] = None, - display_name: Optional[str] = None, - initial_data_storage_size_in_gb: Optional[int] = None, - db_system_options: Optional["_models.DbSystemOptions"] = None, - disk_redundancy: Optional[Union[str, "_models.DiskRedundancyType"]] = None, - domain_v2: Optional[str] = None, - license_model_v2: Optional[Union[str, "_models.LicenseModel"]] = None, - node_count: Optional[int] = None, - storage_volume_performance_mode: Optional[Union[str, "_models.StorageVolumePerformanceMode"]] = None, - time_zone: Optional[str] = None, - compute_model: Optional[Union[str, "_models.ComputeModel"]] = None, - compute_count: Optional[int] = None, - admin_password: Optional[str] = None, - pdb_name: Optional[str] = None, + + domain_names: str = rest_field(name="domainNames", visibility=["create"]) + """Comma-separated domain names. Required.""" + forwarding_ip_address: str = rest_field(name="forwardingIpAddress", visibility=["create"]) + """Forwarding ip address. Required.""" + + @overload + def __init__( + self, + *, + domain_names: str, + forwarding_ip_address: str, ) -> None: ... @overload @@ -5181,11 +6906,10 @@ def __init__(self, mapping: Mapping[str, Any]) -> None: def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) - self.source = DbSystemSourceType.NONE # type: ignore -class DbSystemShape(ProxyResource): - """DbSystemShape resource definition. +class DnsPrivateView(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """DnsPrivateView resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. @@ -5199,10 +6923,10 @@ class DbSystemShape(ProxyResource): information. :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.DbSystemShapeProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.DnsPrivateViewProperties """ - properties: Optional["_models.DbSystemShapeProperties"] = rest_field( + properties: Optional["_models.DnsPrivateViewProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" @@ -5211,7 +6935,7 @@ class DbSystemShape(ProxyResource): def __init__( self, *, - properties: Optional["_models.DbSystemShapeProperties"] = None, + properties: Optional["_models.DnsPrivateViewProperties"] = None, ) -> None: ... @overload @@ -5225,208 +6949,204 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbSystemShapeProperties(_Model): - """DbSystemShape resource model. +class DnsPrivateViewProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Views resource model. - :ivar shape_family: The family of the shape used for the DB system. - :vartype shape_family: str - :ivar shape_name: The shape used for the DB system. Required. - :vartype shape_name: str - :ivar available_core_count: The maximum number of CPU cores that can be enabled on the DB - system for this shape. Required. - :vartype available_core_count: int - :ivar minimum_core_count: The minimum number of CPU cores that can be enabled on the DB system - for this shape. - :vartype minimum_core_count: int - :ivar runtime_minimum_core_count: The runtime minimum number of CPU cores that can be enabled - on the DB system for this shape. - :vartype runtime_minimum_core_count: int - :ivar core_count_increment: The discrete number by which the CPU core count for this shape can - be increased or decreased. - :vartype core_count_increment: int - :ivar min_storage_count: The minimum number of Exadata storage servers available for the - Exadata infrastructure. - :vartype min_storage_count: int - :ivar max_storage_count: The maximum number of Exadata storage servers available for the - Exadata infrastructure. - :vartype max_storage_count: int - :ivar available_data_storage_per_server_in_tbs: The maximum data storage available per storage - server for this shape. Only applicable to ExaCC Elastic shapes. - :vartype available_data_storage_per_server_in_tbs: float - :ivar available_memory_per_node_in_gbs: The maximum memory available per database node for this - shape. Only applicable to ExaCC Elastic shapes. - :vartype available_memory_per_node_in_gbs: int - :ivar available_db_node_per_node_in_gbs: The maximum Db Node storage available per database - node for this shape. Only applicable to ExaCC Elastic shapes. - :vartype available_db_node_per_node_in_gbs: int - :ivar min_core_count_per_node: The minimum number of CPU cores that can be enabled per node for - this shape. - :vartype min_core_count_per_node: int - :ivar available_memory_in_gbs: The maximum memory that can be enabled for this shape. - :vartype available_memory_in_gbs: int - :ivar min_memory_per_node_in_gbs: The minimum memory that need be allocated per node for this - shape. - :vartype min_memory_per_node_in_gbs: int - :ivar available_db_node_storage_in_gbs: The maximum Db Node storage that can be enabled for - this shape. - :vartype available_db_node_storage_in_gbs: int - :ivar min_db_node_storage_per_node_in_gbs: The minimum Db Node storage that need be allocated - per node for this shape. - :vartype min_db_node_storage_per_node_in_gbs: int - :ivar available_data_storage_in_tbs: The maximum DATA storage that can be enabled for this - shape. - :vartype available_data_storage_in_tbs: int - :ivar min_data_storage_in_tbs: The minimum data storage that need be allocated for this shape. - :vartype min_data_storage_in_tbs: int - :ivar minimum_node_count: The minimum number of database nodes available for this shape. - :vartype minimum_node_count: int - :ivar maximum_node_count: The maximum number of database nodes available for this shape. - :vartype maximum_node_count: int - :ivar available_core_count_per_node: The maximum number of CPU cores per database node that can - be enabled for this shape. Only applicable to the flex Exadata shape and ExaCC Elastic shapes. - :vartype available_core_count_per_node: int - :ivar compute_model: The compute model of the Exadata Infrastructure. Known values are: "ECPU" - and "OCPU". - :vartype compute_model: str or ~azure.mgmt.oracledatabase.models.ComputeModel - :ivar are_server_types_supported: Indicates if the shape supports database and storage server - types. - :vartype are_server_types_supported: bool - :ivar display_name: The display name of the shape used for the DB system. + :ivar ocid: The OCID of the view. Required. + :vartype ocid: str + :ivar display_name: The display name of the view resource. Required. :vartype display_name: str - :ivar shape_attributes: The shapeAttributes of the DB system shape.. - :vartype shape_attributes: list[str] + :ivar is_protected: A Boolean flag indicating whether or not parts of the resource are unable + to be explicitly managed. Required. + :vartype is_protected: bool + :ivar lifecycle_state: Views lifecycleState. Required. Known values are: "Active", "Deleted", + "Deleting", and "Updating". + :vartype lifecycle_state: str or + ~azure.mgmt.oracledatabase.models.DnsPrivateViewsLifecycleState + :ivar self_property: The canonical absolute URL of the resource. Required. + :vartype self_property: str + :ivar time_created: views timeCreated. Required. + :vartype time_created: ~datetime.datetime + :ivar time_updated: views timeCreated. Required. + :vartype time_updated: ~datetime.datetime + :ivar provisioning_state: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", and "Canceled". + :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.ResourceProvisioningState """ - shape_family: Optional[str] = rest_field( - name="shapeFamily", visibility=["read", "create", "update", "delete", "query"] - ) - """The family of the shape used for the DB system.""" - shape_name: str = rest_field(name="shapeName", visibility=["read", "create", "update", "delete", "query"]) - """The shape used for the DB system. Required.""" - available_core_count: int = rest_field( - name="availableCoreCount", visibility=["read", "create", "update", "delete", "query"] - ) - """The maximum number of CPU cores that can be enabled on the DB system for this shape. Required.""" - minimum_core_count: Optional[int] = rest_field( - name="minimumCoreCount", visibility=["read", "create", "update", "delete", "query"] - ) - """The minimum number of CPU cores that can be enabled on the DB system for this shape.""" - runtime_minimum_core_count: Optional[int] = rest_field( - name="runtimeMinimumCoreCount", visibility=["read", "create", "update", "delete", "query"] - ) - """The runtime minimum number of CPU cores that can be enabled on the DB system for this shape.""" - core_count_increment: Optional[int] = rest_field( - name="coreCountIncrement", visibility=["read", "create", "update", "delete", "query"] - ) - """The discrete number by which the CPU core count for this shape can be increased or decreased.""" - min_storage_count: Optional[int] = rest_field( - name="minStorageCount", visibility=["read", "create", "update", "delete", "query"] - ) - """The minimum number of Exadata storage servers available for the Exadata infrastructure.""" - max_storage_count: Optional[int] = rest_field( - name="maxStorageCount", visibility=["read", "create", "update", "delete", "query"] - ) - """The maximum number of Exadata storage servers available for the Exadata infrastructure.""" - available_data_storage_per_server_in_tbs: Optional[float] = rest_field( - name="availableDataStoragePerServerInTbs", visibility=["read", "create", "update", "delete", "query"] - ) - """The maximum data storage available per storage server for this shape. Only applicable to ExaCC - Elastic shapes.""" - available_memory_per_node_in_gbs: Optional[int] = rest_field( - name="availableMemoryPerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """The maximum memory available per database node for this shape. Only applicable to ExaCC Elastic - shapes.""" - available_db_node_per_node_in_gbs: Optional[int] = rest_field( - name="availableDbNodePerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """The maximum Db Node storage available per database node for this shape. Only applicable to - ExaCC Elastic shapes.""" - min_core_count_per_node: Optional[int] = rest_field( - name="minCoreCountPerNode", visibility=["read", "create", "update", "delete", "query"] - ) - """The minimum number of CPU cores that can be enabled per node for this shape.""" - available_memory_in_gbs: Optional[int] = rest_field( - name="availableMemoryInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """The maximum memory that can be enabled for this shape.""" - min_memory_per_node_in_gbs: Optional[int] = rest_field( - name="minMemoryPerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """The minimum memory that need be allocated per node for this shape.""" - available_db_node_storage_in_gbs: Optional[int] = rest_field( - name="availableDbNodeStorageInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """The maximum Db Node storage that can be enabled for this shape.""" - min_db_node_storage_per_node_in_gbs: Optional[int] = rest_field( - name="minDbNodeStoragePerNodeInGbs", visibility=["read", "create", "update", "delete", "query"] + ocid: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The OCID of the view. Required.""" + display_name: str = rest_field(name="displayName", visibility=["read", "create", "update", "delete", "query"]) + """The display name of the view resource. Required.""" + is_protected: bool = rest_field(name="isProtected", visibility=["read", "create", "update", "delete", "query"]) + """A Boolean flag indicating whether or not parts of the resource are unable to be explicitly + managed. Required.""" + lifecycle_state: Union[str, "_models.DnsPrivateViewsLifecycleState"] = rest_field( + name="lifecycleState", visibility=["read", "create", "update", "delete", "query"] ) - """The minimum Db Node storage that need be allocated per node for this shape.""" - available_data_storage_in_tbs: Optional[int] = rest_field( - name="availableDataStorageInTbs", visibility=["read", "create", "update", "delete", "query"] + """Views lifecycleState. Required. Known values are: \"Active\", \"Deleted\", \"Deleting\", and + \"Updating\".""" + self_property: str = rest_field(name="self", visibility=["read", "create", "update", "delete", "query"]) + """The canonical absolute URL of the resource. Required.""" + time_created: datetime.datetime = rest_field( + name="timeCreated", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" ) - """The maximum DATA storage that can be enabled for this shape.""" - min_data_storage_in_tbs: Optional[int] = rest_field( - name="minDataStorageInTbs", visibility=["read", "create", "update", "delete", "query"] + """views timeCreated. Required.""" + time_updated: datetime.datetime = rest_field( + name="timeUpdated", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" ) - """The minimum data storage that need be allocated for this shape.""" - minimum_node_count: Optional[int] = rest_field( - name="minimumNodeCount", visibility=["read", "create", "update", "delete", "query"] + """views timeCreated. Required.""" + provisioning_state: Optional[Union[str, "_models.ResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] ) - """The minimum number of database nodes available for this shape.""" - maximum_node_count: Optional[int] = rest_field( - name="maximumNodeCount", visibility=["read", "create", "update", "delete", "query"] + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", and + \"Canceled\".""" + + @overload + def __init__( + self, + *, + ocid: str, + display_name: str, + is_protected: bool, + lifecycle_state: Union[str, "_models.DnsPrivateViewsLifecycleState"], + self_property: str, + time_created: datetime.datetime, + time_updated: datetime.datetime, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DnsPrivateZone(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """DnsPrivateZone resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.DnsPrivateZoneProperties + """ + + properties: Optional["_models.DnsPrivateZoneProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] ) - """The maximum number of database nodes available for this shape.""" - available_core_count_per_node: Optional[int] = rest_field( - name="availableCoreCountPerNode", visibility=["read", "create", "update", "delete", "query"] + """The resource-specific properties for this resource.""" + + @overload + def __init__( + self, + *, + properties: Optional["_models.DnsPrivateZoneProperties"] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class DnsPrivateZoneProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Zones resource model. + + :ivar ocid: The OCID of the Zone. Required. + :vartype ocid: str + :ivar is_protected: A Boolean flag indicating whether or not parts of the resource are unable + to be explicitly managed. Required. + :vartype is_protected: bool + :ivar lifecycle_state: Zones lifecycleState. Required. Known values are: "Active", "Creating", + "Deleted", "Deleting", and "Updating". + :vartype lifecycle_state: str or + ~azure.mgmt.oracledatabase.models.DnsPrivateZonesLifecycleState + :ivar self_property: The canonical absolute URL of the resource. Required. + :vartype self_property: str + :ivar serial: The current serial of the zone. As seen in the zone's SOA record. Required. + :vartype serial: int + :ivar version: Version is the never-repeating, totally-orderable, version of the zone, from + which the serial field of the zone's SOA record is derived. Required. + :vartype version: str + :ivar view_id: The OCID of the private view containing the zone. This value will be null for + zones in the global DNS, which are publicly resolvable and not part of a private view. + :vartype view_id: str + :ivar zone_type: The type of the zone. Must be either PRIMARY or SECONDARY. SECONDARY is only + supported for GLOBAL zones. Required. Known values are: "Primary" and "Secondary". + :vartype zone_type: str or ~azure.mgmt.oracledatabase.models.ZoneType + :ivar time_created: Zones timeCreated. Required. + :vartype time_created: ~datetime.datetime + :ivar provisioning_state: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", and "Canceled". + :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.ResourceProvisioningState + """ + + ocid: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The OCID of the Zone. Required.""" + is_protected: bool = rest_field(name="isProtected", visibility=["read", "create", "update", "delete", "query"]) + """A Boolean flag indicating whether or not parts of the resource are unable to be explicitly + managed. Required.""" + lifecycle_state: Union[str, "_models.DnsPrivateZonesLifecycleState"] = rest_field( + name="lifecycleState", visibility=["read", "create", "update", "delete", "query"] ) - """The maximum number of CPU cores per database node that can be enabled for this shape. Only - applicable to the flex Exadata shape and ExaCC Elastic shapes.""" - compute_model: Optional[Union[str, "_models.ComputeModel"]] = rest_field( - name="computeModel", visibility=["read", "create", "update", "delete", "query"] + """Zones lifecycleState. Required. Known values are: \"Active\", \"Creating\", \"Deleted\", + \"Deleting\", and \"Updating\".""" + self_property: str = rest_field(name="self", visibility=["read", "create", "update", "delete", "query"]) + """The canonical absolute URL of the resource. Required.""" + serial: int = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The current serial of the zone. As seen in the zone's SOA record. Required.""" + version: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Version is the never-repeating, totally-orderable, version of the zone, from which the serial + field of the zone's SOA record is derived. Required.""" + view_id: Optional[str] = rest_field(name="viewId", visibility=["read", "create", "update", "delete", "query"]) + """The OCID of the private view containing the zone. This value will be null for zones in the + global DNS, which are publicly resolvable and not part of a private view.""" + zone_type: Union[str, "_models.ZoneType"] = rest_field( + name="zoneType", visibility=["read", "create", "update", "delete", "query"] ) - """The compute model of the Exadata Infrastructure. Known values are: \"ECPU\" and \"OCPU\".""" - are_server_types_supported: Optional[bool] = rest_field( - name="areServerTypesSupported", visibility=["read", "create", "update", "delete", "query"] + """The type of the zone. Must be either PRIMARY or SECONDARY. SECONDARY is only supported for + GLOBAL zones. Required. Known values are: \"Primary\" and \"Secondary\".""" + time_created: datetime.datetime = rest_field( + name="timeCreated", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" ) - """Indicates if the shape supports database and storage server types.""" - display_name: Optional[str] = rest_field( - name="displayName", visibility=["read", "create", "update", "delete", "query"] + """Zones timeCreated. Required.""" + provisioning_state: Optional[Union[str, "_models.ResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] ) - """The display name of the shape used for the DB system.""" - shape_attributes: Optional[list[str]] = rest_field(name="shapeAttributes", visibility=["read", "create"]) - """The shapeAttributes of the DB system shape..""" + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", and + \"Canceled\".""" @overload - def __init__( # pylint: disable=too-many-locals + def __init__( self, *, - shape_name: str, - available_core_count: int, - shape_family: Optional[str] = None, - minimum_core_count: Optional[int] = None, - runtime_minimum_core_count: Optional[int] = None, - core_count_increment: Optional[int] = None, - min_storage_count: Optional[int] = None, - max_storage_count: Optional[int] = None, - available_data_storage_per_server_in_tbs: Optional[float] = None, - available_memory_per_node_in_gbs: Optional[int] = None, - available_db_node_per_node_in_gbs: Optional[int] = None, - min_core_count_per_node: Optional[int] = None, - available_memory_in_gbs: Optional[int] = None, - min_memory_per_node_in_gbs: Optional[int] = None, - available_db_node_storage_in_gbs: Optional[int] = None, - min_db_node_storage_per_node_in_gbs: Optional[int] = None, - available_data_storage_in_tbs: Optional[int] = None, - min_data_storage_in_tbs: Optional[int] = None, - minimum_node_count: Optional[int] = None, - maximum_node_count: Optional[int] = None, - available_core_count_per_node: Optional[int] = None, - compute_model: Optional[Union[str, "_models.ComputeModel"]] = None, - are_server_types_supported: Optional[bool] = None, - display_name: Optional[str] = None, - shape_attributes: Optional[list[str]] = None, + ocid: str, + is_protected: bool, + lifecycle_state: Union[str, "_models.DnsPrivateZonesLifecycleState"], + self_property: str, + serial: int, + version: str, + zone_type: Union[str, "_models.ZoneType"], + time_created: datetime.datetime, + view_id: Optional[str] = None, ) -> None: ... @overload @@ -5440,33 +7160,65 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbSystemUpdate(_Model): - """The type used for update operations of the DbSystem. +class ErrorAdditionalInfo(_Model): + """The resource management error additional info. - :ivar zones: The availability zones. - :vartype zones: list[str] - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.DbSystemUpdateProperties + :ivar type: The additional info type. + :vartype type: str + :ivar info: The additional info. + :vartype info: any """ - zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The availability zones.""" - tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """Resource tags.""" - properties: Optional["_models.DbSystemUpdateProperties"] = rest_field( - visibility=["read", "create", "update", "delete", "query"] + type: Optional[str] = rest_field(visibility=["read"]) + """The additional info type.""" + info: Optional[Any] = rest_field(visibility=["read"]) + """The additional info.""" + + +class ErrorDetail(_Model): + """The error detail. + + :ivar code: The error code. + :vartype code: str + :ivar message: The error message. + :vartype message: str + :ivar target: The error target. + :vartype target: str + :ivar details: The error details. + :vartype details: list[~azure.mgmt.oracledatabase.models.ErrorDetail] + :ivar additional_info: The error additional info. + :vartype additional_info: list[~azure.mgmt.oracledatabase.models.ErrorAdditionalInfo] + """ + + code: Optional[str] = rest_field(visibility=["read"]) + """The error code.""" + message: Optional[str] = rest_field(visibility=["read"]) + """The error message.""" + target: Optional[str] = rest_field(visibility=["read"]) + """The error target.""" + details: Optional[list["_models.ErrorDetail"]] = rest_field(visibility=["read"]) + """The error details.""" + additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = rest_field( + name="additionalInfo", visibility=["read"] ) - """The resource-specific properties for this resource.""" + """The error additional info.""" + + +class ErrorResponse(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Error response. + + :ivar error: The error object. + :vartype error: ~azure.mgmt.oracledatabase.models.ErrorDetail + """ + + error: Optional["_models.ErrorDetail"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The error object.""" @overload def __init__( self, *, - zones: Optional[list[str]] = None, - tags: Optional[dict[str, str]] = None, - properties: Optional["_models.DbSystemUpdateProperties"] = None, + error: Optional["_models.ErrorDetail"] = None, ) -> None: ... @overload @@ -5480,24 +7232,82 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbSystemUpdateProperties(_Model): - """The updatable properties of the DbSystem. +class EstimatedPatchingTime(_Model): + """The estimated total time required in minutes for all patching operations (database server, + storage server, and network switch patching). - :ivar source: The source of the database for creating a new database. for creating a new - database. - :vartype source: str or ~azure.mgmt.oracledatabase.models.NONE + :ivar estimated_db_server_patching_time: The estimated time required in minutes for database + server patching. + :vartype estimated_db_server_patching_time: int + :ivar estimated_network_switches_patching_time: The estimated time required in minutes for + network switch patching. + :vartype estimated_network_switches_patching_time: int + :ivar estimated_storage_server_patching_time: The estimated time required in minutes for + storage server patching. + :vartype estimated_storage_server_patching_time: int + :ivar total_estimated_patching_time: The estimated total time required in minutes for all + patching operations. + :vartype total_estimated_patching_time: int """ - source: Optional[Literal[DbSystemSourceType.NONE]] = rest_field( + estimated_db_server_patching_time: Optional[int] = rest_field( + name="estimatedDbServerPatchingTime", visibility=["read"] + ) + """The estimated time required in minutes for database server patching.""" + estimated_network_switches_patching_time: Optional[int] = rest_field( + name="estimatedNetworkSwitchesPatchingTime", visibility=["read"] + ) + """The estimated time required in minutes for network switch patching.""" + estimated_storage_server_patching_time: Optional[int] = rest_field( + name="estimatedStorageServerPatchingTime", visibility=["read"] + ) + """The estimated time required in minutes for storage server patching.""" + total_estimated_patching_time: Optional[int] = rest_field(name="totalEstimatedPatchingTime", visibility=["read"]) + """The estimated total time required in minutes for all patching operations.""" + + +class ExadataIormConfig(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """ExadataIormConfig for cloud vm cluster. + + :ivar db_plans: An array of IORM settings for all the database in the Exadata DB system. + :vartype db_plans: list[~azure.mgmt.oracledatabase.models.DbIormConfig] + :ivar lifecycle_details: Additional information about the current lifecycleState. + :vartype lifecycle_details: str + :ivar lifecycle_state: The current state of IORM configuration for the Exadata DB system. Known + values are: "BootStrapping", "Enabled", "Disabled", "Updating", and "Failed". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.IormLifecycleState + :ivar objective: The current value for the IORM objective. The default is AUTO. Known values + are: "LowLatency", "HighThroughput", "Balanced", "Auto", and "Basic". + :vartype objective: str or ~azure.mgmt.oracledatabase.models.Objective + """ + + db_plans: Optional[list["_models.DbIormConfig"]] = rest_field( + name="dbPlans", visibility=["read", "create", "update", "delete", "query"] + ) + """An array of IORM settings for all the database in the Exadata DB system.""" + lifecycle_details: Optional[str] = rest_field( + name="lifecycleDetails", visibility=["read", "create", "update", "delete", "query"] + ) + """Additional information about the current lifecycleState.""" + lifecycle_state: Optional[Union[str, "_models.IormLifecycleState"]] = rest_field( + name="lifecycleState", visibility=["read", "create", "update", "delete", "query"] + ) + """The current state of IORM configuration for the Exadata DB system. Known values are: + \"BootStrapping\", \"Enabled\", \"Disabled\", \"Updating\", and \"Failed\".""" + objective: Optional[Union[str, "_models.Objective"]] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) - """The source of the database for creating a new database. for creating a new database.""" + """The current value for the IORM objective. The default is AUTO. Known values are: + \"LowLatency\", \"HighThroughput\", \"Balanced\", \"Auto\", and \"Basic\".""" @overload def __init__( self, *, - source: Optional[Literal[DbSystemSourceType.NONE]] = None, + db_plans: Optional[list["_models.DbIormConfig"]] = None, + lifecycle_details: Optional[str] = None, + lifecycle_state: Optional[Union[str, "_models.IormLifecycleState"]] = None, + objective: Optional[Union[str, "_models.Objective"]] = None, ) -> None: ... @overload @@ -5511,8 +7321,8 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbVersion(ProxyResource): - """Oracle Database DbVersion resource definition. +class ExadbVmCluster(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """ExadbVmCluster resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. @@ -5525,20 +7335,31 @@ class DbVersion(ProxyResource): :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy information. :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.DbVersionProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterProperties + :ivar zones: The availability zones. + :vartype zones: list[str] """ - properties: Optional["_models.DbVersionProperties"] = rest_field( + properties: Optional["_models.ExadbVmClusterProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" + zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The availability zones.""" @overload def __init__( self, *, - properties: Optional["_models.DbVersionProperties"] = None, + location: str, + tags: Optional[dict[str, str]] = None, + properties: Optional["_models.ExadbVmClusterProperties"] = None, + zones: Optional[list[str]] = None, ) -> None: ... @overload @@ -5552,104 +7373,294 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DbVersionProperties(_Model): - """DbVersion resource model. +class ExadbVmClusterProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """ExadbVmCluster resource model. - :ivar version: A valid Oracle Database version. Required. - :vartype version: str - :ivar is_latest_for_major_version: True if this version of the Oracle Database software is the - latest version for a release. - :vartype is_latest_for_major_version: bool - :ivar is_preview_db_version: True if this version of the Oracle Database software is the - preview version. - :vartype is_preview_db_version: bool - :ivar is_upgrade_supported: True if this version of the Oracle Database software is supported - for Upgrade. - :vartype is_upgrade_supported: bool - :ivar supports_pdb: True if this version of the Oracle Database software supports pluggable - databases. - :vartype supports_pdb: bool + :ivar ocid: ExadbVmCluster ocid. + :vartype ocid: str + :ivar cluster_name: The cluster name for Exadata VM cluster on Exascale Infrastructure. The + cluster name must begin with an alphabetic character, and may contain hyphens (-). Underscores + (_) are not permitted. The cluster name can be no longer than 11 characters and is not case + sensitive. + :vartype cluster_name: str + :ivar backup_subnet_cidr: Client OCI backup subnet CIDR, default is 192.168.252.0/22. + :vartype backup_subnet_cidr: str + :ivar nsg_url: HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure + Interface. + :vartype nsg_url: str + :ivar provisioning_state: Exadata VM cluster on Exascale Infrastructure provisioning state. + Known values are: "Succeeded", "Failed", "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar lifecycle_state: CloudVmCluster lifecycle state. Known values are: "Provisioning", + "Available", "Updating", "Terminating", "Terminated", "MaintenanceInProgress", and "Failed". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.ExadbVmClusterLifecycleState + :ivar vnet_id: VNET for network connectivity. Required. + :vartype vnet_id: str + :ivar subnet_id: Client subnet. Required. + :vartype subnet_id: str + :ivar data_collection_options: Indicates user preferences for the various diagnostic collection + options for the VM cluster/Cloud VM cluster/VMBM DBCS. + :vartype data_collection_options: ~azure.mgmt.oracledatabase.models.DataCollectionOptions + :ivar display_name: Display Name. Required. + :vartype display_name: str + :ivar domain: A domain name used for the Exadata VM cluster on Exascale Infrastructure. + :vartype domain: str + :ivar enabled_ecpu_count: The number of ECPUs to enable for an Exadata VM cluster on Exascale + Infrastructure. Required. + :vartype enabled_ecpu_count: int + :ivar exascale_db_storage_vault_id: The Azure Resource ID of the Exadata Database Storage + Vault. Required. + :vartype exascale_db_storage_vault_id: str + :ivar grid_image_ocid: Grid Setup will be done using this Grid Image OCID. Can be obtained + using giMinorVersions API. + :vartype grid_image_ocid: str + :ivar grid_image_type: The type of Grid Image. Known values are: "ReleaseUpdate" and + "CustomImage". + :vartype grid_image_type: str or ~azure.mgmt.oracledatabase.models.GridImageType + :ivar gi_version: Oracle Grid Infrastructure (GI) software version. + :vartype gi_version: str + :ivar hostname_v2: The hostname for the Exadata VM cluster on Exascale Infrastructure. + Required. + :vartype hostname_v2: str + :ivar license_model: The Oracle license model that applies to the Exadata VM cluster on + Exascale Infrastructure. The default is LICENSE_INCLUDED. Known values are: "LicenseIncluded" + and "BringYourOwnLicense". + :vartype license_model: str or ~azure.mgmt.oracledatabase.models.LicenseModel + :ivar memory_size_in_gbs: The memory that you want to be allocated in GBs. Memory is calculated + based on 11 GB per VM core reserved. + :vartype memory_size_in_gbs: int + :ivar node_count: The number of nodes in the Exadata VM cluster on Exascale Infrastructure. + Required. + :vartype node_count: int + :ivar nsg_cidrs: CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision + the VM Cluster will be added by default. + :vartype nsg_cidrs: list[~azure.mgmt.oracledatabase.models.NsgCidr] + :ivar zone_ocid: The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is + associated with. + :vartype zone_ocid: str + :ivar private_zone_ocid: The OCID of the zone the Exadata VM cluster on Exascale Infrastructure + is associated with. + :vartype private_zone_ocid: str + :ivar scan_listener_port_tcp: The TCP Single Client Access Name (SCAN) port. The default port + is 1521. + :vartype scan_listener_port_tcp: int + :ivar scan_listener_port_tcp_ssl: The TCPS Single Client Access Name (SCAN) port. The default + port is 2484. + :vartype scan_listener_port_tcp_ssl: int + :ivar listener_port: The port number configured for the listener on the Exadata VM cluster on + Exascale Infrastructure. + :vartype listener_port: int + :ivar shape: The shape of the Exadata VM cluster on Exascale Infrastructure resource. Required. + :vartype shape: str + :ivar ssh_public_keys: The public key portion of one or more key pairs used for SSH access to + the Exadata VM cluster on Exascale Infrastructure. Required. + :vartype ssh_public_keys: list[str] + :ivar system_version: Operating system version of the image. + :vartype system_version: str + :ivar time_zone: The time zone of the Exadata VM cluster on Exascale Infrastructure. For + details, see `Exadata Infrastructure Time Zones `_. + :vartype time_zone: str + :ivar total_ecpu_count: The number of Total ECPUs for an Exadata VM cluster on Exascale + Infrastructure. Required. + :vartype total_ecpu_count: int + :ivar vm_file_system_storage: Filesystem storage details. Required. + :vartype vm_file_system_storage: ~azure.mgmt.oracledatabase.models.ExadbVmClusterStorageDetails + :ivar lifecycle_details: Additional information about the current lifecycle state. + :vartype lifecycle_details: str + :ivar scan_dns_name_v2: The FQDN of the DNS record for the SCAN IP addresses that are + associated with the Exadata VM cluster on Exascale Infrastructure. + :vartype scan_dns_name_v2: str + :ivar scan_ip_ids: The Single Client Access Name (SCAN) IP addresses associated with the + Exadata VM cluster on Exascale Infrastructure. SCAN IP addresses are typically used for load + balancing and are not assigned to any interface. Oracle Clusterware directs the requests to the + appropriate nodes in the cluster. **Note:** For a single-node DB system, this list is empty. + :vartype scan_ip_ids: list[str] + :ivar scan_dns_record_id: The OCID of the DNS record for the SCAN IP addresses that are + associated with the Exadata VM cluster on Exascale Infrastructure. + :vartype scan_dns_record_id: str + :ivar snapshot_file_system_storage: Snapshot filesystem storage details. + :vartype snapshot_file_system_storage: + ~azure.mgmt.oracledatabase.models.ExadbVmClusterStorageDetails + :ivar total_file_system_storage: Total file system storage details. + :vartype total_file_system_storage: + ~azure.mgmt.oracledatabase.models.ExadbVmClusterStorageDetails + :ivar vip_ids: The virtual IP (VIP) addresses associated with the Exadata VM cluster on + Exascale Infrastructure. The Cluster Ready Services (CRS) creates and maintains one VIP address + for each node in the Exadata Cloud Service instance to enable failover. If one node fails, the + VIP is reassigned to another active node in the cluster. **Note:** For a single-node DB system, + this list is empty. + :vartype vip_ids: list[str] + :ivar oci_url: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype oci_url: str + :ivar iorm_config_cache: iormConfigCache details for Exadata VM cluster on Exascale + Infrastructure. + :vartype iorm_config_cache: ~azure.mgmt.oracledatabase.models.ExadataIormConfig + :ivar backup_subnet_ocid: Cluster backup subnet ocid. + :vartype backup_subnet_ocid: str + :ivar subnet_ocid: Cluster subnet ocid. + :vartype subnet_ocid: str + :ivar shape_attribute: The type of Exascale storage used for Exadata VM cluster. Known values + are: "SMART_STORAGE" and "BLOCK_STORAGE". + :vartype shape_attribute: str or ~azure.mgmt.oracledatabase.models.ShapeAttribute """ - version: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """A valid Oracle Database version. Required.""" - is_latest_for_major_version: Optional[bool] = rest_field( - name="isLatestForMajorVersion", visibility=["read", "create", "update", "delete", "query"] - ) - """True if this version of the Oracle Database software is the latest version for a release.""" - is_preview_db_version: Optional[bool] = rest_field( - name="isPreviewDbVersion", visibility=["read", "create", "update", "delete", "query"] + ocid: Optional[str] = rest_field(visibility=["read"]) + """ExadbVmCluster ocid.""" + cluster_name: Optional[str] = rest_field(name="clusterName", visibility=["read", "create"]) + """The cluster name for Exadata VM cluster on Exascale Infrastructure. The cluster name must begin + with an alphabetic character, and may contain hyphens (-). Underscores (_) are not permitted. + The cluster name can be no longer than 11 characters and is not case sensitive.""" + backup_subnet_cidr: Optional[str] = rest_field(name="backupSubnetCidr", visibility=["read", "create"]) + """Client OCI backup subnet CIDR, default is 192.168.252.0/22.""" + nsg_url: Optional[str] = rest_field(name="nsgUrl", visibility=["read"]) + """HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure Interface.""" + provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] ) - """True if this version of the Oracle Database software is the preview version.""" - is_upgrade_supported: Optional[bool] = rest_field( - name="isUpgradeSupported", visibility=["read", "create", "update", "delete", "query"] + """Exadata VM cluster on Exascale Infrastructure provisioning state. Known values are: + \"Succeeded\", \"Failed\", \"Canceled\", and \"Provisioning\".""" + lifecycle_state: Optional[Union[str, "_models.ExadbVmClusterLifecycleState"]] = rest_field( + name="lifecycleState", visibility=["read"] ) - """True if this version of the Oracle Database software is supported for Upgrade.""" - supports_pdb: Optional[bool] = rest_field( - name="supportsPdb", visibility=["read", "create", "update", "delete", "query"] + """CloudVmCluster lifecycle state. Known values are: \"Provisioning\", \"Available\", + \"Updating\", \"Terminating\", \"Terminated\", \"MaintenanceInProgress\", and \"Failed\".""" + vnet_id: str = rest_field(name="vnetId", visibility=["read", "create"]) + """VNET for network connectivity. Required.""" + subnet_id: str = rest_field(name="subnetId", visibility=["read", "create"]) + """Client subnet. Required.""" + data_collection_options: Optional["_models.DataCollectionOptions"] = rest_field( + name="dataCollectionOptions", visibility=["read", "create"] ) - """True if this version of the Oracle Database software supports pluggable databases.""" - - @overload - def __init__( - self, - *, - version: str, - is_latest_for_major_version: Optional[bool] = None, - is_preview_db_version: Optional[bool] = None, - is_upgrade_supported: Optional[bool] = None, - supports_pdb: Optional[bool] = None, - ) -> None: ... - - @overload - def __init__(self, mapping: Mapping[str, Any]) -> None: - """ - :param mapping: raw JSON to initialize the model. - :type mapping: Mapping[str, Any] - """ - - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) - - -class DefinedFileSystemConfiguration(_Model): - """Predefined configurations for the file system. - - :ivar is_backup_partition: Checks if the data can be backed up. - :vartype is_backup_partition: bool - :ivar is_resizable: Checks if the mount path is resizable. - :vartype is_resizable: bool - :ivar min_size_gb: Minimum size of mount path in Gb. - :vartype min_size_gb: int - :ivar mount_point: Mount path for the file system. - :vartype mount_point: str - """ - - is_backup_partition: Optional[bool] = rest_field( - name="isBackupPartition", visibility=["read", "create", "update", "delete", "query"] + """Indicates user preferences for the various diagnostic collection options for the VM + cluster/Cloud VM cluster/VMBM DBCS.""" + display_name: str = rest_field(name="displayName", visibility=["read", "create"]) + """Display Name. Required.""" + domain: Optional[str] = rest_field(visibility=["read", "create"]) + """A domain name used for the Exadata VM cluster on Exascale Infrastructure.""" + enabled_ecpu_count: int = rest_field(name="enabledEcpuCount", visibility=["read", "create"]) + """The number of ECPUs to enable for an Exadata VM cluster on Exascale Infrastructure. Required.""" + exascale_db_storage_vault_id: str = rest_field(name="exascaleDbStorageVaultId", visibility=["read", "create"]) + """The Azure Resource ID of the Exadata Database Storage Vault. Required.""" + grid_image_ocid: Optional[str] = rest_field(name="gridImageOcid", visibility=["read", "create"]) + """Grid Setup will be done using this Grid Image OCID. Can be obtained using giMinorVersions API.""" + grid_image_type: Optional[Union[str, "_models.GridImageType"]] = rest_field( + name="gridImageType", visibility=["read"] ) - """Checks if the data can be backed up.""" - is_resizable: Optional[bool] = rest_field( - name="isResizable", visibility=["read", "create", "update", "delete", "query"] + """The type of Grid Image. Known values are: \"ReleaseUpdate\" and \"CustomImage\".""" + gi_version: Optional[str] = rest_field(name="giVersion", visibility=["read"]) + """Oracle Grid Infrastructure (GI) software version.""" + hostname_v2: str = rest_field(name="hostname", visibility=["read", "create"]) + """The hostname for the Exadata VM cluster on Exascale Infrastructure. Required.""" + license_model: Optional[Union[str, "_models.LicenseModel"]] = rest_field( + name="licenseModel", visibility=["read", "create"] ) - """Checks if the mount path is resizable.""" - min_size_gb: Optional[int] = rest_field( - name="minSizeGb", visibility=["read", "create", "update", "delete", "query"] + """The Oracle license model that applies to the Exadata VM cluster on Exascale Infrastructure. The + default is LICENSE_INCLUDED. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + memory_size_in_gbs: Optional[int] = rest_field(name="memorySizeInGbs", visibility=["read"]) + """The memory that you want to be allocated in GBs. Memory is calculated based on 11 GB per VM + core reserved.""" + node_count: int = rest_field(name="nodeCount", visibility=["read", "create", "update"]) + """The number of nodes in the Exadata VM cluster on Exascale Infrastructure. Required.""" + nsg_cidrs: Optional[list["_models.NsgCidr"]] = rest_field(name="nsgCidrs", visibility=["read", "create"]) + """CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision the VM Cluster + will be added by default.""" + zone_ocid: Optional[str] = rest_field(name="zoneOcid", visibility=["read"]) + """The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is associated with.""" + private_zone_ocid: Optional[str] = rest_field(name="privateZoneOcid", visibility=["read", "create"]) + """The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is associated with.""" + scan_listener_port_tcp: Optional[int] = rest_field(name="scanListenerPortTcp", visibility=["read", "create"]) + """The TCP Single Client Access Name (SCAN) port. The default port is 1521.""" + scan_listener_port_tcp_ssl: Optional[int] = rest_field(name="scanListenerPortTcpSsl", visibility=["read", "create"]) + """The TCPS Single Client Access Name (SCAN) port. The default port is 2484.""" + listener_port: Optional[int] = rest_field(name="listenerPort", visibility=["read"]) + """The port number configured for the listener on the Exadata VM cluster on Exascale + Infrastructure.""" + shape: str = rest_field(visibility=["read", "create"]) + """The shape of the Exadata VM cluster on Exascale Infrastructure resource. Required.""" + ssh_public_keys: list[str] = rest_field(name="sshPublicKeys", visibility=["read", "create"]) + """The public key portion of one or more key pairs used for SSH access to the Exadata VM cluster + on Exascale Infrastructure. Required.""" + system_version: Optional[str] = rest_field(name="systemVersion", visibility=["read", "create"]) + """Operating system version of the image.""" + time_zone: Optional[str] = rest_field(name="timeZone", visibility=["read", "create"]) + """The time zone of the Exadata VM cluster on Exascale Infrastructure. For details, see `Exadata + Infrastructure Time Zones `_.""" + total_ecpu_count: int = rest_field(name="totalEcpuCount", visibility=["read", "create"]) + """The number of Total ECPUs for an Exadata VM cluster on Exascale Infrastructure. Required.""" + vm_file_system_storage: "_models.ExadbVmClusterStorageDetails" = rest_field( + name="vmFileSystemStorage", visibility=["read", "create"] ) - """Minimum size of mount path in Gb.""" - mount_point: Optional[str] = rest_field( - name="mountPoint", visibility=["read", "create", "update", "delete", "query"] + """Filesystem storage details. Required.""" + lifecycle_details: Optional[str] = rest_field(name="lifecycleDetails", visibility=["read"]) + """Additional information about the current lifecycle state.""" + scan_dns_name_v2: Optional[str] = rest_field(name="scanDnsName", visibility=["read"]) + """The FQDN of the DNS record for the SCAN IP addresses that are associated with the Exadata VM + cluster on Exascale Infrastructure.""" + scan_ip_ids: Optional[list[str]] = rest_field(name="scanIpIds", visibility=["read"]) + """The Single Client Access Name (SCAN) IP addresses associated with the Exadata VM cluster on + Exascale Infrastructure. SCAN IP addresses are typically used for load balancing and are not + assigned to any interface. Oracle Clusterware directs the requests to the appropriate nodes in + the cluster. **Note:** For a single-node DB system, this list is empty.""" + scan_dns_record_id: Optional[str] = rest_field(name="scanDnsRecordId", visibility=["read"]) + """The OCID of the DNS record for the SCAN IP addresses that are associated with the Exadata VM + cluster on Exascale Infrastructure.""" + snapshot_file_system_storage: Optional["_models.ExadbVmClusterStorageDetails"] = rest_field( + name="snapshotFileSystemStorage", visibility=["read"] ) - """Mount path for the file system.""" + """Snapshot filesystem storage details.""" + total_file_system_storage: Optional["_models.ExadbVmClusterStorageDetails"] = rest_field( + name="totalFileSystemStorage", visibility=["read"] + ) + """Total file system storage details.""" + vip_ids: Optional[list[str]] = rest_field(name="vipIds", visibility=["read"]) + """The virtual IP (VIP) addresses associated with the Exadata VM cluster on Exascale + Infrastructure. The Cluster Ready Services (CRS) creates and maintains one VIP address for each + node in the Exadata Cloud Service instance to enable failover. If one node fails, the VIP is + reassigned to another active node in the cluster. **Note:** For a single-node DB system, this + list is empty.""" + oci_url: Optional[str] = rest_field(name="ociUrl", visibility=["read"]) + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + iorm_config_cache: Optional["_models.ExadataIormConfig"] = rest_field(name="iormConfigCache", visibility=["read"]) + """iormConfigCache details for Exadata VM cluster on Exascale Infrastructure.""" + backup_subnet_ocid: Optional[str] = rest_field(name="backupSubnetOcid", visibility=["read"]) + """Cluster backup subnet ocid.""" + subnet_ocid: Optional[str] = rest_field(name="subnetOcid", visibility=["read"]) + """Cluster subnet ocid.""" + shape_attribute: Optional[Union[str, "_models.ShapeAttribute"]] = rest_field( + name="shapeAttribute", visibility=["read", "create"] + ) + """The type of Exascale storage used for Exadata VM cluster. Known values are: \"SMART_STORAGE\" + and \"BLOCK_STORAGE\".""" @overload - def __init__( + def __init__( # pylint: disable=too-many-locals self, *, - is_backup_partition: Optional[bool] = None, - is_resizable: Optional[bool] = None, - min_size_gb: Optional[int] = None, - mount_point: Optional[str] = None, + vnet_id: str, + subnet_id: str, + display_name: str, + enabled_ecpu_count: int, + exascale_db_storage_vault_id: str, + hostname_v2: str, + node_count: int, + shape: str, + ssh_public_keys: list[str], + total_ecpu_count: int, + vm_file_system_storage: "_models.ExadbVmClusterStorageDetails", + cluster_name: Optional[str] = None, + backup_subnet_cidr: Optional[str] = None, + data_collection_options: Optional["_models.DataCollectionOptions"] = None, + domain: Optional[str] = None, + grid_image_ocid: Optional[str] = None, + license_model: Optional[Union[str, "_models.LicenseModel"]] = None, + nsg_cidrs: Optional[list["_models.NsgCidr"]] = None, + private_zone_ocid: Optional[str] = None, + scan_listener_port_tcp: Optional[int] = None, + scan_listener_port_tcp_ssl: Optional[int] = None, + system_version: Optional[str] = None, + time_zone: Optional[str] = None, + shape_attribute: Optional[Union[str, "_models.ShapeAttribute"]] = None, ) -> None: ... @overload @@ -5663,65 +7674,23 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DisasterRecoveryConfigurationDetails(_Model): - """Configurations of a Disaster Recovery Details. +class ExadbVmClusterStorageDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Storage Details on the Exadata VM cluster. - :ivar disaster_recovery_type: Indicates the disaster recovery (DR) type of the Autonomous - Database Serverless instance. Autonomous Data Guard (ADG) DR type provides business critical DR - with a faster recovery time objective (RTO) during failover or switchover. Backup-based DR type - provides lower cost DR with a slower RTO during failover or switchover. Known values are: "Adg" - and "BackupBased". - :vartype disaster_recovery_type: str or ~azure.mgmt.oracledatabase.models.DisasterRecoveryType - :ivar time_snapshot_standby_enabled_till: Time and date stored as an RFC 3339 formatted - timestamp string. For example, 2022-01-01T12:00:00.000Z would set a limit for the snapshot - standby to be converted back to a cross-region standby database. - :vartype time_snapshot_standby_enabled_till: ~datetime.datetime - :ivar is_snapshot_standby: Indicates if user wants to convert to a snapshot standby. For - example, true would set a standby database to snapshot standby database. False would set a - snapshot standby database back to regular standby database. - :vartype is_snapshot_standby: bool - :ivar is_replicate_automatic_backups: If true, 7 days worth of backups are replicated across - regions for Cross-Region ADB or Backup-Based DR between Primary and Standby. If false, the - backups taken on the Primary are not replicated to the Standby database. - :vartype is_replicate_automatic_backups: bool + :ivar total_size_in_gbs: Total Capacity. Required. + :vartype total_size_in_gbs: int """ - disaster_recovery_type: Optional[Union[str, "_models.DisasterRecoveryType"]] = rest_field( - name="disasterRecoveryType", visibility=["read", "create", "update", "delete", "query"] - ) - """Indicates the disaster recovery (DR) type of the Autonomous Database Serverless instance. - Autonomous Data Guard (ADG) DR type provides business critical DR with a faster recovery time - objective (RTO) during failover or switchover. Backup-based DR type provides lower cost DR with - a slower RTO during failover or switchover. Known values are: \"Adg\" and \"BackupBased\".""" - time_snapshot_standby_enabled_till: Optional[datetime.datetime] = rest_field( - name="timeSnapshotStandbyEnabledTill", - visibility=["read", "create", "update", "delete", "query"], - format="rfc3339", - ) - """Time and date stored as an RFC 3339 formatted timestamp string. For example, - 2022-01-01T12:00:00.000Z would set a limit for the snapshot standby to be converted back to a - cross-region standby database.""" - is_snapshot_standby: Optional[bool] = rest_field( - name="isSnapshotStandby", visibility=["read", "create", "update", "delete", "query"] - ) - """Indicates if user wants to convert to a snapshot standby. For example, true would set a standby - database to snapshot standby database. False would set a snapshot standby database back to - regular standby database.""" - is_replicate_automatic_backups: Optional[bool] = rest_field( - name="isReplicateAutomaticBackups", visibility=["read", "create", "update", "delete", "query"] + total_size_in_gbs: int = rest_field( + name="totalSizeInGbs", visibility=["read", "create", "update", "delete", "query"] ) - """If true, 7 days worth of backups are replicated across regions for Cross-Region ADB or - Backup-Based DR between Primary and Standby. If false, the backups taken on the Primary are not - replicated to the Standby database.""" + """Total Capacity. Required.""" @overload def __init__( self, *, - disaster_recovery_type: Optional[Union[str, "_models.DisasterRecoveryType"]] = None, - time_snapshot_standby_enabled_till: Optional[datetime.datetime] = None, - is_snapshot_standby: Optional[bool] = None, - is_replicate_automatic_backups: Optional[bool] = None, + total_size_in_gbs: int, ) -> None: ... @overload @@ -5735,26 +7704,33 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DnsForwardingRule(_Model): - """DNS forwarding rule properties. +class ExadbVmClusterUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The type used for update operations of the ExadbVmCluster. - :ivar domain_names: Comma-separated domain names. Required. - :vartype domain_names: str - :ivar forwarding_ip_address: Forwarding ip address. Required. - :vartype forwarding_ip_address: str + :ivar zones: The availability zones. + :vartype zones: list[str] + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterUpdateProperties """ - domain_names: str = rest_field(name="domainNames", visibility=["create"]) - """Comma-separated domain names. Required.""" - forwarding_ip_address: str = rest_field(name="forwardingIpAddress", visibility=["create"]) - """Forwarding ip address. Required.""" + zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The availability zones.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + properties: Optional["_models.ExadbVmClusterUpdateProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The resource-specific properties for this resource.""" @overload def __init__( self, *, - domain_names: str, - forwarding_ip_address: str, + zones: Optional[list[str]] = None, + tags: Optional[dict[str, str]] = None, + properties: Optional["_models.ExadbVmClusterUpdateProperties"] = None, ) -> None: ... @overload @@ -5768,34 +7744,21 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DnsPrivateView(ProxyResource): - """DnsPrivateView resource definition. +class ExadbVmClusterUpdateProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The updatable properties of the ExadbVmCluster. - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData - :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.DnsPrivateViewProperties + :ivar node_count: The number of nodes in the Exadata VM cluster on Exascale Infrastructure. + :vartype node_count: int """ - properties: Optional["_models.DnsPrivateViewProperties"] = rest_field( - visibility=["read", "create", "update", "delete", "query"] - ) - """The resource-specific properties for this resource.""" + node_count: Optional[int] = rest_field(name="nodeCount", visibility=["read", "create", "update"]) + """The number of nodes in the Exadata VM cluster on Exascale Infrastructure.""" @overload def __init__( self, *, - properties: Optional["_models.DnsPrivateViewProperties"] = None, + node_count: Optional[int] = None, ) -> None: ... @overload @@ -5805,74 +7768,34 @@ def __init__(self, mapping: Mapping[str, Any]) -> None: :type mapping: Mapping[str, Any] """ - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) - - -class DnsPrivateViewProperties(_Model): - """Views resource model. - - :ivar ocid: The OCID of the view. Required. - :vartype ocid: str - :ivar display_name: The display name of the view resource. Required. - :vartype display_name: str - :ivar is_protected: A Boolean flag indicating whether or not parts of the resource are unable - to be explicitly managed. Required. - :vartype is_protected: bool - :ivar lifecycle_state: Views lifecycleState. Required. Known values are: "Active", "Deleted", - "Deleting", and "Updating". - :vartype lifecycle_state: str or - ~azure.mgmt.oracledatabase.models.DnsPrivateViewsLifecycleState - :ivar self_property: The canonical absolute URL of the resource. Required. - :vartype self_property: str - :ivar time_created: views timeCreated. Required. - :vartype time_created: ~datetime.datetime - :ivar time_updated: views timeCreated. Required. - :vartype time_updated: ~datetime.datetime - :ivar provisioning_state: Azure resource provisioning state. Known values are: "Succeeded", - "Failed", and "Canceled". - :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.ResourceProvisioningState + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class ExascaleConfigDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The exascale config response details for the cloud Exadata infrastructure. + + :ivar total_storage_in_gbs: Storage size needed for Exascale in GBs. Required. + :vartype total_storage_in_gbs: int + :ivar available_storage_in_gbs: Available storage size for Exascale in GBs. + :vartype available_storage_in_gbs: int """ - ocid: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The OCID of the view. Required.""" - display_name: str = rest_field(name="displayName", visibility=["read", "create", "update", "delete", "query"]) - """The display name of the view resource. Required.""" - is_protected: bool = rest_field(name="isProtected", visibility=["read", "create", "update", "delete", "query"]) - """A Boolean flag indicating whether or not parts of the resource are unable to be explicitly - managed. Required.""" - lifecycle_state: Union[str, "_models.DnsPrivateViewsLifecycleState"] = rest_field( - name="lifecycleState", visibility=["read", "create", "update", "delete", "query"] - ) - """Views lifecycleState. Required. Known values are: \"Active\", \"Deleted\", \"Deleting\", and - \"Updating\".""" - self_property: str = rest_field(name="self", visibility=["read", "create", "update", "delete", "query"]) - """The canonical absolute URL of the resource. Required.""" - time_created: datetime.datetime = rest_field( - name="timeCreated", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" - ) - """views timeCreated. Required.""" - time_updated: datetime.datetime = rest_field( - name="timeUpdated", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + total_storage_in_gbs: int = rest_field( + name="totalStorageInGbs", visibility=["read", "create", "update", "delete", "query"] ) - """views timeCreated. Required.""" - provisioning_state: Optional[Union[str, "_models.ResourceProvisioningState"]] = rest_field( - name="provisioningState", visibility=["read"] + """Storage size needed for Exascale in GBs. Required.""" + available_storage_in_gbs: Optional[int] = rest_field( + name="availableStorageInGbs", visibility=["read", "create", "update", "delete", "query"] ) - """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", and - \"Canceled\".""" + """Available storage size for Exascale in GBs.""" @overload def __init__( self, *, - ocid: str, - display_name: str, - is_protected: bool, - lifecycle_state: Union[str, "_models.DnsPrivateViewsLifecycleState"], - self_property: str, - time_created: datetime.datetime, - time_updated: datetime.datetime, + total_storage_in_gbs: int, + available_storage_in_gbs: Optional[int] = None, ) -> None: ... @overload @@ -5886,8 +7809,8 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DnsPrivateZone(ProxyResource): - """DnsPrivateZone resource definition. +class ExascaleDbNode(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """The DbNode resource belonging to ExadbVmCluster. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. @@ -5901,10 +7824,10 @@ class DnsPrivateZone(ProxyResource): information. :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.DnsPrivateZoneProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.ExascaleDbNodeProperties """ - properties: Optional["_models.DnsPrivateZoneProperties"] = rest_field( + properties: Optional["_models.ExascaleDbNodeProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" @@ -5913,7 +7836,7 @@ class DnsPrivateZone(ProxyResource): def __init__( self, *, - properties: Optional["_models.DnsPrivateZoneProperties"] = None, + properties: Optional["_models.ExascaleDbNodeProperties"] = None, ) -> None: ... @overload @@ -5927,158 +7850,146 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class DnsPrivateZoneProperties(_Model): - """Zones resource model. +class ExascaleDbNodeProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The properties of DbNodeResource. - :ivar ocid: The OCID of the Zone. Required. + :ivar ocid: DbNode OCID. Required. :vartype ocid: str - :ivar is_protected: A Boolean flag indicating whether or not parts of the resource are unable - to be explicitly managed. Required. - :vartype is_protected: bool - :ivar lifecycle_state: Zones lifecycleState. Required. Known values are: "Active", "Creating", - "Deleted", "Deleting", and "Updating". - :vartype lifecycle_state: str or - ~azure.mgmt.oracledatabase.models.DnsPrivateZonesLifecycleState - :ivar self_property: The canonical absolute URL of the resource. Required. - :vartype self_property: str - :ivar serial: The current serial of the zone. As seen in the zone's SOA record. Required. - :vartype serial: int - :ivar version: Version is the never-repeating, totally-orderable, version of the zone, from - which the serial field of the zone's SOA record is derived. Required. - :vartype version: str - :ivar view_id: The OCID of the private view containing the zone. This value will be null for - zones in the global DNS, which are publicly resolvable and not part of a private view. - :vartype view_id: str - :ivar zone_type: The type of the zone. Must be either PRIMARY or SECONDARY. SECONDARY is only - supported for GLOBAL zones. Required. Known values are: "Primary" and "Secondary". - :vartype zone_type: str or ~azure.mgmt.oracledatabase.models.ZoneType - :ivar time_created: Zones timeCreated. Required. - :vartype time_created: ~datetime.datetime - :ivar provisioning_state: Azure resource provisioning state. Known values are: "Succeeded", - "Failed", and "Canceled". - :vartype provisioning_state: str or ~azure.mgmt.oracledatabase.models.ResourceProvisioningState + :ivar additional_details: Additional information about the planned maintenance. + :vartype additional_details: str + :ivar cpu_core_count: The number of CPU cores enabled on the Db node. + :vartype cpu_core_count: int + :ivar db_node_storage_size_in_gbs: The allocated local node storage in GBs on the Db node. + :vartype db_node_storage_size_in_gbs: int + :ivar fault_domain: The name of the Fault Domain the instance is contained in. + :vartype fault_domain: str + :ivar hostname: The host name for the database node. + :vartype hostname: str + :ivar lifecycle_state: The current state of the database node. Known values are: + "Provisioning", "Available", "Updating", "Stopping", "Stopped", "Starting", "Terminating", + "Terminated", and "Failed". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbNodeProvisioningState + :ivar maintenance_type: The type of database node maintenance. + :vartype maintenance_type: str + :ivar memory_size_in_gbs: The allocated memory in GBs on the Db node. + :vartype memory_size_in_gbs: int + :ivar software_storage_size_in_gb: The size (in GB) of the block storage volume allocation for + the DB system. This attribute applies only for virtual machine DB systems. + :vartype software_storage_size_in_gb: int + :ivar time_maintenance_window_end: End date and time of maintenance window. + :vartype time_maintenance_window_end: ~datetime.datetime + :ivar time_maintenance_window_start: Start date and time of maintenance window. + :vartype time_maintenance_window_start: ~datetime.datetime + :ivar total_cpu_core_count: The total number of CPU cores reserved on the Db node. + :vartype total_cpu_core_count: int """ ocid: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The OCID of the Zone. Required.""" - is_protected: bool = rest_field(name="isProtected", visibility=["read", "create", "update", "delete", "query"]) - """A Boolean flag indicating whether or not parts of the resource are unable to be explicitly - managed. Required.""" - lifecycle_state: Union[str, "_models.DnsPrivateZonesLifecycleState"] = rest_field( + """DbNode OCID. Required.""" + additional_details: Optional[str] = rest_field( + name="additionalDetails", visibility=["read", "create", "update", "delete", "query"] + ) + """Additional information about the planned maintenance.""" + cpu_core_count: Optional[int] = rest_field( + name="cpuCoreCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The number of CPU cores enabled on the Db node.""" + db_node_storage_size_in_gbs: Optional[int] = rest_field( + name="dbNodeStorageSizeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """The allocated local node storage in GBs on the Db node.""" + fault_domain: Optional[str] = rest_field( + name="faultDomain", visibility=["read", "create", "update", "delete", "query"] + ) + """The name of the Fault Domain the instance is contained in.""" + hostname: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The host name for the database node.""" + lifecycle_state: Optional[Union[str, "_models.DbNodeProvisioningState"]] = rest_field( name="lifecycleState", visibility=["read", "create", "update", "delete", "query"] ) - """Zones lifecycleState. Required. Known values are: \"Active\", \"Creating\", \"Deleted\", - \"Deleting\", and \"Updating\".""" - self_property: str = rest_field(name="self", visibility=["read", "create", "update", "delete", "query"]) - """The canonical absolute URL of the resource. Required.""" - serial: int = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The current serial of the zone. As seen in the zone's SOA record. Required.""" - version: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """Version is the never-repeating, totally-orderable, version of the zone, from which the serial - field of the zone's SOA record is derived. Required.""" - view_id: Optional[str] = rest_field(name="viewId", visibility=["read", "create", "update", "delete", "query"]) - """The OCID of the private view containing the zone. This value will be null for zones in the - global DNS, which are publicly resolvable and not part of a private view.""" - zone_type: Union[str, "_models.ZoneType"] = rest_field( - name="zoneType", visibility=["read", "create", "update", "delete", "query"] + """The current state of the database node. Known values are: \"Provisioning\", \"Available\", + \"Updating\", \"Stopping\", \"Stopped\", \"Starting\", \"Terminating\", \"Terminated\", and + \"Failed\".""" + maintenance_type: Optional[str] = rest_field( + name="maintenanceType", visibility=["read", "create", "update", "delete", "query"] ) - """The type of the zone. Must be either PRIMARY or SECONDARY. SECONDARY is only supported for - GLOBAL zones. Required. Known values are: \"Primary\" and \"Secondary\".""" - time_created: datetime.datetime = rest_field( - name="timeCreated", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + """The type of database node maintenance.""" + memory_size_in_gbs: Optional[int] = rest_field( + name="memorySizeInGbs", visibility=["read", "create", "update", "delete", "query"] ) - """Zones timeCreated. Required.""" - provisioning_state: Optional[Union[str, "_models.ResourceProvisioningState"]] = rest_field( - name="provisioningState", visibility=["read"] + """The allocated memory in GBs on the Db node.""" + software_storage_size_in_gb: Optional[int] = rest_field( + name="softwareStorageSizeInGb", visibility=["read", "create", "update", "delete", "query"] ) - """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", and - \"Canceled\".""" + """The size (in GB) of the block storage volume allocation for the DB system. This attribute + applies only for virtual machine DB systems.""" + time_maintenance_window_end: Optional[datetime.datetime] = rest_field( + name="timeMaintenanceWindowEnd", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """End date and time of maintenance window.""" + time_maintenance_window_start: Optional[datetime.datetime] = rest_field( + name="timeMaintenanceWindowStart", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" + ) + """Start date and time of maintenance window.""" + total_cpu_core_count: Optional[int] = rest_field( + name="totalCpuCoreCount", visibility=["read", "create", "update", "delete", "query"] + ) + """The total number of CPU cores reserved on the Db node.""" @overload def __init__( self, *, ocid: str, - is_protected: bool, - lifecycle_state: Union[str, "_models.DnsPrivateZonesLifecycleState"], - self_property: str, - serial: int, - version: str, - zone_type: Union[str, "_models.ZoneType"], - time_created: datetime.datetime, - view_id: Optional[str] = None, + additional_details: Optional[str] = None, + cpu_core_count: Optional[int] = None, + db_node_storage_size_in_gbs: Optional[int] = None, + fault_domain: Optional[str] = None, + hostname: Optional[str] = None, + lifecycle_state: Optional[Union[str, "_models.DbNodeProvisioningState"]] = None, + maintenance_type: Optional[str] = None, + memory_size_in_gbs: Optional[int] = None, + software_storage_size_in_gb: Optional[int] = None, + time_maintenance_window_end: Optional[datetime.datetime] = None, + time_maintenance_window_start: Optional[datetime.datetime] = None, + total_cpu_core_count: Optional[int] = None, ) -> None: ... @overload def __init__(self, mapping: Mapping[str, Any]) -> None: """ :param mapping: raw JSON to initialize the model. - :type mapping: Mapping[str, Any] - """ - - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) - - -class ErrorAdditionalInfo(_Model): - """The resource management error additional info. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: any - """ - - type: Optional[str] = rest_field(visibility=["read"]) - """The additional info type.""" - info: Optional[Any] = rest_field(visibility=["read"]) - """The additional info.""" - - -class ErrorDetail(_Model): - """The error detail. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.oracledatabase.models.ErrorDetail] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.oracledatabase.models.ErrorAdditionalInfo] - """ - - code: Optional[str] = rest_field(visibility=["read"]) - """The error code.""" - message: Optional[str] = rest_field(visibility=["read"]) - """The error message.""" - target: Optional[str] = rest_field(visibility=["read"]) - """The error target.""" - details: Optional[list["_models.ErrorDetail"]] = rest_field(visibility=["read"]) - """The error details.""" - additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = rest_field( - name="additionalInfo", visibility=["read"] - ) - """The error additional info.""" + :type mapping: Mapping[str, Any] + """ + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) -class ErrorResponse(_Model): - """Error response. - :ivar error: The error object. - :vartype error: ~azure.mgmt.oracledatabase.models.ErrorDetail +class ExascaleDbStorageDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Exadata Database Storage Details. + + :ivar available_size_in_gbs: Available Capacity. + :vartype available_size_in_gbs: int + :ivar total_size_in_gbs: Total Capacity. + :vartype total_size_in_gbs: int """ - error: Optional["_models.ErrorDetail"] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The error object.""" + available_size_in_gbs: Optional[int] = rest_field( + name="availableSizeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """Available Capacity.""" + total_size_in_gbs: Optional[int] = rest_field( + name="totalSizeInGbs", visibility=["read", "create", "update", "delete", "query"] + ) + """Total Capacity.""" @overload def __init__( self, *, - error: Optional["_models.ErrorDetail"] = None, + available_size_in_gbs: Optional[int] = None, + total_size_in_gbs: Optional[int] = None, ) -> None: ... @overload @@ -6092,82 +8003,23 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class EstimatedPatchingTime(_Model): - """The estimated total time required in minutes for all patching operations (database server, - storage server, and network switch patching). - - :ivar estimated_db_server_patching_time: The estimated time required in minutes for database - server patching. - :vartype estimated_db_server_patching_time: int - :ivar estimated_network_switches_patching_time: The estimated time required in minutes for - network switch patching. - :vartype estimated_network_switches_patching_time: int - :ivar estimated_storage_server_patching_time: The estimated time required in minutes for - storage server patching. - :vartype estimated_storage_server_patching_time: int - :ivar total_estimated_patching_time: The estimated total time required in minutes for all - patching operations. - :vartype total_estimated_patching_time: int - """ - - estimated_db_server_patching_time: Optional[int] = rest_field( - name="estimatedDbServerPatchingTime", visibility=["read"] - ) - """The estimated time required in minutes for database server patching.""" - estimated_network_switches_patching_time: Optional[int] = rest_field( - name="estimatedNetworkSwitchesPatchingTime", visibility=["read"] - ) - """The estimated time required in minutes for network switch patching.""" - estimated_storage_server_patching_time: Optional[int] = rest_field( - name="estimatedStorageServerPatchingTime", visibility=["read"] - ) - """The estimated time required in minutes for storage server patching.""" - total_estimated_patching_time: Optional[int] = rest_field(name="totalEstimatedPatchingTime", visibility=["read"]) - """The estimated total time required in minutes for all patching operations.""" - - -class ExadataIormConfig(_Model): - """ExadataIormConfig for cloud vm cluster. +class ExascaleDbStorageInputDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Create exadata Database Storage Details model. - :ivar db_plans: An array of IORM settings for all the database in the Exadata DB system. - :vartype db_plans: list[~azure.mgmt.oracledatabase.models.DbIormConfig] - :ivar lifecycle_details: Additional information about the current lifecycleState. - :vartype lifecycle_details: str - :ivar lifecycle_state: The current state of IORM configuration for the Exadata DB system. Known - values are: "BootStrapping", "Enabled", "Disabled", "Updating", and "Failed". - :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.IormLifecycleState - :ivar objective: The current value for the IORM objective. The default is AUTO. Known values - are: "LowLatency", "HighThroughput", "Balanced", "Auto", and "Basic". - :vartype objective: str or ~azure.mgmt.oracledatabase.models.Objective + :ivar total_size_in_gbs: Total Capacity. Required. + :vartype total_size_in_gbs: int """ - db_plans: Optional[list["_models.DbIormConfig"]] = rest_field( - name="dbPlans", visibility=["read", "create", "update", "delete", "query"] - ) - """An array of IORM settings for all the database in the Exadata DB system.""" - lifecycle_details: Optional[str] = rest_field( - name="lifecycleDetails", visibility=["read", "create", "update", "delete", "query"] - ) - """Additional information about the current lifecycleState.""" - lifecycle_state: Optional[Union[str, "_models.IormLifecycleState"]] = rest_field( - name="lifecycleState", visibility=["read", "create", "update", "delete", "query"] - ) - """The current state of IORM configuration for the Exadata DB system. Known values are: - \"BootStrapping\", \"Enabled\", \"Disabled\", \"Updating\", and \"Failed\".""" - objective: Optional[Union[str, "_models.Objective"]] = rest_field( - visibility=["read", "create", "update", "delete", "query"] + total_size_in_gbs: int = rest_field( + name="totalSizeInGbs", visibility=["read", "create", "update", "delete", "query"] ) - """The current value for the IORM objective. The default is AUTO. Known values are: - \"LowLatency\", \"HighThroughput\", \"Balanced\", \"Auto\", and \"Basic\".""" + """Total Capacity. Required.""" @overload def __init__( self, *, - db_plans: Optional[list["_models.DbIormConfig"]] = None, - lifecycle_details: Optional[str] = None, - lifecycle_state: Optional[Union[str, "_models.IormLifecycleState"]] = None, - objective: Optional[Union[str, "_models.Objective"]] = None, + total_size_in_gbs: int, ) -> None: ... @overload @@ -6181,8 +8033,8 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExadbVmCluster(TrackedResource): - """ExadbVmCluster resource definition. +class ExascaleDbStorageVault(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """ExascaleDbStorageVault resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. @@ -6200,12 +8052,12 @@ class ExadbVmCluster(TrackedResource): :ivar location: The geo-location where the resource lives. Required. :vartype location: str :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultProperties :ivar zones: The availability zones. :vartype zones: list[str] """ - properties: Optional["_models.ExadbVmClusterProperties"] = rest_field( + properties: Optional["_models.ExascaleDbStorageVaultProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" @@ -6218,7 +8070,7 @@ def __init__( *, location: str, tags: Optional[dict[str, str]] = None, - properties: Optional["_models.ExadbVmClusterProperties"] = None, + properties: Optional["_models.ExascaleDbStorageVaultProperties"] = None, zones: Optional[list[str]] = None, ) -> None: ... @@ -6233,293 +8085,121 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExadbVmClusterProperties(_Model): - """ExadbVmCluster resource model. +class ExascaleDbStorageVaultProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """ExascaleDbStorageVault resource model. - :ivar ocid: ExadbVmCluster ocid. - :vartype ocid: str - :ivar cluster_name: The cluster name for Exadata VM cluster on Exascale Infrastructure. The - cluster name must begin with an alphabetic character, and may contain hyphens (-). Underscores - (_) are not permitted. The cluster name can be no longer than 11 characters and is not case - sensitive. - :vartype cluster_name: str - :ivar backup_subnet_cidr: Client OCI backup subnet CIDR, default is 192.168.252.0/22. - :vartype backup_subnet_cidr: str - :ivar nsg_url: HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure - Interface. - :vartype nsg_url: str - :ivar provisioning_state: Exadata VM cluster on Exascale Infrastructure provisioning state. - Known values are: "Succeeded", "Failed", "Canceled", and "Provisioning". - :vartype provisioning_state: str or - ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState - :ivar lifecycle_state: CloudVmCluster lifecycle state. Known values are: "Provisioning", - "Available", "Updating", "Terminating", "Terminated", "MaintenanceInProgress", and "Failed". - :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.ExadbVmClusterLifecycleState - :ivar vnet_id: VNET for network connectivity. Required. - :vartype vnet_id: str - :ivar subnet_id: Client subnet. Required. - :vartype subnet_id: str - :ivar data_collection_options: Indicates user preferences for the various diagnostic collection - options for the VM cluster/Cloud VM cluster/VMBM DBCS. - :vartype data_collection_options: ~azure.mgmt.oracledatabase.models.DataCollectionOptions - :ivar display_name: Display Name. Required. + :ivar additional_flash_cache_in_percent: The size of additional Flash Cache in percentage of + High Capacity database storage. + :vartype additional_flash_cache_in_percent: int + :ivar description: Exadata Database Storage Vault description. + :vartype description: str + :ivar display_name: The user-friendly name for the Exadata Database Storage Vault. The name + does not need to be unique. Required. :vartype display_name: str - :ivar domain: A domain name used for the Exadata VM cluster on Exascale Infrastructure. - :vartype domain: str - :ivar enabled_ecpu_count: The number of ECPUs to enable for an Exadata VM cluster on Exascale - Infrastructure. Required. - :vartype enabled_ecpu_count: int - :ivar exascale_db_storage_vault_id: The Azure Resource ID of the Exadata Database Storage - Vault. Required. - :vartype exascale_db_storage_vault_id: str - :ivar grid_image_ocid: Grid Setup will be done using this Grid Image OCID. Can be obtained - using giMinorVersions API. - :vartype grid_image_ocid: str - :ivar grid_image_type: The type of Grid Image. Known values are: "ReleaseUpdate" and - "CustomImage". - :vartype grid_image_type: str or ~azure.mgmt.oracledatabase.models.GridImageType - :ivar gi_version: Oracle Grid Infrastructure (GI) software version. - :vartype gi_version: str - :ivar hostname: The hostname for the Exadata VM cluster on Exascale Infrastructure. Required. - :vartype hostname: str - :ivar license_model: The Oracle license model that applies to the Exadata VM cluster on - Exascale Infrastructure. The default is LICENSE_INCLUDED. Known values are: "LicenseIncluded" - and "BringYourOwnLicense". - :vartype license_model: str or ~azure.mgmt.oracledatabase.models.LicenseModel - :ivar memory_size_in_gbs: The memory that you want to be allocated in GBs. Memory is calculated - based on 11 GB per VM core reserved. - :vartype memory_size_in_gbs: int - :ivar node_count: The number of nodes in the Exadata VM cluster on Exascale Infrastructure. - Required. - :vartype node_count: int - :ivar nsg_cidrs: CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision - the VM Cluster will be added by default. - :vartype nsg_cidrs: list[~azure.mgmt.oracledatabase.models.NsgCidr] - :ivar zone_ocid: The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is - associated with. - :vartype zone_ocid: str - :ivar private_zone_ocid: The OCID of the zone the Exadata VM cluster on Exascale Infrastructure - is associated with. - :vartype private_zone_ocid: str - :ivar scan_listener_port_tcp: The TCP Single Client Access Name (SCAN) port. The default port - is 1521. - :vartype scan_listener_port_tcp: int - :ivar scan_listener_port_tcp_ssl: The TCPS Single Client Access Name (SCAN) port. The default - port is 2484. - :vartype scan_listener_port_tcp_ssl: int - :ivar listener_port: The port number configured for the listener on the Exadata VM cluster on - Exascale Infrastructure. - :vartype listener_port: int - :ivar shape: The shape of the Exadata VM cluster on Exascale Infrastructure resource. Required. - :vartype shape: str - :ivar ssh_public_keys: The public key portion of one or more key pairs used for SSH access to - the Exadata VM cluster on Exascale Infrastructure. Required. - :vartype ssh_public_keys: list[str] - :ivar system_version: Operating system version of the image. - :vartype system_version: str - :ivar time_zone: The time zone of the Exadata VM cluster on Exascale Infrastructure. For - details, see `Exadata Infrastructure Time Zones `_. + :ivar high_capacity_database_storage_input: Create exadata Database Storage Details. Required. + :vartype high_capacity_database_storage_input: + ~azure.mgmt.oracledatabase.models.ExascaleDbStorageInputDetails + :ivar high_capacity_database_storage: Response exadata Database Storage Details. + :vartype high_capacity_database_storage: + ~azure.mgmt.oracledatabase.models.ExascaleDbStorageDetails + :ivar time_zone: The time zone that you want to use for the Exadata Database Storage Vault. :vartype time_zone: str - :ivar total_ecpu_count: The number of Total ECPUs for an Exadata VM cluster on Exascale - Infrastructure. Required. - :vartype total_ecpu_count: int - :ivar vm_file_system_storage: Filesystem storage details. Required. - :vartype vm_file_system_storage: ~azure.mgmt.oracledatabase.models.ExadbVmClusterStorageDetails + :ivar provisioning_state: Exadata Database Storage Vault provisioning state. Known values are: + "Succeeded", "Failed", "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar lifecycle_state: Exadata Database Storage Vault lifecycle state. Known values are: + "Provisioning", "Available", "Updating", "Terminating", "Terminated", and "Failed". + :vartype lifecycle_state: str or + ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultLifecycleState :ivar lifecycle_details: Additional information about the current lifecycle state. :vartype lifecycle_details: str - :ivar scan_dns_name: The FQDN of the DNS record for the SCAN IP addresses that are associated - with the Exadata VM cluster on Exascale Infrastructure. - :vartype scan_dns_name: str - :ivar scan_ip_ids: The Single Client Access Name (SCAN) IP addresses associated with the - Exadata VM cluster on Exascale Infrastructure. SCAN IP addresses are typically used for load - balancing and are not assigned to any interface. Oracle Clusterware directs the requests to the - appropriate nodes in the cluster. **Note:** For a single-node DB system, this list is empty. - :vartype scan_ip_ids: list[str] - :ivar scan_dns_record_id: The OCID of the DNS record for the SCAN IP addresses that are - associated with the Exadata VM cluster on Exascale Infrastructure. - :vartype scan_dns_record_id: str - :ivar snapshot_file_system_storage: Snapshot filesystem storage details. - :vartype snapshot_file_system_storage: - ~azure.mgmt.oracledatabase.models.ExadbVmClusterStorageDetails - :ivar total_file_system_storage: Total file system storage details. - :vartype total_file_system_storage: - ~azure.mgmt.oracledatabase.models.ExadbVmClusterStorageDetails - :ivar vip_ids: The virtual IP (VIP) addresses associated with the Exadata VM cluster on - Exascale Infrastructure. The Cluster Ready Services (CRS) creates and maintains one VIP address - for each node in the Exadata Cloud Service instance to enable failover. If one node fails, the - VIP is reassigned to another active node in the cluster. **Note:** For a single-node DB system, - this list is empty. - :vartype vip_ids: list[str] + :ivar vm_cluster_count: The number of Exadata VM clusters used the Exadata Database Storage + Vault. + :vartype vm_cluster_count: int + :ivar ocid: The OCID of the Exadata Database Storage Vault. + :vartype ocid: str :ivar oci_url: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. :vartype oci_url: str - :ivar iorm_config_cache: iormConfigCache details for Exadata VM cluster on Exascale - Infrastructure. - :vartype iorm_config_cache: ~azure.mgmt.oracledatabase.models.ExadataIormConfig - :ivar backup_subnet_ocid: Cluster backup subnet ocid. - :vartype backup_subnet_ocid: str - :ivar subnet_ocid: Cluster subnet ocid. - :vartype subnet_ocid: str - :ivar shape_attribute: The type of Exascale storage used for Exadata VM cluster. Known values - are: "SMART_STORAGE" and "BLOCK_STORAGE". - :vartype shape_attribute: str or ~azure.mgmt.oracledatabase.models.ShapeAttribute + :ivar exadata_infrastructure_id: Cloud Exadata infrastructure ID. + :vartype exadata_infrastructure_id: str + :ivar attached_shape_attributes: The shapeAttribute of the Exadata VM cluster(s) associated + with the Exadata Database Storage Vault. + :vartype attached_shape_attributes: list[str or + ~azure.mgmt.oracledatabase.models.ShapeAttribute] + :ivar is_autoscale_enabled: Indicates if autoscale feature is enabled for the Storage Vault. + The default value is: false. + :vartype is_autoscale_enabled: bool + :ivar autoscale_limit_in_gbs: Maximum limit storage size in gigabytes, that is applicable for + the Database Storage Vault. + :vartype autoscale_limit_in_gbs: int """ - ocid: Optional[str] = rest_field(visibility=["read"]) - """ExadbVmCluster ocid.""" - cluster_name: Optional[str] = rest_field(name="clusterName", visibility=["read", "create"]) - """The cluster name for Exadata VM cluster on Exascale Infrastructure. The cluster name must begin - with an alphabetic character, and may contain hyphens (-). Underscores (_) are not permitted. - The cluster name can be no longer than 11 characters and is not case sensitive.""" - backup_subnet_cidr: Optional[str] = rest_field(name="backupSubnetCidr", visibility=["read", "create"]) - """Client OCI backup subnet CIDR, default is 192.168.252.0/22.""" - nsg_url: Optional[str] = rest_field(name="nsgUrl", visibility=["read"]) - """HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure Interface.""" - provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( - name="provisioningState", visibility=["read"] - ) - """Exadata VM cluster on Exascale Infrastructure provisioning state. Known values are: - \"Succeeded\", \"Failed\", \"Canceled\", and \"Provisioning\".""" - lifecycle_state: Optional[Union[str, "_models.ExadbVmClusterLifecycleState"]] = rest_field( - name="lifecycleState", visibility=["read"] - ) - """CloudVmCluster lifecycle state. Known values are: \"Provisioning\", \"Available\", - \"Updating\", \"Terminating\", \"Terminated\", \"MaintenanceInProgress\", and \"Failed\".""" - vnet_id: str = rest_field(name="vnetId", visibility=["read", "create"]) - """VNET for network connectivity. Required.""" - subnet_id: str = rest_field(name="subnetId", visibility=["read", "create"]) - """Client subnet. Required.""" - data_collection_options: Optional["_models.DataCollectionOptions"] = rest_field( - name="dataCollectionOptions", visibility=["read", "create"] + additional_flash_cache_in_percent: Optional[int] = rest_field( + name="additionalFlashCacheInPercent", visibility=["read", "create"] ) - """Indicates user preferences for the various diagnostic collection options for the VM - cluster/Cloud VM cluster/VMBM DBCS.""" + """The size of additional Flash Cache in percentage of High Capacity database storage.""" + description: Optional[str] = rest_field(visibility=["read", "create"]) + """Exadata Database Storage Vault description.""" display_name: str = rest_field(name="displayName", visibility=["read", "create"]) - """Display Name. Required.""" - domain: Optional[str] = rest_field(visibility=["read", "create"]) - """A domain name used for the Exadata VM cluster on Exascale Infrastructure.""" - enabled_ecpu_count: int = rest_field(name="enabledEcpuCount", visibility=["read", "create"]) - """The number of ECPUs to enable for an Exadata VM cluster on Exascale Infrastructure. Required.""" - exascale_db_storage_vault_id: str = rest_field(name="exascaleDbStorageVaultId", visibility=["read", "create"]) - """The Azure Resource ID of the Exadata Database Storage Vault. Required.""" - grid_image_ocid: Optional[str] = rest_field(name="gridImageOcid", visibility=["read", "create"]) - """Grid Setup will be done using this Grid Image OCID. Can be obtained using giMinorVersions API.""" - grid_image_type: Optional[Union[str, "_models.GridImageType"]] = rest_field( - name="gridImageType", visibility=["read"] + """The user-friendly name for the Exadata Database Storage Vault. The name does not need to be + unique. Required.""" + high_capacity_database_storage_input: "_models.ExascaleDbStorageInputDetails" = rest_field( + name="highCapacityDatabaseStorageInput", visibility=["create"] ) - """The type of Grid Image. Known values are: \"ReleaseUpdate\" and \"CustomImage\".""" - gi_version: Optional[str] = rest_field(name="giVersion", visibility=["read"]) - """Oracle Grid Infrastructure (GI) software version.""" - hostname: str = rest_field(visibility=["read", "create"]) - """The hostname for the Exadata VM cluster on Exascale Infrastructure. Required.""" - license_model: Optional[Union[str, "_models.LicenseModel"]] = rest_field( - name="licenseModel", visibility=["read", "create"] + """Create exadata Database Storage Details. Required.""" + high_capacity_database_storage: Optional["_models.ExascaleDbStorageDetails"] = rest_field( + name="highCapacityDatabaseStorage", visibility=["read"] ) - """The Oracle license model that applies to the Exadata VM cluster on Exascale Infrastructure. The - default is LICENSE_INCLUDED. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" - memory_size_in_gbs: Optional[int] = rest_field(name="memorySizeInGbs", visibility=["read"]) - """The memory that you want to be allocated in GBs. Memory is calculated based on 11 GB per VM - core reserved.""" - node_count: int = rest_field(name="nodeCount", visibility=["read", "create", "update"]) - """The number of nodes in the Exadata VM cluster on Exascale Infrastructure. Required.""" - nsg_cidrs: Optional[list["_models.NsgCidr"]] = rest_field(name="nsgCidrs", visibility=["read", "create"]) - """CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision the VM Cluster - will be added by default.""" - zone_ocid: Optional[str] = rest_field(name="zoneOcid", visibility=["read"]) - """The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is associated with.""" - private_zone_ocid: Optional[str] = rest_field(name="privateZoneOcid", visibility=["read", "create"]) - """The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is associated with.""" - scan_listener_port_tcp: Optional[int] = rest_field(name="scanListenerPortTcp", visibility=["read", "create"]) - """The TCP Single Client Access Name (SCAN) port. The default port is 1521.""" - scan_listener_port_tcp_ssl: Optional[int] = rest_field(name="scanListenerPortTcpSsl", visibility=["read", "create"]) - """The TCPS Single Client Access Name (SCAN) port. The default port is 2484.""" - listener_port: Optional[int] = rest_field(name="listenerPort", visibility=["read"]) - """The port number configured for the listener on the Exadata VM cluster on Exascale - Infrastructure.""" - shape: str = rest_field(visibility=["read", "create"]) - """The shape of the Exadata VM cluster on Exascale Infrastructure resource. Required.""" - ssh_public_keys: list[str] = rest_field(name="sshPublicKeys", visibility=["read", "create"]) - """The public key portion of one or more key pairs used for SSH access to the Exadata VM cluster - on Exascale Infrastructure. Required.""" - system_version: Optional[str] = rest_field(name="systemVersion", visibility=["read", "create"]) - """Operating system version of the image.""" + """Response exadata Database Storage Details.""" time_zone: Optional[str] = rest_field(name="timeZone", visibility=["read", "create"]) - """The time zone of the Exadata VM cluster on Exascale Infrastructure. For details, see `Exadata - Infrastructure Time Zones `_.""" - total_ecpu_count: int = rest_field(name="totalEcpuCount", visibility=["read", "create"]) - """The number of Total ECPUs for an Exadata VM cluster on Exascale Infrastructure. Required.""" - vm_file_system_storage: "_models.ExadbVmClusterStorageDetails" = rest_field( - name="vmFileSystemStorage", visibility=["read", "create"] + """The time zone that you want to use for the Exadata Database Storage Vault.""" + provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( + name="provisioningState", visibility=["read"] ) - """Filesystem storage details. Required.""" + """Exadata Database Storage Vault provisioning state. Known values are: \"Succeeded\", \"Failed\", + \"Canceled\", and \"Provisioning\".""" + lifecycle_state: Optional[Union[str, "_models.ExascaleDbStorageVaultLifecycleState"]] = rest_field( + name="lifecycleState", visibility=["read"] + ) + """Exadata Database Storage Vault lifecycle state. Known values are: \"Provisioning\", + \"Available\", \"Updating\", \"Terminating\", \"Terminated\", and \"Failed\".""" lifecycle_details: Optional[str] = rest_field(name="lifecycleDetails", visibility=["read"]) """Additional information about the current lifecycle state.""" - scan_dns_name: Optional[str] = rest_field(name="scanDnsName", visibility=["read"]) - """The FQDN of the DNS record for the SCAN IP addresses that are associated with the Exadata VM - cluster on Exascale Infrastructure.""" - scan_ip_ids: Optional[list[str]] = rest_field(name="scanIpIds", visibility=["read"]) - """The Single Client Access Name (SCAN) IP addresses associated with the Exadata VM cluster on - Exascale Infrastructure. SCAN IP addresses are typically used for load balancing and are not - assigned to any interface. Oracle Clusterware directs the requests to the appropriate nodes in - the cluster. **Note:** For a single-node DB system, this list is empty.""" - scan_dns_record_id: Optional[str] = rest_field(name="scanDnsRecordId", visibility=["read"]) - """The OCID of the DNS record for the SCAN IP addresses that are associated with the Exadata VM - cluster on Exascale Infrastructure.""" - snapshot_file_system_storage: Optional["_models.ExadbVmClusterStorageDetails"] = rest_field( - name="snapshotFileSystemStorage", visibility=["read"] - ) - """Snapshot filesystem storage details.""" - total_file_system_storage: Optional["_models.ExadbVmClusterStorageDetails"] = rest_field( - name="totalFileSystemStorage", visibility=["read"] - ) - """Total file system storage details.""" - vip_ids: Optional[list[str]] = rest_field(name="vipIds", visibility=["read"]) - """The virtual IP (VIP) addresses associated with the Exadata VM cluster on Exascale - Infrastructure. The Cluster Ready Services (CRS) creates and maintains one VIP address for each - node in the Exadata Cloud Service instance to enable failover. If one node fails, the VIP is - reassigned to another active node in the cluster. **Note:** For a single-node DB system, this - list is empty.""" + vm_cluster_count: Optional[int] = rest_field(name="vmClusterCount", visibility=["read"]) + """The number of Exadata VM clusters used the Exadata Database Storage Vault.""" + ocid: Optional[str] = rest_field(visibility=["read"]) + """The OCID of the Exadata Database Storage Vault.""" oci_url: Optional[str] = rest_field(name="ociUrl", visibility=["read"]) """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" - iorm_config_cache: Optional["_models.ExadataIormConfig"] = rest_field(name="iormConfigCache", visibility=["read"]) - """iormConfigCache details for Exadata VM cluster on Exascale Infrastructure.""" - backup_subnet_ocid: Optional[str] = rest_field(name="backupSubnetOcid", visibility=["read"]) - """Cluster backup subnet ocid.""" - subnet_ocid: Optional[str] = rest_field(name="subnetOcid", visibility=["read"]) - """Cluster subnet ocid.""" - shape_attribute: Optional[Union[str, "_models.ShapeAttribute"]] = rest_field( - name="shapeAttribute", visibility=["read", "create"] + exadata_infrastructure_id: Optional[str] = rest_field(name="exadataInfrastructureId", visibility=["read", "create"]) + """Cloud Exadata infrastructure ID.""" + attached_shape_attributes: Optional[list[Union[str, "_models.ShapeAttribute"]]] = rest_field( + name="attachedShapeAttributes", visibility=["read"] ) - """The type of Exascale storage used for Exadata VM cluster. Known values are: \"SMART_STORAGE\" - and \"BLOCK_STORAGE\".""" + """The shapeAttribute of the Exadata VM cluster(s) associated with the Exadata Database Storage + Vault.""" + is_autoscale_enabled: Optional[bool] = rest_field( + name="isAutoscaleEnabled", visibility=["read", "create", "update"] + ) + """Indicates if autoscale feature is enabled for the Storage Vault. The default value is: false.""" + autoscale_limit_in_gbs: Optional[int] = rest_field( + name="autoscaleLimitInGbs", visibility=["read", "create", "update"] + ) + """Maximum limit storage size in gigabytes, that is applicable for the Database Storage Vault.""" @overload - def __init__( # pylint: disable=too-many-locals + def __init__( self, *, - vnet_id: str, - subnet_id: str, display_name: str, - enabled_ecpu_count: int, - exascale_db_storage_vault_id: str, - hostname: str, - node_count: int, - shape: str, - ssh_public_keys: list[str], - total_ecpu_count: int, - vm_file_system_storage: "_models.ExadbVmClusterStorageDetails", - cluster_name: Optional[str] = None, - backup_subnet_cidr: Optional[str] = None, - data_collection_options: Optional["_models.DataCollectionOptions"] = None, - domain: Optional[str] = None, - grid_image_ocid: Optional[str] = None, - license_model: Optional[Union[str, "_models.LicenseModel"]] = None, - nsg_cidrs: Optional[list["_models.NsgCidr"]] = None, - private_zone_ocid: Optional[str] = None, - scan_listener_port_tcp: Optional[int] = None, - scan_listener_port_tcp_ssl: Optional[int] = None, - system_version: Optional[str] = None, + high_capacity_database_storage_input: "_models.ExascaleDbStorageInputDetails", + additional_flash_cache_in_percent: Optional[int] = None, + description: Optional[str] = None, time_zone: Optional[str] = None, - shape_attribute: Optional[Union[str, "_models.ShapeAttribute"]] = None, + exadata_infrastructure_id: Optional[str] = None, + is_autoscale_enabled: Optional[bool] = None, + autoscale_limit_in_gbs: Optional[int] = None, ) -> None: ... @overload @@ -6533,23 +8213,58 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExadbVmClusterStorageDetails(_Model): - """Storage Details on the Exadata VM cluster. +class ExascaleDbStorageVaultTagsUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The type used for updating tags in ExascaleDbStorageVault resources. - :ivar total_size_in_gbs: Total Capacity. Required. - :vartype total_size_in_gbs: int + :ivar tags: Resource tags. + :vartype tags: dict[str, str] """ - total_size_in_gbs: int = rest_field( - name="totalSizeInGbs", visibility=["read", "create", "update", "delete", "query"] + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + + @overload + def __init__( + self, + *, + tags: Optional[dict[str, str]] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class FileSystemConfigurationDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """File configuration options. + + :ivar mount_point: Mount path. + :vartype mount_point: str + :ivar file_system_size_gb: Size of the VM. + :vartype file_system_size_gb: int + """ + + mount_point: Optional[str] = rest_field( + name="mountPoint", visibility=["read", "create", "update", "delete", "query"] ) - """Total Capacity. Required.""" + """Mount path.""" + file_system_size_gb: Optional[int] = rest_field( + name="fileSystemSizeGb", visibility=["read", "create", "update", "delete", "query"] + ) + """Size of the VM.""" @overload def __init__( self, *, - total_size_in_gbs: int, + mount_point: Optional[str] = None, + file_system_size_gb: Optional[int] = None, ) -> None: ... @overload @@ -6563,22 +8278,25 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExadbVmClusterUpdate(_Model): - """The type used for update operations of the ExadbVmCluster. +class FlexComponent(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """FlexComponent Resource Definition. - :ivar zones: The availability zones. - :vartype zones: list[str] - :ivar tags: Resource tags. - :vartype tags: dict[str, str] + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterUpdateProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.FlexComponentProperties """ - zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The availability zones.""" - tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """Resource tags.""" - properties: Optional["_models.ExadbVmClusterUpdateProperties"] = rest_field( + properties: Optional["_models.FlexComponentProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" @@ -6587,9 +8305,7 @@ class ExadbVmClusterUpdate(_Model): def __init__( self, *, - zones: Optional[list[str]] = None, - tags: Optional[dict[str, str]] = None, - properties: Optional["_models.ExadbVmClusterUpdateProperties"] = None, + properties: Optional["_models.FlexComponentProperties"] = None, ) -> None: ... @overload @@ -6603,58 +8319,92 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExadbVmClusterUpdateProperties(_Model): - """The updatable properties of the ExadbVmCluster. +class FlexComponentProperties(_Model): + """FlexComponent resource model. - :ivar node_count: The number of nodes in the Exadata VM cluster on Exascale Infrastructure. - :vartype node_count: int + :ivar minimum_core_count: The minimum number of CPU cores that can be enabled on the DB Server + for this Flex Component. + :vartype minimum_core_count: int + :ivar available_core_count: The maximum number of CPU cores that can be enabled on the DB + Server for this Flex Component. + :vartype available_core_count: int + :ivar available_db_storage_in_gbs: The maximum storage that can be enabled on the Storage + Server for this Flex Component. + :vartype available_db_storage_in_gbs: int + :ivar runtime_minimum_core_count: The runtime minimum number of CPU cores that can be enabled + for this Flex Component. + :vartype runtime_minimum_core_count: int + :ivar shape: The name of the DB system shape for this Flex Component. + :vartype shape: str + :ivar available_memory_in_gbs: The maximum memory size that can be enabled on the DB Server for + this Flex Component. + :vartype available_memory_in_gbs: int + :ivar available_local_storage_in_gbs: The maximum local storage that can be enabled on the DB + Server for this Flex Component. + :vartype available_local_storage_in_gbs: int + :ivar compute_model: The compute model of the DB Server for this Flex Component. + :vartype compute_model: str + :ivar hardware_type: The hardware type of the DB (Compute) or Storage (Cell) Server for this + Flex Component. Known values are: "COMPUTE" and "CELL". + :vartype hardware_type: str or ~azure.mgmt.oracledatabase.models.HardwareType + :ivar description_summary: The description summary for this Flex Component. + :vartype description_summary: str """ - node_count: Optional[int] = rest_field(name="nodeCount", visibility=["read", "create", "update"]) - """The number of nodes in the Exadata VM cluster on Exascale Infrastructure.""" - - @overload - def __init__( - self, - *, - node_count: Optional[int] = None, - ) -> None: ... - - @overload - def __init__(self, mapping: Mapping[str, Any]) -> None: - """ - :param mapping: raw JSON to initialize the model. - :type mapping: Mapping[str, Any] - """ - - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) + minimum_core_count: Optional[int] = rest_field(name="minimumCoreCount", visibility=["read"]) + """The minimum number of CPU cores that can be enabled on the DB Server for this Flex Component.""" + available_core_count: Optional[int] = rest_field(name="availableCoreCount", visibility=["read"]) + """The maximum number of CPU cores that can be enabled on the DB Server for this Flex Component.""" + available_db_storage_in_gbs: Optional[int] = rest_field(name="availableDbStorageInGbs", visibility=["read"]) + """The maximum storage that can be enabled on the Storage Server for this Flex Component.""" + runtime_minimum_core_count: Optional[int] = rest_field(name="runtimeMinimumCoreCount", visibility=["read"]) + """The runtime minimum number of CPU cores that can be enabled for this Flex Component.""" + shape: Optional[str] = rest_field(visibility=["read"]) + """The name of the DB system shape for this Flex Component.""" + available_memory_in_gbs: Optional[int] = rest_field(name="availableMemoryInGbs", visibility=["read"]) + """The maximum memory size that can be enabled on the DB Server for this Flex Component.""" + available_local_storage_in_gbs: Optional[int] = rest_field(name="availableLocalStorageInGbs", visibility=["read"]) + """The maximum local storage that can be enabled on the DB Server for this Flex Component.""" + compute_model: Optional[str] = rest_field(name="computeModel", visibility=["read"]) + """The compute model of the DB Server for this Flex Component.""" + hardware_type: Optional[Union[str, "_models.HardwareType"]] = rest_field(name="hardwareType", visibility=["read"]) + """The hardware type of the DB (Compute) or Storage (Cell) Server for this Flex Component. Known + values are: \"COMPUTE\" and \"CELL\".""" + description_summary: Optional[str] = rest_field(name="descriptionSummary", visibility=["read"]) + """The description summary for this Flex Component.""" -class ExascaleConfigDetails(_Model): - """The exascale config response details for the cloud Exadata infrastructure. +class GenerateAutonomousDatabaseWalletDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Autonomous Database Generate Wallet resource model. - :ivar total_storage_in_gbs: Storage size needed for Exascale in GBs. Required. - :vartype total_storage_in_gbs: int - :ivar available_storage_in_gbs: Available storage size for Exascale in GBs. - :vartype available_storage_in_gbs: int + :ivar generate_type: The type of wallet to generate. Known values are: "Single" and "All". + :vartype generate_type: str or ~azure.mgmt.oracledatabase.models.GenerateType + :ivar is_regional: True when requesting regional connection strings in PDB connect info, + applicable to cross-region DG only. + :vartype is_regional: bool + :ivar password: The password to encrypt the keys inside the wallet. Required. + :vartype password: str """ - total_storage_in_gbs: int = rest_field( - name="totalStorageInGbs", visibility=["read", "create", "update", "delete", "query"] + generate_type: Optional[Union[str, "_models.GenerateType"]] = rest_field( + name="generateType", visibility=["read", "create", "update", "delete", "query"] ) - """Storage size needed for Exascale in GBs. Required.""" - available_storage_in_gbs: Optional[int] = rest_field( - name="availableStorageInGbs", visibility=["read", "create", "update", "delete", "query"] + """The type of wallet to generate. Known values are: \"Single\" and \"All\".""" + is_regional: Optional[bool] = rest_field( + name="isRegional", visibility=["read", "create", "update", "delete", "query"] ) - """Available storage size for Exascale in GBs.""" + """True when requesting regional connection strings in PDB connect info, applicable to + cross-region DG only.""" + password: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The password to encrypt the keys inside the wallet. Required.""" @overload def __init__( self, *, - total_storage_in_gbs: int, - available_storage_in_gbs: Optional[int] = None, + password: str, + generate_type: Optional[Union[str, "_models.GenerateType"]] = None, + is_regional: Optional[bool] = None, ) -> None: ... @overload @@ -6668,8 +8418,8 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExascaleDbNode(ProxyResource): - """The DbNode resource belonging to ExadbVmCluster. +class GiMinorVersion(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """The Oracle Grid Infrastructure (GI) minor version resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. @@ -6683,10 +8433,10 @@ class ExascaleDbNode(ProxyResource): information. :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.ExascaleDbNodeProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.GiMinorVersionProperties """ - properties: Optional["_models.ExascaleDbNodeProperties"] = rest_field( + properties: Optional["_models.GiMinorVersionProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" @@ -6695,7 +8445,7 @@ class ExascaleDbNode(ProxyResource): def __init__( self, *, - properties: Optional["_models.ExascaleDbNodeProperties"] = None, + properties: Optional["_models.GiMinorVersionProperties"] = None, ) -> None: ... @overload @@ -6709,109 +8459,28 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExascaleDbNodeProperties(_Model): - """The properties of DbNodeResource. +class GiMinorVersionProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The Oracle Grid Infrastructure (GI) minor version properties. - :ivar ocid: DbNode OCID. Required. - :vartype ocid: str - :ivar additional_details: Additional information about the planned maintenance. - :vartype additional_details: str - :ivar cpu_core_count: The number of CPU cores enabled on the Db node. - :vartype cpu_core_count: int - :ivar db_node_storage_size_in_gbs: The allocated local node storage in GBs on the Db node. - :vartype db_node_storage_size_in_gbs: int - :ivar fault_domain: The name of the Fault Domain the instance is contained in. - :vartype fault_domain: str - :ivar hostname: The host name for the database node. - :vartype hostname: str - :ivar lifecycle_state: The current state of the database node. Known values are: - "Provisioning", "Available", "Updating", "Stopping", "Stopped", "Starting", "Terminating", - "Terminated", and "Failed". - :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.DbNodeProvisioningState - :ivar maintenance_type: The type of database node maintenance. - :vartype maintenance_type: str - :ivar memory_size_in_gbs: The allocated memory in GBs on the Db node. - :vartype memory_size_in_gbs: int - :ivar software_storage_size_in_gb: The size (in GB) of the block storage volume allocation for - the DB system. This attribute applies only for virtual machine DB systems. - :vartype software_storage_size_in_gb: int - :ivar time_maintenance_window_end: End date and time of maintenance window. - :vartype time_maintenance_window_end: ~datetime.datetime - :ivar time_maintenance_window_start: Start date and time of maintenance window. - :vartype time_maintenance_window_start: ~datetime.datetime - :ivar total_cpu_core_count: The total number of CPU cores reserved on the Db node. - :vartype total_cpu_core_count: int + :ivar version: A valid Oracle Grid Infrastructure (GI) software version. Required. + :vartype version: str + :ivar grid_image_ocid: Grid Infrastructure Image Id. + :vartype grid_image_ocid: str """ - ocid: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """DbNode OCID. Required.""" - additional_details: Optional[str] = rest_field( - name="additionalDetails", visibility=["read", "create", "update", "delete", "query"] - ) - """Additional information about the planned maintenance.""" - cpu_core_count: Optional[int] = rest_field( - name="cpuCoreCount", visibility=["read", "create", "update", "delete", "query"] - ) - """The number of CPU cores enabled on the Db node.""" - db_node_storage_size_in_gbs: Optional[int] = rest_field( - name="dbNodeStorageSizeInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """The allocated local node storage in GBs on the Db node.""" - fault_domain: Optional[str] = rest_field( - name="faultDomain", visibility=["read", "create", "update", "delete", "query"] - ) - """The name of the Fault Domain the instance is contained in.""" - hostname: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The host name for the database node.""" - lifecycle_state: Optional[Union[str, "_models.DbNodeProvisioningState"]] = rest_field( - name="lifecycleState", visibility=["read", "create", "update", "delete", "query"] - ) - """The current state of the database node. Known values are: \"Provisioning\", \"Available\", - \"Updating\", \"Stopping\", \"Stopped\", \"Starting\", \"Terminating\", \"Terminated\", and - \"Failed\".""" - maintenance_type: Optional[str] = rest_field( - name="maintenanceType", visibility=["read", "create", "update", "delete", "query"] - ) - """The type of database node maintenance.""" - memory_size_in_gbs: Optional[int] = rest_field( - name="memorySizeInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """The allocated memory in GBs on the Db node.""" - software_storage_size_in_gb: Optional[int] = rest_field( - name="softwareStorageSizeInGb", visibility=["read", "create", "update", "delete", "query"] - ) - """The size (in GB) of the block storage volume allocation for the DB system. This attribute - applies only for virtual machine DB systems.""" - time_maintenance_window_end: Optional[datetime.datetime] = rest_field( - name="timeMaintenanceWindowEnd", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" - ) - """End date and time of maintenance window.""" - time_maintenance_window_start: Optional[datetime.datetime] = rest_field( - name="timeMaintenanceWindowStart", visibility=["read", "create", "update", "delete", "query"], format="rfc3339" - ) - """Start date and time of maintenance window.""" - total_cpu_core_count: Optional[int] = rest_field( - name="totalCpuCoreCount", visibility=["read", "create", "update", "delete", "query"] + version: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """A valid Oracle Grid Infrastructure (GI) software version. Required.""" + grid_image_ocid: Optional[str] = rest_field( + name="gridImageOcid", visibility=["read", "create", "update", "delete", "query"] ) - """The total number of CPU cores reserved on the Db node.""" + """Grid Infrastructure Image Id.""" @overload def __init__( self, *, - ocid: str, - additional_details: Optional[str] = None, - cpu_core_count: Optional[int] = None, - db_node_storage_size_in_gbs: Optional[int] = None, - fault_domain: Optional[str] = None, - hostname: Optional[str] = None, - lifecycle_state: Optional[Union[str, "_models.DbNodeProvisioningState"]] = None, - maintenance_type: Optional[str] = None, - memory_size_in_gbs: Optional[int] = None, - software_storage_size_in_gb: Optional[int] = None, - time_maintenance_window_end: Optional[datetime.datetime] = None, - time_maintenance_window_start: Optional[datetime.datetime] = None, - total_cpu_core_count: Optional[int] = None, + version: str, + grid_image_ocid: Optional[str] = None, ) -> None: ... @overload @@ -6825,30 +8494,34 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExascaleDbStorageDetails(_Model): - """Exadata Database Storage Details. +class GiVersion(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """GiVersion resource definition. - :ivar available_size_in_gbs: Available Capacity. - :vartype available_size_in_gbs: int - :ivar total_size_in_gbs: Total Capacity. - :vartype total_size_in_gbs: int + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.GiVersionProperties """ - available_size_in_gbs: Optional[int] = rest_field( - name="availableSizeInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """Available Capacity.""" - total_size_in_gbs: Optional[int] = rest_field( - name="totalSizeInGbs", visibility=["read", "create", "update", "delete", "query"] + properties: Optional["_models.GiVersionProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] ) - """Total Capacity.""" + """The resource-specific properties for this resource.""" @overload def __init__( self, *, - available_size_in_gbs: Optional[int] = None, - total_size_in_gbs: Optional[int] = None, + properties: Optional["_models.GiVersionProperties"] = None, ) -> None: ... @overload @@ -6862,23 +8535,21 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExascaleDbStorageInputDetails(_Model): - """Create exadata Database Storage Details model. +class GiVersionProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """GiVersion resource model. - :ivar total_size_in_gbs: Total Capacity. Required. - :vartype total_size_in_gbs: int + :ivar version: A valid Oracle Grid Infrastructure (GI) software version. Required. + :vartype version: str """ - total_size_in_gbs: int = rest_field( - name="totalSizeInGbs", visibility=["read", "create", "update", "delete", "query"] - ) - """Total Capacity. Required.""" + version: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """A valid Oracle Grid Infrastructure (GI) software version. Required.""" @overload def __init__( self, *, - total_size_in_gbs: int, + version: str, ) -> None: ... @overload @@ -6892,8 +8563,8 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExascaleDbStorageVault(TrackedResource): - """ExascaleDbStorageVault resource definition. +class GoldenGateConnection(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """GoldenGate Connection resource model. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. @@ -6911,12 +8582,12 @@ class ExascaleDbStorageVault(TrackedResource): :ivar location: The geo-location where the resource lives. Required. :vartype location: str :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.ConnectionBaseProperties :ivar zones: The availability zones. :vartype zones: list[str] """ - properties: Optional["_models.ExascaleDbStorageVaultProperties"] = rest_field( + properties: Optional["_models.ConnectionBaseProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" @@ -6929,7 +8600,7 @@ def __init__( *, location: str, tags: Optional[dict[str, str]] = None, - properties: Optional["_models.ExascaleDbStorageVaultProperties"] = None, + properties: Optional["_models.ConnectionBaseProperties"] = None, zones: Optional[list[str]] = None, ) -> None: ... @@ -6944,133 +8615,33 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ExascaleDbStorageVaultProperties(_Model): - """ExascaleDbStorageVault resource model. - - :ivar additional_flash_cache_in_percent: The size of additional Flash Cache in percentage of - High Capacity database storage. - :vartype additional_flash_cache_in_percent: int - :ivar description: Exadata Database Storage Vault description. - :vartype description: str - :ivar display_name: The user-friendly name for the Exadata Database Storage Vault. The name - does not need to be unique. Required. - :vartype display_name: str - :ivar high_capacity_database_storage_input: Create exadata Database Storage Details. Required. - :vartype high_capacity_database_storage_input: - ~azure.mgmt.oracledatabase.models.ExascaleDbStorageInputDetails - :ivar high_capacity_database_storage: Response exadata Database Storage Details. - :vartype high_capacity_database_storage: - ~azure.mgmt.oracledatabase.models.ExascaleDbStorageDetails - :ivar time_zone: The time zone that you want to use for the Exadata Database Storage Vault. - :vartype time_zone: str - :ivar provisioning_state: Exadata Database Storage Vault provisioning state. Known values are: - "Succeeded", "Failed", "Canceled", and "Provisioning". - :vartype provisioning_state: str or - ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState - :ivar lifecycle_state: Exadata Database Storage Vault lifecycle state. Known values are: - "Provisioning", "Available", "Updating", "Terminating", "Terminated", and "Failed". - :vartype lifecycle_state: str or - ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultLifecycleState - :ivar lifecycle_details: Additional information about the current lifecycle state. - :vartype lifecycle_details: str - :ivar vm_cluster_count: The number of Exadata VM clusters used the Exadata Database Storage - Vault. - :vartype vm_cluster_count: int - :ivar ocid: The OCID of the Exadata Database Storage Vault. - :vartype ocid: str - :ivar oci_url: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. - :vartype oci_url: str - :ivar exadata_infrastructure_id: Cloud Exadata infrastructure ID. - :vartype exadata_infrastructure_id: str - :ivar attached_shape_attributes: The shapeAttribute of the Exadata VM cluster(s) associated - with the Exadata Database Storage Vault. - :vartype attached_shape_attributes: list[str or - ~azure.mgmt.oracledatabase.models.ShapeAttribute] - """ - - additional_flash_cache_in_percent: Optional[int] = rest_field( - name="additionalFlashCacheInPercent", visibility=["read", "create"] - ) - """The size of additional Flash Cache in percentage of High Capacity database storage.""" - description: Optional[str] = rest_field(visibility=["read", "create"]) - """Exadata Database Storage Vault description.""" - display_name: str = rest_field(name="displayName", visibility=["read", "create"]) - """The user-friendly name for the Exadata Database Storage Vault. The name does not need to be - unique. Required.""" - high_capacity_database_storage_input: "_models.ExascaleDbStorageInputDetails" = rest_field( - name="highCapacityDatabaseStorageInput", visibility=["create"] - ) - """Create exadata Database Storage Details. Required.""" - high_capacity_database_storage: Optional["_models.ExascaleDbStorageDetails"] = rest_field( - name="highCapacityDatabaseStorage", visibility=["read"] - ) - """Response exadata Database Storage Details.""" - time_zone: Optional[str] = rest_field(name="timeZone", visibility=["read", "create"]) - """The time zone that you want to use for the Exadata Database Storage Vault.""" - provisioning_state: Optional[Union[str, "_models.AzureResourceProvisioningState"]] = rest_field( - name="provisioningState", visibility=["read"] - ) - """Exadata Database Storage Vault provisioning state. Known values are: \"Succeeded\", \"Failed\", - \"Canceled\", and \"Provisioning\".""" - lifecycle_state: Optional[Union[str, "_models.ExascaleDbStorageVaultLifecycleState"]] = rest_field( - name="lifecycleState", visibility=["read"] - ) - """Exadata Database Storage Vault lifecycle state. Known values are: \"Provisioning\", - \"Available\", \"Updating\", \"Terminating\", \"Terminated\", and \"Failed\".""" - lifecycle_details: Optional[str] = rest_field(name="lifecycleDetails", visibility=["read"]) - """Additional information about the current lifecycle state.""" - vm_cluster_count: Optional[int] = rest_field(name="vmClusterCount", visibility=["read"]) - """The number of Exadata VM clusters used the Exadata Database Storage Vault.""" - ocid: Optional[str] = rest_field(visibility=["read"]) - """The OCID of the Exadata Database Storage Vault.""" - oci_url: Optional[str] = rest_field(name="ociUrl", visibility=["read"]) - """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" - exadata_infrastructure_id: Optional[str] = rest_field(name="exadataInfrastructureId", visibility=["read", "create"]) - """Cloud Exadata infrastructure ID.""" - attached_shape_attributes: Optional[list[Union[str, "_models.ShapeAttribute"]]] = rest_field( - name="attachedShapeAttributes", visibility=["read"] - ) - """The shapeAttribute of the Exadata VM cluster(s) associated with the Exadata Database Storage - Vault.""" - - @overload - def __init__( - self, - *, - display_name: str, - high_capacity_database_storage_input: "_models.ExascaleDbStorageInputDetails", - additional_flash_cache_in_percent: Optional[int] = None, - description: Optional[str] = None, - time_zone: Optional[str] = None, - exadata_infrastructure_id: Optional[str] = None, - ) -> None: ... - - @overload - def __init__(self, mapping: Mapping[str, Any]) -> None: - """ - :param mapping: raw JSON to initialize the model. - :type mapping: Mapping[str, Any] - """ - - def __init__(self, *args: Any, **kwargs: Any) -> None: - super().__init__(*args, **kwargs) - - -class ExascaleDbStorageVaultTagsUpdate(_Model): - """The type used for updating tags in ExascaleDbStorageVault resources. +class GoldenGateConnectionUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The type used for update operations of the GoldenGateConnection. + :ivar zones: The availability zones. + :vartype zones: list[str] :ivar tags: Resource tags. :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.GoldenGateConnectionUpdateProperties """ + zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The availability zones.""" tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) """Resource tags.""" + properties: Optional["_models.GoldenGateConnectionUpdateProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The resource-specific properties for this resource.""" @overload def __init__( self, *, + zones: Optional[list[str]] = None, tags: Optional[dict[str, str]] = None, + properties: Optional["_models.GoldenGateConnectionUpdateProperties"] = None, ) -> None: ... @overload @@ -7084,30 +8655,68 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class FileSystemConfigurationDetails(_Model): - """File configuration options. - - :ivar mount_point: Mount path. - :vartype mount_point: str - :ivar file_system_size_gb: Size of the VM. - :vartype file_system_size_gb: int - """ +class GoldenGateConnectionUpdateProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The updatable properties of the GoldenGateConnection. - mount_point: Optional[str] = rest_field( - name="mountPoint", visibility=["read", "create", "update", "delete", "query"] + :ivar connection_type: The connection type to be created. Known values are: "GOLDENGATE", + "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", + "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", + "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_NOSQL", "MONGODB", + "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", + "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", + and "ICEBERG". + :vartype connection_type: str or ~azure.mgmt.oracledatabase.models.ConnectionType + :ivar display_name: The connection display name. + :vartype display_name: str + :ivar routing_method: Controls the network traffic direction to the target. Known values are: + "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", and "DEDICATED_ENDPOINT". + :vartype routing_method: str or ~azure.mgmt.oracledatabase.models.RoutingMethod + :ivar vault_id: The customer's vault OCID. + :vartype vault_id: str + :ivar key_id: The customer's master key OCID. + :vartype key_id: str + :ivar does_use_secret_ids: Indicates whether secret OCIDs are used for credential fields. + :vartype does_use_secret_ids: bool + """ + + connection_type: Optional[Union[str, "_models.ConnectionType"]] = rest_field( + name="connectionType", visibility=["read", "create", "update", "delete", "query"] + ) + """The connection type to be created. Known values are: \"GOLDENGATE\", \"KAFKA\", + \"KAFKA_SCHEMA_REGISTRY\", \"MYSQL\", \"JAVA_MESSAGE_SERVICE\", \"MICROSOFT_SQLSERVER\", + \"OCI_OBJECT_STORAGE\", \"ORACLE\", \"AZURE_DATA_LAKE_STORAGE\", \"POSTGRESQL\", + \"AZURE_SYNAPSE_ANALYTICS\", \"SNOWFLAKE\", \"AMAZON_S3\", \"HDFS\", \"ORACLE_NOSQL\", + \"MONGODB\", \"AMAZON_KINESIS\", \"AMAZON_REDSHIFT\", \"DB2\", \"REDIS\", \"ELASTICSEARCH\", + \"GENERIC\", \"GOOGLE_CLOUD_STORAGE\", \"GOOGLE_BIGQUERY\", \"DATABRICKS\", \"GOOGLE_PUBSUB\", + \"MICROSOFT_FABRIC\", and \"ICEBERG\".""" + display_name: Optional[str] = rest_field( + name="displayName", visibility=["read", "create", "update", "delete", "query"] ) - """Mount path.""" - file_system_size_gb: Optional[int] = rest_field( - name="fileSystemSizeGb", visibility=["read", "create", "update", "delete", "query"] + """The connection display name.""" + routing_method: Optional[Union[str, "_models.RoutingMethod"]] = rest_field( + name="routingMethod", visibility=["read", "create", "update", "delete", "query"] ) - """Size of the VM.""" + """Controls the network traffic direction to the target. Known values are: + \"SHARED_SERVICE_ENDPOINT\", \"SHARED_DEPLOYMENT_ENDPOINT\", and \"DEDICATED_ENDPOINT\".""" + vault_id: Optional[str] = rest_field(name="vaultId", visibility=["read", "create", "update", "delete", "query"]) + """The customer's vault OCID.""" + key_id: Optional[str] = rest_field(name="keyId", visibility=["read", "create", "update", "delete", "query"]) + """The customer's master key OCID.""" + does_use_secret_ids: Optional[bool] = rest_field( + name="doesUseSecretIds", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether secret OCIDs are used for credential fields.""" @overload def __init__( self, *, - mount_point: Optional[str] = None, - file_system_size_gb: Optional[int] = None, + connection_type: Optional[Union[str, "_models.ConnectionType"]] = None, + display_name: Optional[str] = None, + routing_method: Optional[Union[str, "_models.RoutingMethod"]] = None, + vault_id: Optional[str] = None, + key_id: Optional[str] = None, + does_use_secret_ids: Optional[bool] = None, ) -> None: ... @overload @@ -7121,8 +8730,8 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class FlexComponent(ProxyResource): - """FlexComponent Resource Definition. +class GoldenGateDeployment(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only + """GoldenGate Deployment resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. @@ -7135,20 +8744,31 @@ class FlexComponent(ProxyResource): :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy information. :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.FlexComponentProperties + :vartype properties: ~azure.mgmt.oracledatabase.models.DeploymentProperties + :ivar zones: The availability zones. + :vartype zones: list[str] """ - properties: Optional["_models.FlexComponentProperties"] = rest_field( + properties: Optional["_models.DeploymentProperties"] = rest_field( visibility=["read", "create", "update", "delete", "query"] ) """The resource-specific properties for this resource.""" + zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The availability zones.""" @overload def __init__( self, *, - properties: Optional["_models.FlexComponentProperties"] = None, + location: str, + tags: Optional[dict[str, str]] = None, + properties: Optional["_models.DeploymentProperties"] = None, + zones: Optional[list[str]] = None, ) -> None: ... @overload @@ -7162,92 +8782,33 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class FlexComponentProperties(_Model): - """FlexComponent resource model. - - :ivar minimum_core_count: The minimum number of CPU cores that can be enabled on the DB Server - for this Flex Component. - :vartype minimum_core_count: int - :ivar available_core_count: The maximum number of CPU cores that can be enabled on the DB - Server for this Flex Component. - :vartype available_core_count: int - :ivar available_db_storage_in_gbs: The maximum storage that can be enabled on the Storage - Server for this Flex Component. - :vartype available_db_storage_in_gbs: int - :ivar runtime_minimum_core_count: The runtime minimum number of CPU cores that can be enabled - for this Flex Component. - :vartype runtime_minimum_core_count: int - :ivar shape: The name of the DB system shape for this Flex Component. - :vartype shape: str - :ivar available_memory_in_gbs: The maximum memory size that can be enabled on the DB Server for - this Flex Component. - :vartype available_memory_in_gbs: int - :ivar available_local_storage_in_gbs: The maximum local storage that can be enabled on the DB - Server for this Flex Component. - :vartype available_local_storage_in_gbs: int - :ivar compute_model: The compute model of the DB Server for this Flex Component. - :vartype compute_model: str - :ivar hardware_type: The hardware type of the DB (Compute) or Storage (Cell) Server for this - Flex Component. Known values are: "COMPUTE" and "CELL". - :vartype hardware_type: str or ~azure.mgmt.oracledatabase.models.HardwareType - :ivar description_summary: The description summary for this Flex Component. - :vartype description_summary: str - """ - - minimum_core_count: Optional[int] = rest_field(name="minimumCoreCount", visibility=["read"]) - """The minimum number of CPU cores that can be enabled on the DB Server for this Flex Component.""" - available_core_count: Optional[int] = rest_field(name="availableCoreCount", visibility=["read"]) - """The maximum number of CPU cores that can be enabled on the DB Server for this Flex Component.""" - available_db_storage_in_gbs: Optional[int] = rest_field(name="availableDbStorageInGbs", visibility=["read"]) - """The maximum storage that can be enabled on the Storage Server for this Flex Component.""" - runtime_minimum_core_count: Optional[int] = rest_field(name="runtimeMinimumCoreCount", visibility=["read"]) - """The runtime minimum number of CPU cores that can be enabled for this Flex Component.""" - shape: Optional[str] = rest_field(visibility=["read"]) - """The name of the DB system shape for this Flex Component.""" - available_memory_in_gbs: Optional[int] = rest_field(name="availableMemoryInGbs", visibility=["read"]) - """The maximum memory size that can be enabled on the DB Server for this Flex Component.""" - available_local_storage_in_gbs: Optional[int] = rest_field(name="availableLocalStorageInGbs", visibility=["read"]) - """The maximum local storage that can be enabled on the DB Server for this Flex Component.""" - compute_model: Optional[str] = rest_field(name="computeModel", visibility=["read"]) - """The compute model of the DB Server for this Flex Component.""" - hardware_type: Optional[Union[str, "_models.HardwareType"]] = rest_field(name="hardwareType", visibility=["read"]) - """The hardware type of the DB (Compute) or Storage (Cell) Server for this Flex Component. Known - values are: \"COMPUTE\" and \"CELL\".""" - description_summary: Optional[str] = rest_field(name="descriptionSummary", visibility=["read"]) - """The description summary for this Flex Component.""" - - -class GenerateAutonomousDatabaseWalletDetails(_Model): - """Autonomous Database Generate Wallet resource model. +class GoldenGateDeploymentUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The type used for update operations of the GoldenGateDeployment. - :ivar generate_type: The type of wallet to generate. Known values are: "Single" and "All". - :vartype generate_type: str or ~azure.mgmt.oracledatabase.models.GenerateType - :ivar is_regional: True when requesting regional connection strings in PDB connect info, - applicable to cross-region DG only. - :vartype is_regional: bool - :ivar password: The password to encrypt the keys inside the wallet. Required. - :vartype password: str + :ivar zones: The availability zones. + :vartype zones: list[str] + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: ~azure.mgmt.oracledatabase.models.GoldenGateDeploymentUpdateProperties """ - generate_type: Optional[Union[str, "_models.GenerateType"]] = rest_field( - name="generateType", visibility=["read", "create", "update", "delete", "query"] - ) - """The type of wallet to generate. Known values are: \"Single\" and \"All\".""" - is_regional: Optional[bool] = rest_field( - name="isRegional", visibility=["read", "create", "update", "delete", "query"] + zones: Optional[list[str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The availability zones.""" + tags: Optional[dict[str, str]] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """Resource tags.""" + properties: Optional["_models.GoldenGateDeploymentUpdateProperties"] = rest_field( + visibility=["read", "create", "update", "delete", "query"] ) - """True when requesting regional connection strings in PDB connect info, applicable to - cross-region DG only.""" - password: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """The password to encrypt the keys inside the wallet. Required.""" + """The resource-specific properties for this resource.""" @overload def __init__( self, *, - password: str, - generate_type: Optional[Union[str, "_models.GenerateType"]] = None, - is_regional: Optional[bool] = None, + zones: Optional[list[str]] = None, + tags: Optional[dict[str, str]] = None, + properties: Optional["_models.GoldenGateDeploymentUpdateProperties"] = None, ) -> None: ... @overload @@ -7261,34 +8822,52 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class GiMinorVersion(ProxyResource): - """The Oracle Grid Infrastructure (GI) minor version resource definition. +class GoldenGateDeploymentUpdateProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The updatable properties of the GoldenGateDeployment. - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData - :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.GiMinorVersionProperties + :ivar backup_schedule: Backup schedule. + :vartype backup_schedule: ~azure.mgmt.oracledatabase.models.BackupScheduleType + :ivar cpu_core_count: The minimum number of OCPUs to be made available for this deployment. + :vartype cpu_core_count: int + :ivar license_model: The Oracle license model that applies to a Deployment. Known values are: + "LicenseIncluded" and "BringYourOwnLicense". + :vartype license_model: str or ~azure.mgmt.oracledatabase.models.LicenseModel + :ivar maintenance_configuration: Maintenance configuration. + :vartype maintenance_configuration: + ~azure.mgmt.oracledatabase.models.MaintenanceConfigurationType + :ivar maintenance_window: Maintenance window. + :vartype maintenance_window: ~azure.mgmt.oracledatabase.models.MaintenanceWindowType """ - properties: Optional["_models.GiMinorVersionProperties"] = rest_field( - visibility=["read", "create", "update", "delete", "query"] + backup_schedule: Optional["_models.BackupScheduleType"] = rest_field( + name="backupSchedule", visibility=["read", "create", "update"] ) - """The resource-specific properties for this resource.""" + """Backup schedule.""" + cpu_core_count: Optional[int] = rest_field(name="cpuCoreCount", visibility=["read", "create", "update"]) + """The minimum number of OCPUs to be made available for this deployment.""" + license_model: Optional[Union[str, "_models.LicenseModel"]] = rest_field( + name="licenseModel", visibility=["read", "create", "update"] + ) + """The Oracle license model that applies to a Deployment. Known values are: \"LicenseIncluded\" + and \"BringYourOwnLicense\".""" + maintenance_configuration: Optional["_models.MaintenanceConfigurationType"] = rest_field( + name="maintenanceConfiguration", visibility=["read", "create", "update"] + ) + """Maintenance configuration.""" + maintenance_window: Optional["_models.MaintenanceWindowType"] = rest_field( + name="maintenanceWindow", visibility=["read", "create", "update"] + ) + """Maintenance window.""" @overload def __init__( self, *, - properties: Optional["_models.GiMinorVersionProperties"] = None, + backup_schedule: Optional["_models.BackupScheduleType"] = None, + cpu_core_count: Optional[int] = None, + license_model: Optional[Union[str, "_models.LicenseModel"]] = None, + maintenance_configuration: Optional["_models.MaintenanceConfigurationType"] = None, + maintenance_window: Optional["_models.MaintenanceWindowType"] = None, ) -> None: ... @overload @@ -7302,28 +8881,74 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class GiMinorVersionProperties(_Model): - """The Oracle Grid Infrastructure (GI) minor version properties. - - :ivar version: A valid Oracle Grid Infrastructure (GI) software version. Required. - :vartype version: str - :ivar grid_image_ocid: Grid Infrastructure Image Id. - :vartype grid_image_ocid: str - """ - - version: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """A valid Oracle Grid Infrastructure (GI) software version. Required.""" - grid_image_ocid: Optional[str] = rest_field( - name="gridImageOcid", visibility=["read", "create", "update", "delete", "query"] - ) - """Grid Infrastructure Image Id.""" +class GroupToRolesMappingDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Group-to-roles mapping properties. + + :ivar administrator_group_id: The OCID of the IDP group which will be mapped to goldengate role + administratorGroup.It grants full access to the user, including the ability to alter general, + non-security related operational parameters and profiles of the server. + :vartype administrator_group_id: str + :ivar operator_group_id: The OCID of the IDP group which will be mapped to goldengate role + operatorGroup.It allows users to perform only operational actions, like starting and stopping + resources. Operators cannot alter the operational parameters or profiles of the MA server. + :vartype operator_group_id: str + :ivar security_group_id: The OCID of the IDP group which will be mapped to goldengate role + securityGroup.It grants administration of security related objects and invoke security related + service requests. This role has full privileges. + :vartype security_group_id: str + :ivar user_group_id: The OCID of the IDP group which will be mapped to goldengate role + userGroup. It allows information-only service requests, which do not alter or affect the + operation of either the MA. Examples of query and read-only information include performance + metric information and resource status and monitoring information. + :vartype user_group_id: str + :ivar identity_domain_id: The OCID of the Identity Domain when IAM credential store is used. + :vartype identity_domain_id: str + :ivar key: The base64 encoded content of the PEM file containing the private key. + :vartype key: str + """ + + administrator_group_id: Optional[str] = rest_field( + name="administratorGroupId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the IDP group which will be mapped to goldengate role administratorGroup.It grants + full access to the user, including the ability to alter general, non-security related + operational parameters and profiles of the server.""" + operator_group_id: Optional[str] = rest_field( + name="operatorGroupId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the IDP group which will be mapped to goldengate role operatorGroup.It allows users + to perform only operational actions, like starting and stopping resources. Operators cannot + alter the operational parameters or profiles of the MA server.""" + security_group_id: Optional[str] = rest_field( + name="securityGroupId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the IDP group which will be mapped to goldengate role securityGroup.It grants + administration of security related objects and invoke security related service requests. This + role has full privileges.""" + user_group_id: Optional[str] = rest_field( + name="userGroupId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the IDP group which will be mapped to goldengate role userGroup. It allows + information-only service requests, which do not alter or affect the operation of either the MA. + Examples of query and read-only information include performance metric information and resource + status and monitoring information.""" + identity_domain_id: Optional[str] = rest_field( + name="identityDomainId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Identity Domain when IAM credential store is used.""" + key: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The base64 encoded content of the PEM file containing the private key.""" @overload def __init__( self, *, - version: str, - grid_image_ocid: Optional[str] = None, + administrator_group_id: Optional[str] = None, + operator_group_id: Optional[str] = None, + security_group_id: Optional[str] = None, + user_group_id: Optional[str] = None, + identity_domain_id: Optional[str] = None, + key: Optional[str] = None, ) -> None: ... @overload @@ -7337,34 +8962,26 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class GiVersion(ProxyResource): - """GiVersion resource definition. +class KafkaBootstrapServer(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """The Kafka bootstrap server with host name, and an optional port. - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.oracledatabase.models.SystemData - :ivar properties: The resource-specific properties for this resource. - :vartype properties: ~azure.mgmt.oracledatabase.models.GiVersionProperties + :ivar host: The name or address of a host. Required. + :vartype host: str + :ivar port: The port of an endpoint usually specified for a connection. + :vartype port: int """ - properties: Optional["_models.GiVersionProperties"] = rest_field( - visibility=["read", "create", "update", "delete", "query"] - ) - """The resource-specific properties for this resource.""" + host: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The name or address of a host. Required.""" + port: Optional[int] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The port of an endpoint usually specified for a connection.""" @overload def __init__( self, *, - properties: Optional["_models.GiVersionProperties"] = None, + host: str, + port: Optional[int] = None, ) -> None: ... @overload @@ -7378,21 +8995,168 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class GiVersionProperties(_Model): - """GiVersion resource model. - - :ivar version: A valid Oracle Grid Infrastructure (GI) software version. Required. - :vartype version: str - """ +class KafkaConnectionDetails( + ConnectionBaseProperties, discriminator="KAFKA" +): # pylint: disable=docstring-keyword-should-match-keyword-only + """The metadata of a Kafka Connection. - version: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) - """A valid Oracle Grid Infrastructure (GI) software version. Required.""" + :ivar display_name: The connection display name. Required. + :vartype display_name: str + :ivar resource_anchor_id: The corresponding resource anchor Azure ID. Required. + :vartype resource_anchor_id: str + :ivar network_anchor_id: The corresponding network anchor Azure ID. Required. + :vartype network_anchor_id: str + :ivar compartment_id: The OCID of the compartment being referenced. + :vartype compartment_id: str + :ivar ocid: The OCID of the connection being referenced. + :vartype ocid: str + :ivar routing_method: Controls the network traffic direction to the target. Known values are: + "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", and "DEDICATED_ENDPOINT". + :vartype routing_method: str or ~azure.mgmt.oracledatabase.models.RoutingMethod + :ivar vault_id: The customer's vault OCID. + :vartype vault_id: str + :ivar key_id: The customer's master key OCID. + :vartype key_id: str + :ivar does_use_secret_ids: Indicates whether secret OCIDs are used for credential fields. + :vartype does_use_secret_ids: bool + :ivar provisioning_state: Connection provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar lifecycle_state: The connection lifecycle state. Known values are: "CREATING", + "UPDATING", "ACTIVE", "DELETING", "DELETED", and "FAILED". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.ConnectionLifecycleState + :ivar lifecycle_details: The description of lifecycle state in detail. + :vartype lifecycle_details: str + :ivar time_created: The date time the resource was created in OCI. + :vartype time_created: str + :ivar time_updated: The date time the resource was last updated in OCI. + :vartype time_updated: str + :ivar connection_type: Required. A Kafka Connection. + :vartype connection_type: str or ~azure.mgmt.oracledatabase.models.KAFKA + :ivar technology_type: The Kafka technology type. Required. Known values are: "APACHE_KAFKA", + "AZURE_EVENT_HUBS", "CONFLUENT_KAFKA", and "OCI_STREAMING". + :vartype technology_type: str or + ~azure.mgmt.oracledatabase.models.KafkaConnectionTechnologyType + :ivar bootstrap_servers: The list of KafkaBootstrapServer objects specified by host/port. + :vartype bootstrap_servers: list[~azure.mgmt.oracledatabase.models.KafkaBootstrapServer] + :ivar security_protocol: The Kafka security protocol used to connect to the broker. + :vartype security_protocol: str + :ivar username: The username used to authenticate to Kafka. + :vartype username: str + :ivar password_secret_id: The OCID of the Secret where the password is stored. + :vartype password_secret_id: str + :ivar trust_store_secret_id: The OCID of the Secret where the truststore is stored. + :vartype trust_store_secret_id: str + :ivar trust_store_password_secret_id: The OCID of the Secret where the truststore password is + stored. + :vartype trust_store_password_secret_id: str + :ivar key_store_secret_id: The OCID of the Secret where the keystore is stored. + :vartype key_store_secret_id: str + :ivar key_store_password_secret_id: The OCID of the Secret where the keystore password is + stored. + :vartype key_store_password_secret_id: str + :ivar ssl_key_password_secret_id: The OCID of the Secret where the SSL key password is stored. + :vartype ssl_key_password_secret_id: str + :ivar consumer_properties: The additional consumer properties in string format. + :vartype consumer_properties: str + :ivar producer_properties: The additional producer properties in string format. + :vartype producer_properties: str + :ivar stream_pool_id: The OCID of the stream pool being referenced. + :vartype stream_pool_id: str + :ivar cluster_id: The OCID of the Kafka cluster being referenced. + :vartype cluster_id: str + :ivar should_use_resource_principal: Indicates if resource principal should be used for + authentication. + :vartype should_use_resource_principal: bool + """ + + connection_type: Literal[ConnectionType.KAFKA] = rest_discriminator(name="connectionType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. A Kafka Connection.""" + technology_type: Union[str, "_models.KafkaConnectionTechnologyType"] = rest_field( + name="technologyType", visibility=["read", "create", "update", "delete", "query"] + ) + """The Kafka technology type. Required. Known values are: \"APACHE_KAFKA\", \"AZURE_EVENT_HUBS\", + \"CONFLUENT_KAFKA\", and \"OCI_STREAMING\".""" + bootstrap_servers: Optional[list["_models.KafkaBootstrapServer"]] = rest_field( + name="bootstrapServers", visibility=["read", "create", "update", "delete", "query"] + ) + """The list of KafkaBootstrapServer objects specified by host/port.""" + security_protocol: Optional[str] = rest_field( + name="securityProtocol", visibility=["read", "create", "update", "delete", "query"] + ) + """The Kafka security protocol used to connect to the broker.""" + username: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The username used to authenticate to Kafka.""" + password_secret_id: Optional[str] = rest_field( + name="passwordSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the password is stored.""" + trust_store_secret_id: Optional[str] = rest_field( + name="trustStoreSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the truststore is stored.""" + trust_store_password_secret_id: Optional[str] = rest_field( + name="trustStorePasswordSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the truststore password is stored.""" + key_store_secret_id: Optional[str] = rest_field( + name="keyStoreSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the keystore is stored.""" + key_store_password_secret_id: Optional[str] = rest_field( + name="keyStorePasswordSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the keystore password is stored.""" + ssl_key_password_secret_id: Optional[str] = rest_field( + name="sslKeyPasswordSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the SSL key password is stored.""" + consumer_properties: Optional[str] = rest_field( + name="consumerProperties", visibility=["read", "create", "update", "delete", "query"] + ) + """The additional consumer properties in string format.""" + producer_properties: Optional[str] = rest_field( + name="producerProperties", visibility=["read", "create", "update", "delete", "query"] + ) + """The additional producer properties in string format.""" + stream_pool_id: Optional[str] = rest_field( + name="streamPoolId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the stream pool being referenced.""" + cluster_id: Optional[str] = rest_field(name="clusterId", visibility=["read", "create", "update", "delete", "query"]) + """The OCID of the Kafka cluster being referenced.""" + should_use_resource_principal: Optional[bool] = rest_field( + name="shouldUseResourcePrincipal", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates if resource principal should be used for authentication.""" @overload - def __init__( + def __init__( # pylint: disable=too-many-locals self, *, - version: str, + display_name: str, + resource_anchor_id: str, + network_anchor_id: str, + technology_type: Union[str, "_models.KafkaConnectionTechnologyType"], + routing_method: Optional[Union[str, "_models.RoutingMethod"]] = None, + vault_id: Optional[str] = None, + key_id: Optional[str] = None, + does_use_secret_ids: Optional[bool] = None, + bootstrap_servers: Optional[list["_models.KafkaBootstrapServer"]] = None, + security_protocol: Optional[str] = None, + username: Optional[str] = None, + password_secret_id: Optional[str] = None, + trust_store_secret_id: Optional[str] = None, + trust_store_password_secret_id: Optional[str] = None, + key_store_secret_id: Optional[str] = None, + key_store_password_secret_id: Optional[str] = None, + ssl_key_password_secret_id: Optional[str] = None, + consumer_properties: Optional[str] = None, + producer_properties: Optional[str] = None, + stream_pool_id: Optional[str] = None, + cluster_id: Optional[str] = None, + should_use_resource_principal: Optional[bool] = None, ) -> None: ... @overload @@ -7404,9 +9168,10 @@ def __init__(self, mapping: Mapping[str, Any]) -> None: def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) + self.connection_type = ConnectionType.KAFKA # type: ignore -class LongTermBackUpScheduleDetails(_Model): +class LongTermBackUpScheduleDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Details for the long-term backup schedule. :ivar repeat_cadence: The frequency of the long-term backup schedule. Known values are: @@ -7463,7 +9228,66 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class MaintenanceWindow(_Model): +class MaintenanceConfigurationType(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Maintenance configuration type. + + :ivar bundle_release_upgrade_period_in_days: Bundle release period. + :vartype bundle_release_upgrade_period_in_days: int + :ivar interim_release_upgrade_period_in_days: Interim release upgrade period in days. + :vartype interim_release_upgrade_period_in_days: int + :ivar is_interim_release_auto_upgrade_enabled: Indicates whether interim release auto-upgrade + is enabled. + :vartype is_interim_release_auto_upgrade_enabled: bool + :ivar major_release_upgrade_period_in_days: Major release upgrade period in days. + :vartype major_release_upgrade_period_in_days: int + :ivar security_patch_upgrade_period_in_days: Security patch upgrade period in days. + :vartype security_patch_upgrade_period_in_days: int + """ + + bundle_release_upgrade_period_in_days: Optional[int] = rest_field( + name="bundleReleaseUpgradePeriodInDays", visibility=["read", "create", "update", "delete", "query"] + ) + """Bundle release period.""" + interim_release_upgrade_period_in_days: Optional[int] = rest_field( + name="interimReleaseUpgradePeriodInDays", visibility=["read", "create", "update", "delete", "query"] + ) + """Interim release upgrade period in days.""" + is_interim_release_auto_upgrade_enabled: Optional[bool] = rest_field( + name="isInterimReleaseAutoUpgradeEnabled", visibility=["read", "create", "update", "delete", "query"] + ) + """Indicates whether interim release auto-upgrade is enabled.""" + major_release_upgrade_period_in_days: Optional[int] = rest_field( + name="majorReleaseUpgradePeriodInDays", visibility=["read", "create", "update", "delete", "query"] + ) + """Major release upgrade period in days.""" + security_patch_upgrade_period_in_days: Optional[int] = rest_field( + name="securityPatchUpgradePeriodInDays", visibility=["read", "create", "update", "delete", "query"] + ) + """Security patch upgrade period in days.""" + + @overload + def __init__( + self, + *, + bundle_release_upgrade_period_in_days: Optional[int] = None, + interim_release_upgrade_period_in_days: Optional[int] = None, + is_interim_release_auto_upgrade_enabled: Optional[bool] = None, + major_release_upgrade_period_in_days: Optional[int] = None, + security_patch_upgrade_period_in_days: Optional[int] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class MaintenanceWindow(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """MaintenanceWindow resource properties. :ivar preference: The maintenance window scheduling preference. Known values are: @@ -7586,7 +9410,145 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class Month(_Model): +class MaintenanceWindowType(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Maintenance window. + + :ivar day: The day of week. Known values are: "Monday", "Tuesday", "Wednesday", "Thursday", + "Friday", "Saturday", and "Sunday". + :vartype day: str or ~azure.mgmt.oracledatabase.models.DayOfWeekName + :ivar start_hour: Start time in UTC. + :vartype start_hour: int + """ + + day: Optional[Union[str, "_models.DayOfWeekName"]] = rest_field( + visibility=["read", "create", "update", "delete", "query"] + ) + """The day of week. Known values are: \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", + \"Friday\", \"Saturday\", and \"Sunday\".""" + start_hour: Optional[int] = rest_field(name="startHour", visibility=["read", "create", "update", "delete", "query"]) + """Start time in UTC.""" + + @overload + def __init__( + self, + *, + day: Optional[Union[str, "_models.DayOfWeekName"]] = None, + start_hour: Optional[int] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class MicrosoftFabricConnectionDetails( + ConnectionBaseProperties, discriminator="MICROSOFT_FABRIC" +): # pylint: disable=docstring-keyword-should-match-keyword-only + """The metadata of a Microsoft Fabric Connection. + + :ivar display_name: The connection display name. Required. + :vartype display_name: str + :ivar resource_anchor_id: The corresponding resource anchor Azure ID. Required. + :vartype resource_anchor_id: str + :ivar network_anchor_id: The corresponding network anchor Azure ID. Required. + :vartype network_anchor_id: str + :ivar compartment_id: The OCID of the compartment being referenced. + :vartype compartment_id: str + :ivar ocid: The OCID of the connection being referenced. + :vartype ocid: str + :ivar routing_method: Controls the network traffic direction to the target. Known values are: + "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", and "DEDICATED_ENDPOINT". + :vartype routing_method: str or ~azure.mgmt.oracledatabase.models.RoutingMethod + :ivar vault_id: The customer's vault OCID. + :vartype vault_id: str + :ivar key_id: The customer's master key OCID. + :vartype key_id: str + :ivar does_use_secret_ids: Indicates whether secret OCIDs are used for credential fields. + :vartype does_use_secret_ids: bool + :ivar provisioning_state: Connection provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar lifecycle_state: The connection lifecycle state. Known values are: "CREATING", + "UPDATING", "ACTIVE", "DELETING", "DELETED", and "FAILED". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.ConnectionLifecycleState + :ivar lifecycle_details: The description of lifecycle state in detail. + :vartype lifecycle_details: str + :ivar time_created: The date time the resource was created in OCI. + :vartype time_created: str + :ivar time_updated: The date time the resource was last updated in OCI. + :vartype time_updated: str + :ivar connection_type: Required. A Microsoft Fabric Connection. + :vartype connection_type: str or ~azure.mgmt.oracledatabase.models.MICROSOFT_FABRIC + :ivar technology_type: The Microsoft Fabric technology type. Required. Known values are: + "MICROSOFT_FABRIC_LAKEHOUSE" and "MICROSOFT_FABRIC_MIRROR". + :vartype technology_type: str or + ~azure.mgmt.oracledatabase.models.MicrosoftFabricConnectionTechnologyType + :ivar tenant_id: Azure tenant ID of the application. Required. + :vartype tenant_id: str + :ivar client_id: Azure client ID of the application. Required. + :vartype client_id: str + :ivar client_secret_secret_id: The OCID of the Secret where the client secret is stored. + :vartype client_secret_secret_id: str + :ivar endpoint: The Microsoft Fabric service endpoint. + :vartype endpoint: str + """ + + connection_type: Literal[ConnectionType.MICROSOFT_FABRIC] = rest_discriminator(name="connectionType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. A Microsoft Fabric Connection.""" + technology_type: Union[str, "_models.MicrosoftFabricConnectionTechnologyType"] = rest_field( + name="technologyType", visibility=["read", "create", "update", "delete", "query"] + ) + """The Microsoft Fabric technology type. Required. Known values are: + \"MICROSOFT_FABRIC_LAKEHOUSE\" and \"MICROSOFT_FABRIC_MIRROR\".""" + tenant_id: str = rest_field(name="tenantId", visibility=["read", "create", "update", "delete", "query"]) + """Azure tenant ID of the application. Required.""" + client_id: str = rest_field(name="clientId", visibility=["read", "create", "update", "delete", "query"]) + """Azure client ID of the application. Required.""" + client_secret_secret_id: Optional[str] = rest_field( + name="clientSecretSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the client secret is stored.""" + endpoint: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The Microsoft Fabric service endpoint.""" + + @overload + def __init__( + self, + *, + display_name: str, + resource_anchor_id: str, + network_anchor_id: str, + technology_type: Union[str, "_models.MicrosoftFabricConnectionTechnologyType"], + tenant_id: str, + client_id: str, + routing_method: Optional[Union[str, "_models.RoutingMethod"]] = None, + vault_id: Optional[str] = None, + key_id: Optional[str] = None, + does_use_secret_ids: Optional[bool] = None, + client_secret_secret_id: Optional[str] = None, + endpoint: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.connection_type = ConnectionType.MICROSOFT_FABRIC # type: ignore + + +class Month(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Month resource properties. :ivar name: Name of the month of the year. Required. Known values are: "January", "February", @@ -7618,7 +9580,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class NetworkAnchor(TrackedResource): +class NetworkAnchor(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only """Network Anchor resource model. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -7670,7 +9632,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class NetworkAnchorProperties(_Model): +class NetworkAnchorProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Network Anchor properties. :ivar resource_anchor_id: Corresponding resource anchor Azure ID. Required. @@ -7719,6 +9681,8 @@ class NetworkAnchorProperties(_Model): :ivar dns_forwarding_endpoint_nsg_rules_url: Deep link to OCI console DNS Forwarding endpoint NSG rules. :vartype dns_forwarding_endpoint_nsg_rules_url: str + :ivar proximity_placement_group: Proximity placement group settings. + :vartype proximity_placement_group: ~azure.mgmt.oracledatabase.models.ProximityPlacementGroup """ resource_anchor_id: str = rest_field(name="resourceAnchorId", visibility=["read", "create"]) @@ -7782,6 +9746,10 @@ class NetworkAnchorProperties(_Model): name="dnsForwardingEndpointNsgRulesUrl", visibility=["read"] ) """Deep link to OCI console DNS Forwarding endpoint NSG rules.""" + proximity_placement_group: Optional["_models.ProximityPlacementGroup"] = rest_field( + name="proximityPlacementGroup", visibility=["read", "create"] + ) + """Proximity placement group settings.""" @overload def __init__( @@ -7796,6 +9764,7 @@ def __init__( is_oracle_dns_forwarding_endpoint_enabled: Optional[bool] = None, dns_forwarding_rules: Optional[list["_models.DnsForwardingRule"]] = None, dns_listening_endpoint_allowed_cidrs: Optional[str] = None, + proximity_placement_group: Optional["_models.ProximityPlacementGroup"] = None, ) -> None: ... @overload @@ -7809,7 +9778,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class NetworkAnchorUpdate(_Model): +class NetworkAnchorUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The type used for update operations of the NetworkAnchor. :ivar zones: The availability zones. @@ -7849,7 +9818,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class NetworkAnchorUpdateProperties(_Model): +class NetworkAnchorUpdateProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The updatable properties of the NetworkAnchor. :ivar oci_backup_cidr_block: OCI backup subnet cidr block. @@ -7903,7 +9872,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class NsgCidr(_Model): +class NsgCidr(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """A rule for allowing inbound (INGRESS) IP packets. :ivar source: Conceptually, this is the range of IP addresses that a packet coming into the @@ -7941,7 +9910,88 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class Operation(_Model): +class OggDeploymentDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """OGG deployment details. + + :ivar admin_password: The password associated with the GoldenGate deployment console username. + The password must be 8 to 30 characters long and must contain at least 1 uppercase, 1 + lowercase, 1 numeric, and 1 special character. Special characters such as '$', '^', or '?' are + not allowed. + :vartype admin_password: str + :ivar admin_username: The GoldenGate deployment console username. + :vartype admin_username: str + :ivar certificate: The base64 encoded content of the PEM file containing the SSL certificate. + :vartype certificate: str + :ivar credential_store: The type of credential store for OGG. Known values are: "GoldenGate" + and "IAM". + :vartype credential_store: str or ~azure.mgmt.oracledatabase.models.CredentialType + :ivar deployment_name: The name given to the GoldenGate service deployment. Required. + :vartype deployment_name: str + :ivar group_to_roles_mapping: Defines the IDP Groups to GoldenGate roles mapping. + :vartype group_to_roles_mapping: ~azure.mgmt.oracledatabase.models.GroupToRolesMappingDetails + :ivar ogg_version: OGG version. + :vartype ogg_version: str + :ivar password_secret_id: The OCID of the Secret where the deployment password is stored. + :vartype password_secret_id: str + """ + + admin_password: Optional[str] = rest_field( + name="adminPassword", visibility=["read", "create", "update", "delete", "query"] + ) + """The password associated with the GoldenGate deployment console username. The password must be 8 + to 30 characters long and must contain at least 1 uppercase, 1 lowercase, 1 numeric, and 1 + special character. Special characters such as '$', '^', or '?' are not allowed.""" + admin_username: Optional[str] = rest_field( + name="adminUsername", visibility=["read", "create", "update", "delete", "query"] + ) + """The GoldenGate deployment console username.""" + certificate: Optional[str] = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The base64 encoded content of the PEM file containing the SSL certificate.""" + credential_store: Optional[Union[str, "_models.CredentialType"]] = rest_field( + name="credentialStore", visibility=["read", "create", "update", "delete", "query"] + ) + """The type of credential store for OGG. Known values are: \"GoldenGate\" and \"IAM\".""" + deployment_name: str = rest_field(name="deploymentName", visibility=["read", "create", "update", "delete", "query"]) + """The name given to the GoldenGate service deployment. Required.""" + group_to_roles_mapping: Optional["_models.GroupToRolesMappingDetails"] = rest_field( + name="groupToRolesMapping", visibility=["read", "create", "update", "delete", "query"] + ) + """Defines the IDP Groups to GoldenGate roles mapping.""" + ogg_version: Optional[str] = rest_field( + name="oggVersion", visibility=["read", "create", "update", "delete", "query"] + ) + """OGG version.""" + password_secret_id: Optional[str] = rest_field( + name="passwordSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the deployment password is stored.""" + + @overload + def __init__( + self, + *, + deployment_name: str, + admin_password: Optional[str] = None, + admin_username: Optional[str] = None, + certificate: Optional[str] = None, + credential_store: Optional[Union[str, "_models.CredentialType"]] = None, + group_to_roles_mapping: Optional["_models.GroupToRolesMappingDetails"] = None, + ogg_version: Optional[str] = None, + password_secret_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class Operation(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """REST API Operation. :ivar name: The name of the operation, as per Resource-Based Access Control (RBAC). Examples: @@ -7999,7 +10049,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: class OperationDisplay(_Model): - """Localized display information for and operation. + """Localized display information for an operation. :ivar provider: The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute". @@ -8029,7 +10079,147 @@ class OperationDisplay(_Model): views.""" -class OracleSubscription(ProxyResource): +class OracleConnectionDetails( + ConnectionBaseProperties, discriminator="ORACLE" +): # pylint: disable=docstring-keyword-should-match-keyword-only + """The metadata of an Oracle Database Connection. + + :ivar display_name: The connection display name. Required. + :vartype display_name: str + :ivar resource_anchor_id: The corresponding resource anchor Azure ID. Required. + :vartype resource_anchor_id: str + :ivar network_anchor_id: The corresponding network anchor Azure ID. Required. + :vartype network_anchor_id: str + :ivar compartment_id: The OCID of the compartment being referenced. + :vartype compartment_id: str + :ivar ocid: The OCID of the connection being referenced. + :vartype ocid: str + :ivar routing_method: Controls the network traffic direction to the target. Known values are: + "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", and "DEDICATED_ENDPOINT". + :vartype routing_method: str or ~azure.mgmt.oracledatabase.models.RoutingMethod + :ivar vault_id: The customer's vault OCID. + :vartype vault_id: str + :ivar key_id: The customer's master key OCID. + :vartype key_id: str + :ivar does_use_secret_ids: Indicates whether secret OCIDs are used for credential fields. + :vartype does_use_secret_ids: bool + :ivar provisioning_state: Connection provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioning_state: str or + ~azure.mgmt.oracledatabase.models.AzureResourceProvisioningState + :ivar lifecycle_state: The connection lifecycle state. Known values are: "CREATING", + "UPDATING", "ACTIVE", "DELETING", "DELETED", and "FAILED". + :vartype lifecycle_state: str or ~azure.mgmt.oracledatabase.models.ConnectionLifecycleState + :ivar lifecycle_details: The description of lifecycle state in detail. + :vartype lifecycle_details: str + :ivar time_created: The date time the resource was created in OCI. + :vartype time_created: str + :ivar time_updated: The date time the resource was last updated in OCI. + :vartype time_updated: str + :ivar connection_type: Required. An Oracle Database Connection. + :vartype connection_type: str or ~azure.mgmt.oracledatabase.models.ORACLE + :ivar technology_type: The Oracle technology type. Required. Known values are: + "AMAZON_RDS_ORACLE", "OCI_AUTONOMOUS_DATABASE", "ORACLE_DATABASE", "ORACLE_EXADATA", + "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", + "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", + "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", and "ORACLE_AUTONOMOUS_DATABASE_AT_AWS". + :vartype technology_type: str or + ~azure.mgmt.oracledatabase.models.OracleConnectionTechnologyType + :ivar session_mode: The mode of the database connection session to be established by the data + client. Known values are: "DIRECT" and "REDIRECT". + :vartype session_mode: str or ~azure.mgmt.oracledatabase.models.SessionMode + :ivar username: The username that is used to connect the associated system of the given + technology. Required. + :vartype username: str + :ivar connection_string: The connection string used to connect the associated database. + :vartype connection_string: str + :ivar authentication_mode: The authentication mode used to connect the associated database. + :vartype authentication_mode: str + :ivar password_secret_id: The OCID of the Secret where the password is stored. + :vartype password_secret_id: str + :ivar wallet_secret_id: The OCID of the Secret where the wallet is stored. + :vartype wallet_secret_id: str + :ivar database_id: The OCID of the associated database. + :vartype database_id: str + :ivar private_ip: The private IP of the associated database endpoint. + :vartype private_ip: str + """ + + connection_type: Literal[ConnectionType.ORACLE] = rest_discriminator(name="connectionType", visibility=["read", "create", "update", "delete", "query"]) # type: ignore + """Required. An Oracle Database Connection.""" + technology_type: Union[str, "_models.OracleConnectionTechnologyType"] = rest_field( + name="technologyType", visibility=["read", "create", "update", "delete", "query"] + ) + """The Oracle technology type. Required. Known values are: \"AMAZON_RDS_ORACLE\", + \"OCI_AUTONOMOUS_DATABASE\", \"ORACLE_DATABASE\", \"ORACLE_EXADATA\", + \"ORACLE_EXADATA_DATABASE_AT_AZURE\", \"ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD\", + \"ORACLE_EXADATA_DATABASE_AT_AWS\", \"ORACLE_AUTONOMOUS_DATABASE_AT_AZURE\", + \"ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD\", and \"ORACLE_AUTONOMOUS_DATABASE_AT_AWS\".""" + session_mode: Optional[Union[str, "_models.SessionMode"]] = rest_field( + name="sessionMode", visibility=["read", "create", "update", "delete", "query"] + ) + """The mode of the database connection session to be established by the data client. Known values + are: \"DIRECT\" and \"REDIRECT\".""" + username: str = rest_field(visibility=["read", "create", "update", "delete", "query"]) + """The username that is used to connect the associated system of the given technology. Required.""" + connection_string: Optional[str] = rest_field( + name="connectionString", visibility=["read", "create", "update", "delete", "query"] + ) + """The connection string used to connect the associated database.""" + authentication_mode: Optional[str] = rest_field( + name="authenticationMode", visibility=["read", "create", "update", "delete", "query"] + ) + """The authentication mode used to connect the associated database.""" + password_secret_id: Optional[str] = rest_field( + name="passwordSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the password is stored.""" + wallet_secret_id: Optional[str] = rest_field( + name="walletSecretId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the Secret where the wallet is stored.""" + database_id: Optional[str] = rest_field( + name="databaseId", visibility=["read", "create", "update", "delete", "query"] + ) + """The OCID of the associated database.""" + private_ip: Optional[str] = rest_field(name="privateIp", visibility=["read", "create", "update", "delete", "query"]) + """The private IP of the associated database endpoint.""" + + @overload + def __init__( + self, + *, + display_name: str, + resource_anchor_id: str, + network_anchor_id: str, + technology_type: Union[str, "_models.OracleConnectionTechnologyType"], + username: str, + routing_method: Optional[Union[str, "_models.RoutingMethod"]] = None, + vault_id: Optional[str] = None, + key_id: Optional[str] = None, + does_use_secret_ids: Optional[bool] = None, + session_mode: Optional[Union[str, "_models.SessionMode"]] = None, + connection_string: Optional[str] = None, + authentication_mode: Optional[str] = None, + password_secret_id: Optional[str] = None, + wallet_secret_id: Optional[str] = None, + database_id: Optional[str] = None, + private_ip: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + self.connection_type = ConnectionType.ORACLE # type: ignore + + +class OracleSubscription(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only """OracleSubscription resource definition. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -8075,7 +10265,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class OracleSubscriptionProperties(_Model): +class OracleSubscriptionProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Oracle Subscription resource model. :ivar provisioning_state: OracleSubscriptionProvisioningState provisioning state. Known values @@ -8159,7 +10349,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class OracleSubscriptionUpdate(_Model): +class OracleSubscriptionUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The type used for update operations of the OracleSubscription. :ivar plan: Details of the resource plan. @@ -8194,7 +10384,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class OracleSubscriptionUpdateProperties(_Model): +class OracleSubscriptionUpdateProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The updatable properties of the OracleSubscription. :ivar product_code: Product code for the term unit. @@ -8227,7 +10417,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class PeerDbDetails(_Model): +class PeerDbDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """PeerDb Details. :ivar peer_db_id: The Azure resource ID of the Disaster Recovery peer database, which is @@ -8273,7 +10463,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class Plan(_Model): +class Plan(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Plan for the resource. :ivar name: A user defined name of the 3rd Party Artifact that is being procured. Required. @@ -8328,7 +10518,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class PlanUpdate(_Model): +class PlanUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """ResourcePlanTypeUpdate model definition. :ivar name: A user defined name of the 3rd Party Artifact that is being procured. @@ -8382,7 +10572,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class PortRange(_Model): +class PortRange(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Port Range to specify particular destination ports for TCP rules. :ivar min: The minimum port number, which must not be greater than the maximum port number. @@ -8418,7 +10608,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class PrivateIpAddressesFilter(_Model): +class PrivateIpAddressesFilter(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Private Ip Addresses filter. :ivar subnet_id: Subnet OCID. Required. @@ -8451,7 +10641,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class PrivateIpAddressProperties(_Model): +class PrivateIpAddressProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """PrivateIpAddress resource properties. :ivar display_name: PrivateIpAddresses displayName. Required. @@ -8499,7 +10689,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ProfileType(_Model): +class ProfileType(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The connection string profile to allow clients to group, filter and select connection string values based on structured metadata. @@ -8593,7 +10783,52 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class RemoveVirtualMachineFromExadbVmClusterDetails(_Model): # pylint: disable=name-too-long +class ProximityPlacementGroup(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only + """Proximity placement group properties. + + :ivar proximity_placement_group_id: Proximity placement group ID. Required. + :vartype proximity_placement_group_id: str + :ivar proximity_anchor_id: Proximity Anchor ID. + :vartype proximity_anchor_id: str + :ivar entity_type_intended_to_use: Entity type intended to use the proximity placement group. + Required. Known values are: "CloudExadataInfrastructure" and "OtherProducts". + :vartype entity_type_intended_to_use: str or + ~azure.mgmt.oracledatabase.models.ProximityPlacementGroupEntityType + """ + + proximity_placement_group_id: str = rest_field(name="proximityPlacementGroupId", visibility=["read", "create"]) + """Proximity placement group ID. Required.""" + proximity_anchor_id: Optional[str] = rest_field(name="proximityAnchorId", visibility=["read", "create"]) + """Proximity Anchor ID.""" + entity_type_intended_to_use: Union[str, "_models.ProximityPlacementGroupEntityType"] = rest_field( + name="entityTypeIntendedToUse", visibility=["read", "create"] + ) + """Entity type intended to use the proximity placement group. Required. Known values are: + \"CloudExadataInfrastructure\" and \"OtherProducts\".""" + + @overload + def __init__( + self, + *, + proximity_placement_group_id: str, + entity_type_intended_to_use: Union[str, "_models.ProximityPlacementGroupEntityType"], + proximity_anchor_id: Optional[str] = None, + ) -> None: ... + + @overload + def __init__(self, mapping: Mapping[str, Any]) -> None: + """ + :param mapping: raw JSON to initialize the model. + :type mapping: Mapping[str, Any] + """ + + def __init__(self, *args: Any, **kwargs: Any) -> None: + super().__init__(*args, **kwargs) + + +class RemoveVirtualMachineFromExadbVmClusterDetails( + _Model +): # pylint: disable=name-too-long,docstring-keyword-should-match-keyword-only """Details of removing Virtual Machines from the Exadata VM cluster on Exascale Infrastructure. Applies to Exadata Database Service on Exascale Infrastructure only. @@ -8626,7 +10861,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ResourceAnchor(TrackedResource): +class ResourceAnchor(TrackedResource): # pylint: disable=docstring-keyword-should-match-keyword-only """Resource Anchor model. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -8696,7 +10931,7 @@ class ResourceAnchorProperties(_Model): resource anchor. This compartmentId is different from where resource Anchor lives.""" -class ResourceAnchorUpdate(_Model): +class ResourceAnchorUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The type used for update operations of the ResourceAnchor. :ivar tags: Resource tags. @@ -8724,7 +10959,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class RestoreAutonomousDatabaseDetails(_Model): +class RestoreAutonomousDatabaseDetails(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Details to restore an Oracle Autonomous Database. :ivar timestamp: The time to restore the database to. Required. @@ -8809,7 +11044,7 @@ class SaasSubscriptionDetails(_Model): """FreeTrial flag.""" -class ScheduledOperationsType(_Model): +class ScheduledOperationsType(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The list of scheduled operations. :ivar day_of_week: Day of week. Required. @@ -8853,7 +11088,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class ScheduledOperationsTypeUpdate(_Model): +class ScheduledOperationsTypeUpdate(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """The list of scheduled operations. :ivar day_of_week: Day of week. @@ -8897,7 +11132,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class SystemData(_Model): +class SystemData(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """Metadata pertaining to creation and last modification of the resource. :ivar created_by: The identity that created the resource. @@ -8964,7 +11199,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class SystemVersion(ProxyResource): +class SystemVersion(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only """SystemVersion resource Definition. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -9005,7 +11240,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class SystemVersionProperties(_Model): +class SystemVersionProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """System Version Resource model. :ivar system_version: A valid Oracle System Version. Required. @@ -9033,7 +11268,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class VirtualNetworkAddress(ProxyResource): +class VirtualNetworkAddress(ProxyResource): # pylint: disable=docstring-keyword-should-match-keyword-only """Virtual IP resource belonging to a vm cluster resource. :ivar id: Fully qualified resource ID for the resource. Ex - @@ -9074,7 +11309,7 @@ def __init__(self, *args: Any, **kwargs: Any) -> None: super().__init__(*args, **kwargs) -class VirtualNetworkAddressProperties(_Model): +class VirtualNetworkAddressProperties(_Model): # pylint: disable=docstring-keyword-should-match-keyword-only """virtualNetworkAddress resource properties. :ivar ip_address: Virtual network Address address. diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_patch.py index 8bcb627aa475..b6400f50d7ce 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_patch.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/models/_patch.py @@ -7,6 +7,7 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ + from typing import List __all__: List[str] = [] # Add all objects you want publicly available to users at this package level diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/__init__.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/__init__.py index 015a54d0ae3d..a180a1efa861 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/__init__.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/__init__.py @@ -38,6 +38,10 @@ from ._operations import ResourceAnchorsOperations # type: ignore from ._operations import DbSystemsOperations # type: ignore from ._operations import DbVersionsOperations # type: ignore +from ._operations import DatabaseEditionsOperations # type: ignore +from ._operations import DatabaseSystemShapeResourcesOperations # type: ignore +from ._operations import GoldenGateConnectionsOperations # type: ignore +from ._operations import GoldenGateDeploymentsOperations # type: ignore from ._patch import __all__ as _patch_all from ._patch import * @@ -70,6 +74,10 @@ "ResourceAnchorsOperations", "DbSystemsOperations", "DbVersionsOperations", + "DatabaseEditionsOperations", + "DatabaseSystemShapeResourcesOperations", + "GoldenGateConnectionsOperations", + "GoldenGateDeploymentsOperations", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore _patch_sdk() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/_operations.py index e2759d2d24e3..8743b544f242 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/_operations.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/_operations.py @@ -32,7 +32,7 @@ from azure.mgmt.core.exceptions import ARMErrorFormat from azure.mgmt.core.polling.arm_polling import ARMPolling -from .. import models as _models +from .. import models as _models, types as _types from .._configuration import OracleDatabaseMgmtClientConfiguration from .._utils.model_base import SdkJSONEncoder, _deserialize, _failsafe_deserialize from .._utils.serialization import Deserializer, Serializer @@ -40,7 +40,6 @@ T = TypeVar("T") ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] -JSON = MutableMapping[str, Any] List = list _SERIALIZER = Serializer() @@ -51,7 +50,7 @@ def build_operations_list_request(**kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -72,7 +71,7 @@ def build_cloud_exadata_infrastructures_list_by_subscription_request( # pylint: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -99,7 +98,7 @@ def build_cloud_exadata_infrastructures_create_or_update_request( # pylint: dis _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -131,7 +130,7 @@ def build_cloud_exadata_infrastructures_get_request( # pylint: disable=name-too _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -162,7 +161,7 @@ def build_cloud_exadata_infrastructures_update_request( # pylint: disable=name- _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -193,7 +192,7 @@ def build_cloud_exadata_infrastructures_delete_request( # pylint: disable=name- ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudExadataInfrastructures/{cloudexadatainfrastructurename}" path_format_arguments = { @@ -218,7 +217,7 @@ def build_cloud_exadata_infrastructures_list_by_resource_group_request( # pylin _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -245,7 +244,7 @@ def build_cloud_exadata_infrastructures_add_storage_capacity_request( # pylint: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -276,7 +275,7 @@ def build_cloud_exadata_infrastructures_configure_exascale_request( # pylint: d _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -312,7 +311,7 @@ def build_db_servers_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -343,7 +342,7 @@ def build_db_servers_list_by_parent_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -373,7 +372,7 @@ def build_cloud_vm_clusters_list_by_subscription_request( # pylint: disable=nam _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -400,7 +399,7 @@ def build_cloud_vm_clusters_create_or_update_request( # pylint: disable=name-to _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -430,7 +429,7 @@ def build_cloud_vm_clusters_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -459,7 +458,7 @@ def build_cloud_vm_clusters_update_request( _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -488,7 +487,7 @@ def build_cloud_vm_clusters_delete_request( ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}" path_format_arguments = { @@ -511,7 +510,7 @@ def build_cloud_vm_clusters_list_by_resource_group_request( # pylint: disable=n _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -541,7 +540,7 @@ def build_cloud_vm_clusters_add_vms_request( _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -572,7 +571,7 @@ def build_cloud_vm_clusters_remove_vms_request( # pylint: disable=name-too-long _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -603,7 +602,7 @@ def build_cloud_vm_clusters_list_private_ip_addresses_request( # pylint: disabl _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -638,7 +637,7 @@ def build_virtual_network_addresses_create_or_update_request( # pylint: disable _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -673,7 +672,7 @@ def build_virtual_network_addresses_get_request( # pylint: disable=name-too-lon _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -705,7 +704,7 @@ def build_virtual_network_addresses_delete_request( # pylint: disable=name-too- ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/virtualNetworkAddresses/{virtualnetworkaddressname}" path_format_arguments = { @@ -729,7 +728,7 @@ def build_virtual_network_addresses_list_by_parent_request( # pylint: disable=n _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -757,7 +756,7 @@ def build_system_versions_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -785,7 +784,7 @@ def build_system_versions_list_by_location_request( # pylint: disable=name-too- _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -812,7 +811,7 @@ def build_oracle_subscriptions_list_by_subscription_request( # pylint: disable= _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -839,7 +838,7 @@ def build_oracle_subscriptions_create_or_update_request( # pylint: disable=name _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -865,7 +864,7 @@ def build_oracle_subscriptions_get_request(subscription_id: str, **kwargs: Any) _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -892,7 +891,7 @@ def build_oracle_subscriptions_update_request( # pylint: disable=name-too-long _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -919,7 +918,7 @@ def build_oracle_subscriptions_delete_request( # pylint: disable=name-too-long ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default" path_format_arguments = { @@ -940,7 +939,7 @@ def build_oracle_subscriptions_list_cloud_account_details_request( # pylint: di _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -968,7 +967,7 @@ def build_oracle_subscriptions_list_saas_subscription_details_request( # pylint _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -994,7 +993,7 @@ def build_oracle_subscriptions_list_activation_links_request( # pylint: disable _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1021,7 +1020,7 @@ def build_oracle_subscriptions_add_azure_subscriptions_request( # pylint: disab _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default/addAzureSubscriptions" path_format_arguments = { @@ -1046,7 +1045,7 @@ def build_db_nodes_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1075,7 +1074,7 @@ def build_db_nodes_list_by_parent_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1104,7 +1103,7 @@ def build_db_nodes_action_request( _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1135,7 +1134,7 @@ def build_gi_versions_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1169,7 +1168,7 @@ def build_gi_versions_list_by_location_request( # pylint: disable=name-too-long _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1203,12 +1202,15 @@ def build_gi_minor_versions_list_by_parent_request( # pylint: disable=name-too- *, shape_family: Optional[Union[str, _models.ShapeFamily]] = None, zone: Optional[str] = None, + shape: Optional[str] = None, + is_gi_version_for_provisioning: Optional[bool] = None, + sort_order: Optional[Union[str, _models.GiMinorVersionSortOrder]] = None, **kwargs: Any ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1227,6 +1229,14 @@ def build_gi_minor_versions_list_by_parent_request( # pylint: disable=name-too- _params["shapeFamily"] = _SERIALIZER.query("shape_family", shape_family, "str") if zone is not None: _params["zone"] = _SERIALIZER.query("zone", zone, "str") + if shape is not None: + _params["shape"] = _SERIALIZER.query("shape", shape, "str") + if is_gi_version_for_provisioning is not None: + _params["isGiVersionForProvisioning"] = _SERIALIZER.query( + "is_gi_version_for_provisioning", is_gi_version_for_provisioning, "bool" + ) + if sort_order is not None: + _params["sortOrder"] = _SERIALIZER.query("sort_order", sort_order, "str") # Construct headers _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") @@ -1240,7 +1250,7 @@ def build_gi_minor_versions_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1269,7 +1279,7 @@ def build_db_system_shapes_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1302,7 +1312,7 @@ def build_db_system_shapes_list_by_location_request( # pylint: disable=name-too _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1333,7 +1343,7 @@ def build_dns_private_views_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1361,7 +1371,7 @@ def build_dns_private_views_list_by_location_request( # pylint: disable=name-to _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1388,7 +1398,7 @@ def build_dns_private_zones_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1416,7 +1426,7 @@ def build_dns_private_zones_list_by_location_request( # pylint: disable=name-to _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1443,7 +1453,7 @@ def build_flex_components_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1471,7 +1481,7 @@ def build_flex_components_list_by_parent_request( # pylint: disable=name-too-lo _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1500,7 +1510,7 @@ def build_autonomous_databases_list_by_subscription_request( # pylint: disable= _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1527,7 +1537,7 @@ def build_autonomous_databases_create_or_update_request( # pylint: disable=name _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1557,7 +1567,7 @@ def build_autonomous_databases_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1584,7 +1594,7 @@ def build_autonomous_databases_delete_request( # pylint: disable=name-too-long ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}" path_format_arguments = { @@ -1608,7 +1618,7 @@ def build_autonomous_databases_update_request( # pylint: disable=name-too-long _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1638,7 +1648,7 @@ def build_autonomous_databases_list_by_resource_group_request( # pylint: disabl _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1666,7 +1676,7 @@ def build_autonomous_databases_switchover_request( # pylint: disable=name-too-l _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1697,7 +1707,7 @@ def build_autonomous_databases_failover_request( # pylint: disable=name-too-lon _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1728,7 +1738,7 @@ def build_autonomous_databases_generate_wallet_request( # pylint: disable=name- _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1759,7 +1769,7 @@ def build_autonomous_databases_restore_request( # pylint: disable=name-too-long _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1789,7 +1799,7 @@ def build_autonomous_databases_shrink_request( # pylint: disable=name-too-long _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1818,7 +1828,7 @@ def build_autonomous_databases_change_disaster_recovery_configuration_request( _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1849,7 +1859,7 @@ def build_autonomous_databases_action_request( # pylint: disable=name-too-long _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1880,7 +1890,7 @@ def build_autonomous_database_backups_create_or_update_request( # pylint: disab _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1911,7 +1921,7 @@ def build_autonomous_database_backups_get_request( # pylint: disable=name-too-l _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1939,7 +1949,7 @@ def build_autonomous_database_backups_delete_request( # pylint: disable=name-to ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/autonomousDatabaseBackups/{adbbackupid}" path_format_arguments = { @@ -1964,7 +1974,7 @@ def build_autonomous_database_backups_update_request( # pylint: disable=name-to _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -1995,7 +2005,7 @@ def build_autonomous_database_backups_list_by_parent_request( # pylint: disable _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2023,7 +2033,7 @@ def build_autonomous_database_character_sets_get_request( # pylint: disable=nam _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2051,7 +2061,7 @@ def build_autonomous_database_character_sets_list_by_location_request( # pylint _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2080,7 +2090,7 @@ def build_autonomous_database_national_character_sets_get_request( # pylint: di _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2108,7 +2118,7 @@ def build_autonomous_database_national_character_sets_list_by_location_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2135,7 +2145,7 @@ def build_autonomous_database_versions_get_request( # pylint: disable=name-too- _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2163,7 +2173,7 @@ def build_autonomous_database_versions_list_by_location_request( # pylint: disa _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2190,7 +2200,7 @@ def build_exadb_vm_clusters_list_by_subscription_request( # pylint: disable=nam _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2217,7 +2227,7 @@ def build_exadb_vm_clusters_create_or_update_request( # pylint: disable=name-to _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2247,7 +2257,7 @@ def build_exadb_vm_clusters_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2276,7 +2286,7 @@ def build_exadb_vm_clusters_update_request( _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2305,7 +2315,7 @@ def build_exadb_vm_clusters_delete_request( ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters/{exadbVmClusterName}" path_format_arguments = { @@ -2328,7 +2338,7 @@ def build_exadb_vm_clusters_list_by_resource_group_request( # pylint: disable=n _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2358,7 +2368,7 @@ def build_exadb_vm_clusters_remove_vms_request( # pylint: disable=name-too-long _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2392,7 +2402,7 @@ def build_exascale_db_nodes_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2421,7 +2431,7 @@ def build_exascale_db_nodes_list_by_parent_request( # pylint: disable=name-too- _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2454,7 +2464,7 @@ def build_exascale_db_nodes_action_request( _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2485,7 +2495,7 @@ def build_exascale_db_storage_vaults_get_request( # pylint: disable=name-too-lo _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2516,7 +2526,7 @@ def build_exascale_db_storage_vaults_create_request( # pylint: disable=name-too _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2549,7 +2559,7 @@ def build_exascale_db_storage_vaults_update_request( # pylint: disable=name-too _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2580,7 +2590,7 @@ def build_exascale_db_storage_vaults_delete_request( # pylint: disable=name-too ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exascaleDbStorageVaults/{exascaleDbStorageVaultName}" path_format_arguments = { @@ -2605,7 +2615,7 @@ def build_exascale_db_storage_vaults_list_by_resource_group_request( # pylint: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2632,7 +2642,7 @@ def build_exascale_db_storage_vaults_list_by_subscription_request( # pylint: di _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2658,7 +2668,7 @@ def build_network_anchors_list_by_subscription_request( # pylint: disable=name- _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2685,7 +2695,7 @@ def build_network_anchors_create_or_update_request( # pylint: disable=name-too- _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2715,7 +2725,7 @@ def build_network_anchors_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2744,7 +2754,7 @@ def build_network_anchors_update_request( _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2773,7 +2783,7 @@ def build_network_anchors_delete_request( ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/networkAnchors/{networkAnchorName}" path_format_arguments = { @@ -2796,7 +2806,7 @@ def build_network_anchors_list_by_resource_group_request( # pylint: disable=nam _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2823,7 +2833,7 @@ def build_resource_anchors_list_by_subscription_request( # pylint: disable=name _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2850,7 +2860,7 @@ def build_resource_anchors_create_or_update_request( # pylint: disable=name-too _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2880,7 +2890,7 @@ def build_resource_anchors_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2909,7 +2919,7 @@ def build_resource_anchors_update_request( _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2938,7 +2948,7 @@ def build_resource_anchors_delete_request( ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/resourceAnchors/{resourceAnchorName}" path_format_arguments = { @@ -2961,7 +2971,7 @@ def build_resource_anchors_list_by_resource_group_request( # pylint: disable=na _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -2990,7 +3000,7 @@ def build_db_systems_list_by_subscription_request( # pylint: disable=name-too-l _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -3017,7 +3027,7 @@ def build_db_systems_create_or_update_request( # pylint: disable=name-too-long _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -3047,7 +3057,7 @@ def build_db_systems_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -3076,7 +3086,7 @@ def build_db_systems_update_request( _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -3105,7 +3115,7 @@ def build_db_systems_delete_request( ) -> HttpRequest: _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) # Construct URL _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/dbSystems/{dbSystemName}" path_format_arguments = { @@ -3128,7 +3138,7 @@ def build_db_systems_list_by_resource_group_request( # pylint: disable=name-too _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -3155,7 +3165,7 @@ def build_db_versions_get_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -3192,7 +3202,7 @@ def build_db_versions_list_by_location_request( # pylint: disable=name-too-long _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2025-09-01")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -3227,1461 +3237,731 @@ def build_db_versions_list_by_location_request( # pylint: disable=name-too-long return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. +def build_database_editions_get_request( + location: str, databaseeditionname: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`operations` attribute. - """ + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/databaseEditions/{databaseeditionname}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "location": _SERIALIZER.url("location", location, "str"), + "databaseeditionname": _SERIALIZER.url("databaseeditionname", databaseeditionname, "str"), + } - @distributed_trace - def list(self, **kwargs: Any) -> ItemPaged["_models.Operation"]: - """List the operations for the provider. + _url: str = _url.format(**path_format_arguments) # type: ignore - :return: An iterator like instance of Operation - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - cls: ClsType[List[_models.Operation]] = kwargs.pop("cls", None) + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - def prepare_request(next_link=None): - if not next_link: - _request = build_operations_list_request( - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) +def build_database_editions_list_by_location_request( # pylint: disable=name-too-long + location: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - return _request + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/databaseEditions" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "location": _SERIALIZER.url("location", location, "str"), + } - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.Operation], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + _url: str = _url.format(**path_format_arguments) # type: ignore - def get_next(next_link=None): - _request = prepare_request(next_link) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - return pipeline_response - return ItemPaged(get_next, extract_data) +def build_database_system_shape_resources_get_request( # pylint: disable=name-too-long + location: str, databasesystemshapename: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") -class CloudExadataInfrastructuresOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/databaseSystemShapes/{databasesystemshapename}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "location": _SERIALIZER.url("location", location, "str"), + "databasesystemshapename": _SERIALIZER.url("databasesystemshapename", databasesystemshapename, "str"), + } - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`cloud_exadata_infrastructures` attribute. - """ + _url: str = _url.format(**path_format_arguments) # type: ignore - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.CloudExadataInfrastructure"]: - """List CloudExadataInfrastructure resources by subscription ID. + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - :return: An iterator like instance of CloudExadataInfrastructure - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - cls: ClsType[List[_models.CloudExadataInfrastructure]] = kwargs.pop("cls", None) - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) +def build_database_system_shape_resources_list_by_location_request( # pylint: disable=name-too-long + location: str, + subscription_id: str, + *, + shape_attribute: Optional[str] = None, + zone: Optional[str] = None, + availability_domain: Optional[str] = None, + database_shape_family: Optional[str] = None, + database_edition: Optional[str] = None, + **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - def prepare_request(next_link=None): - if not next_link: + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - _request = build_cloud_exadata_infrastructures_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/databaseSystemShapes" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "location": _SERIALIZER.url("location", location, "str"), + } - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + _url: str = _url.format(**path_format_arguments) # type: ignore - return _request + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + if shape_attribute is not None: + _params["shapeAttribute"] = _SERIALIZER.query("shape_attribute", shape_attribute, "str") + if zone is not None: + _params["zone"] = _SERIALIZER.query("zone", zone, "str") + if availability_domain is not None: + _params["availabilityDomain"] = _SERIALIZER.query("availability_domain", availability_domain, "str") + if database_shape_family is not None: + _params["databaseShapeFamily"] = _SERIALIZER.query("database_shape_family", database_shape_family, "str") + if database_edition is not None: + _params["databaseEdition"] = _SERIALIZER.query("database_edition", database_edition, "str") - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.CloudExadataInfrastructure], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - def get_next(next_link=None): - _request = prepare_request(next_link) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) +def build_golden_gate_connections_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - return pipeline_response + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - return ItemPaged(get_next, extract_data) + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Oracle.Database/goldenGateConnections" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } - def _create_or_update_initial( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - resource: Union[_models.CloudExadataInfrastructure, JSON, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) + _url: str = _url.format(**path_format_arguments) # type: ignore - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - content_type = content_type or "application/json" - _content = None - if isinstance(resource, (IOBase, bytes)): - _content = resource - else: - _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - _request = build_cloud_exadata_infrastructures_create_or_update_request( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - subscription_id=self._config.subscription_id, - content_type=content_type, - api_version=self._config.api_version, - content=_content, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) +def build_golden_gate_connections_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_connection_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - response = pipeline_response.http_response + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateConnections/{goldenGateConnectionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateConnectionName": _SERIALIZER.url("golden_gate_connection_name", golden_gate_connection_name, "str"), + } - response_headers = {} - if response.status_code == 201: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + _url: str = _url.format(**path_format_arguments) # type: ignore - deserialized = response.iter_bytes() + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return deserialized # type: ignore + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - @overload - def begin_create_or_update( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - resource: _models.CloudExadataInfrastructure, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Create a CloudExadataInfrastructure. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ +def build_golden_gate_connections_get_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_connection_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - @overload - def begin_create_or_update( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - resource: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Create a CloudExadataInfrastructure. + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param resource: Resource create parameters. Required. - :type resource: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateConnections/{goldenGateConnectionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateConnectionName": _SERIALIZER.url("golden_gate_connection_name", golden_gate_connection_name, "str"), + } - @overload - def begin_create_or_update( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - resource: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Create a CloudExadataInfrastructure. + _url: str = _url.format(**path_format_arguments) # type: ignore - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param resource: Resource create parameters. Required. - :type resource: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - resource: Union[_models.CloudExadataInfrastructure, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Create a CloudExadataInfrastructure. + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param resource: Resource create parameters. Is one of the following types: - CloudExadataInfrastructure, JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure or JSON or - IO[bytes] - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - resource=resource, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): - response = pipeline_response.http_response - deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized +def build_golden_gate_connections_update_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_connection_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.CloudExadataInfrastructure].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.CloudExadataInfrastructure]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateConnections/{goldenGateConnectionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateConnectionName": _SERIALIZER.url("golden_gate_connection_name", golden_gate_connection_name, "str"), + } - @distributed_trace - def get( - self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any - ) -> _models.CloudExadataInfrastructure: - """Get a CloudExadataInfrastructure. + _url: str = _url.format(**path_format_arguments) # type: ignore - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :return: CloudExadataInfrastructure. The CloudExadataInfrastructure is compatible with - MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - _request = build_cloud_exadata_infrastructures_get_request( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) +def build_golden_gate_connections_delete_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_connection_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - response = pipeline_response.http_response + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateConnections/{goldenGateConnectionName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateConnectionName": _SERIALIZER.url("golden_gate_connection_name", golden_gate_connection_name, "str"), + } - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + _url: str = _url.format(**path_format_arguments) # type: ignore - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - return deserialized # type: ignore - def _update_initial( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - properties: Union[_models.CloudExadataInfrastructureUpdate, JSON, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) +def build_golden_gate_connections_list_by_resource_group_request( # pylint: disable=name-too-long + resource_group_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateConnections" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } - content_type = content_type or "application/json" - _content = None - if isinstance(properties, (IOBase, bytes)): - _content = properties - else: - _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore - _request = build_cloud_exadata_infrastructures_update_request( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - subscription_id=self._config.subscription_id, - content_type=content_type, - api_version=self._config.api_version, - content=_content, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - response = pipeline_response.http_response + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) +def build_golden_gate_connections_assign_deployment_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_connection_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - deserialized = response.iter_bytes() + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateConnections/{goldenGateConnectionName}/assignDeployment" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateConnectionName": _SERIALIZER.url("golden_gate_connection_name", golden_gate_connection_name, "str"), + } - return deserialized # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore - @overload - def begin_update( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - properties: _models.CloudExadataInfrastructureUpdate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Update a CloudExadataInfrastructure. + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructureUpdate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - @overload - def begin_update( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - properties: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Update a CloudExadataInfrastructure. + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param properties: The resource properties to be updated. Required. - :type properties: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ - @overload - def begin_update( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - properties: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Update a CloudExadataInfrastructure. +def build_golden_gate_connections_unassign_deployment_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_connection_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param properties: The resource properties to be updated. Required. - :type properties: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - @distributed_trace - def begin_update( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - properties: Union[_models.CloudExadataInfrastructureUpdate, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Update a CloudExadataInfrastructure. + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateConnections/{goldenGateConnectionName}/unassignDeployment" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateConnectionName": _SERIALIZER.url("golden_gate_connection_name", golden_gate_connection_name, "str"), + } - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param properties: The resource properties to be updated. Is one of the following types: - CloudExadataInfrastructureUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructureUpdate or JSON or - IO[bytes] - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} + _url: str = _url.format(**path_format_arguments) # type: ignore - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._update_initial( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - properties=properties, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - def get_long_running_output(pipeline_response): - response = pipeline_response.http_response - deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.CloudExadataInfrastructure].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.CloudExadataInfrastructure]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - def _delete_initial( - self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) +def build_golden_gate_connections_list_assigned_deployments_by_parent_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_connection_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateConnections/{goldenGateConnectionName}/assignedDeployments" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateConnectionName": _SERIALIZER.url("golden_gate_connection_name", golden_gate_connection_name, "str"), + } - _request = build_cloud_exadata_infrastructures_delete_request( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + _url: str = _url.format(**path_format_arguments) # type: ignore - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - response = pipeline_response.http_response + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - if response.status_code not in [202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() +def build_golden_gate_connections_get_assigned_deployment_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_connection_name: str, assignment_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - return deserialized # type: ignore + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateConnections/{goldenGateConnectionName}/assignedDeployments/{assignmentId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateConnectionName": _SERIALIZER.url("golden_gate_connection_name", golden_gate_connection_name, "str"), + "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), + } - @distributed_trace - def begin_delete( - self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any - ) -> LROPoller[None]: - """Delete a CloudExadataInfrastructure. + _url: str = _url.format(**path_format_arguments) # type: ignore - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore +def build_golden_gate_deployments_list_by_subscription_request( # pylint: disable=name-too-long + subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> ItemPaged["_models.CloudExadataInfrastructure"]: - """List CloudExadataInfrastructure resources by resource group. + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :return: An iterator like instance of CloudExadataInfrastructure - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + # Construct URL + _url = "/subscriptions/{subscriptionId}/providers/Oracle.Database/goldenGateDeployments" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + } - cls: ClsType[List[_models.CloudExadataInfrastructure]] = kwargs.pop("cls", None) + _url: str = _url.format(**path_format_arguments) # type: ignore - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - def prepare_request(next_link=None): - if not next_link: + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - _request = build_cloud_exadata_infrastructures_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - return _request +def build_golden_gate_deployments_create_or_update_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_deployment_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.CloudExadataInfrastructure], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - def get_next(next_link=None): - _request = prepare_request(next_link) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateDeployments/{goldenGateDeploymentName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateDeploymentName": _SERIALIZER.url("golden_gate_deployment_name", golden_gate_deployment_name, "str"), + } - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response + _url: str = _url.format(**path_format_arguments) # type: ignore - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - return pipeline_response + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return ItemPaged(get_next, extract_data) + return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - def _add_storage_capacity_initial( - self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} +def build_golden_gate_deployments_get_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_deployment_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - _request = build_cloud_exadata_infrastructures_add_storage_capacity_request( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateDeployments/{goldenGateDeploymentName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateDeploymentName": _SERIALIZER.url("golden_gate_deployment_name", golden_gate_deployment_name, "str"), + } - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) + _url: str = _url.format(**path_format_arguments) # type: ignore - response = pipeline_response.http_response + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - deserialized = response.iter_bytes() - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore +def build_golden_gate_deployments_update_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_deployment_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - return deserialized # type: ignore + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - @distributed_trace - def begin_add_storage_capacity( - self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Perform add storage capacity on exadata infra. + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateDeployments/{goldenGateDeploymentName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateDeploymentName": _SERIALIZER.url("golden_gate_deployment_name", golden_gate_deployment_name, "str"), + } - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + _url: str = _url.format(**path_format_arguments) # type: ignore - cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._add_storage_capacity_initial( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized + return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.CloudExadataInfrastructure].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.CloudExadataInfrastructure]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) +def build_golden_gate_deployments_delete_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_deployment_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - @api_version_validation( - method_added_on="2025-08-01-preview", - params_added_on={ - "2025-08-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "cloudexadatainfrastructurename", - "content_type", - "accept", - ] - }, - api_versions_list=["2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], - ) - def _configure_exascale_initial( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - body: Union[_models.ConfigureExascaleCloudExadataInfrastructureDetails, JSON, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateDeployments/{goldenGateDeploymentName}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateDeploymentName": _SERIALIZER.url("golden_gate_deployment_name", golden_gate_deployment_name, "str"), + } - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} + _url: str = _url.format(**path_format_arguments) # type: ignore - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - content_type = content_type or "application/json" - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - _request = build_cloud_exadata_infrastructures_configure_exascale_request( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - subscription_id=self._config.subscription_id, - content_type=content_type, - api_version=self._config.api_version, - content=_content, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) +def build_golden_gate_deployments_list_by_resource_group_request( # pylint: disable=name-too-long + resource_group_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - response = pipeline_response.http_response + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateDeployments" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + } - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + _url: str = _url.format(**path_format_arguments) # type: ignore - return deserialized # type: ignore + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - @overload - def begin_configure_exascale( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - body: _models.ConfigureExascaleCloudExadataInfrastructureDetails, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Configures Exascale on Cloud exadata infrastructure resource. + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param body: The content of the action request. Required. - :type body: - ~azure.mgmt.oracledatabase.models.ConfigureExascaleCloudExadataInfrastructureDetails - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - @overload - def begin_configure_exascale( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - body: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Configures Exascale on Cloud exadata infrastructure resource. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param body: The content of the action request. Required. - :type body: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ +def build_golden_gate_deployments_assign_connection_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_deployment_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - @overload - def begin_configure_exascale( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Configures Exascale on Cloud exadata infrastructure resource. + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param body: The content of the action request. Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateDeployments/{goldenGateDeploymentName}/assignConnection" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateDeploymentName": _SERIALIZER.url("golden_gate_deployment_name", golden_gate_deployment_name, "str"), + } - @distributed_trace - @api_version_validation( - method_added_on="2025-08-01-preview", - params_added_on={ - "2025-08-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "cloudexadatainfrastructurename", - "content_type", - "accept", - ] - }, - api_versions_list=["2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], - ) - def begin_configure_exascale( - self, - resource_group_name: str, - cloudexadatainfrastructurename: str, - body: Union[_models.ConfigureExascaleCloudExadataInfrastructureDetails, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.CloudExadataInfrastructure]: - """Configures Exascale on Cloud exadata infrastructure resource. + _url: str = _url.format(**path_format_arguments) # type: ignore - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param body: The content of the action request. Is one of the following types: - ConfigureExascaleCloudExadataInfrastructureDetails, JSON, IO[bytes] Required. - :type body: - ~azure.mgmt.oracledatabase.models.ConfigureExascaleCloudExadataInfrastructureDetails or JSON or - IO[bytes] - :return: An instance of LROPoller that returns CloudExadataInfrastructure. The - CloudExadataInfrastructure is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._configure_exascale_initial( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - body=body, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } +def build_golden_gate_deployments_unassign_connection_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_deployment_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.CloudExadataInfrastructure].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.CloudExadataInfrastructure]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateDeployments/{goldenGateDeploymentName}/unassignConnection" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateDeploymentName": _SERIALIZER.url("golden_gate_deployment_name", golden_gate_deployment_name, "str"), + } -class DbServersOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. + _url: str = _url.format(**path_format_arguments) # type: ignore - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`db_servers` attribute. - """ + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - @distributed_trace - def get( - self, resource_group_name: str, cloudexadatainfrastructurename: str, dbserverocid: str, **kwargs: Any - ) -> _models.DbServer: - """Get a DbServer. + return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :param dbserverocid: DbServer OCID. Required. - :type dbserverocid: str - :return: DbServer. The DbServer is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.DbServer - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} +def build_golden_gate_deployments_list_assigned_connections_by_parent_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_deployment_name: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - cls: ClsType[_models.DbServer] = kwargs.pop("cls", None) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") - _request = build_db_servers_get_request( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - dbserverocid=dbserverocid, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateDeployments/{goldenGateDeploymentName}/assignedConnections" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateDeploymentName": _SERIALIZER.url("golden_gate_deployment_name", golden_gate_deployment_name, "str"), + } - _stream = kwargs.pop("stream", False) - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) + _url: str = _url.format(**path_format_arguments) # type: ignore - response = pipeline_response.http_response + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.DbServer, response.json()) + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized # type: ignore +def build_golden_gate_deployments_get_assigned_connection_request( # pylint: disable=name-too-long + resource_group_name: str, golden_gate_deployment_name: str, assignment_id: str, subscription_id: str, **kwargs: Any +) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) + + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2026-06-01")) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/goldenGateDeployments/{goldenGateDeploymentName}/assignedConnections/{assignmentId}" + path_format_arguments = { + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), + "resourceGroupName": _SERIALIZER.url("resource_group_name", resource_group_name, "str"), + "goldenGateDeploymentName": _SERIALIZER.url("golden_gate_deployment_name", golden_gate_deployment_name, "str"), + "assignmentId": _SERIALIZER.url("assignment_id", assignment_id, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct parameters + _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) + + +class Operations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`operations` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def list_by_parent( - self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any - ) -> ItemPaged["_models.DbServer"]: - """List DbServer resources by CloudExadataInfrastructure. + def list(self, **kwargs: Any) -> ItemPaged["_models.Operation"]: + """List the operations for the provider. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. - :type cloudexadatainfrastructurename: str - :return: An iterator like instance of DbServer - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbServer] + :return: An iterator like instance of Operation + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.Operation] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.DbServer]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.Operation]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -4694,10 +3974,7 @@ def list_by_parent( def prepare_request(next_link=None): if not next_link: - _request = build_db_servers_list_by_parent_request( - resource_group_name=resource_group_name, - cloudexadatainfrastructurename=cloudexadatainfrastructurename, - subscription_id=self._config.subscription_id, + _request = build_operations_list_request( api_version=self._config.api_version, headers=_headers, params=_params, @@ -4720,7 +3997,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -4733,7 +4013,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbServer], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.Operation], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -4749,7 +4032,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -4757,14 +4043,14 @@ def get_next(next_link=None): return ItemPaged(get_next, extract_data) -class CloudVmClustersOperations: +class CloudExadataInfrastructuresOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`cloud_vm_clusters` attribute. + :attr:`cloud_exadata_infrastructures` attribute. """ def __init__(self, *args, **kwargs) -> None: @@ -4775,17 +4061,18 @@ def __init__(self, *args, **kwargs) -> None: self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.CloudVmCluster"]: - """List CloudVmCluster resources by subscription ID. + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.CloudExadataInfrastructure"]: + """List CloudExadataInfrastructure resources by subscription ID. - :return: An iterator like instance of CloudVmCluster - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An iterator like instance of CloudExadataInfrastructure + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.CloudVmCluster]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.CloudExadataInfrastructure]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -4798,7 +4085,7 @@ def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.CloudVmClust def prepare_request(next_link=None): if not next_link: - _request = build_cloud_vm_clusters_list_by_subscription_request( + _request = build_cloud_exadata_infrastructures_list_by_subscription_request( subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -4822,7 +4109,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -4835,7 +4125,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.CloudVmCluster], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.CloudExadataInfrastructure], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -4851,7 +4144,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -4861,8 +4157,8 @@ def get_next(next_link=None): def _create_or_update_initial( self, resource_group_name: str, - cloudvmclustername: str, - resource: Union[_models.CloudVmCluster, JSON, IO[bytes]], + cloudexadatainfrastructurename: str, + resource: Union[_models.CloudExadataInfrastructure, _types.CloudExadataInfrastructure, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -4886,9 +4182,9 @@ def _create_or_update_initial( else: _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_cloud_vm_clusters_create_or_update_request( + _request = build_cloud_exadata_infrastructures_create_or_update_request( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -4901,6 +4197,7 @@ def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -4914,7 +4211,10 @@ def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -4924,7 +4224,7 @@ def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -4935,27 +4235,28 @@ def _create_or_update_initial( def begin_create_or_update( self, resource_group_name: str, - cloudvmclustername: str, - resource: _models.CloudVmCluster, + cloudexadatainfrastructurename: str, + resource: _models.CloudExadataInfrastructure, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Create a CloudVmCluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Create a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.CloudVmCluster + :type resource: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -4963,27 +4264,28 @@ def begin_create_or_update( def begin_create_or_update( self, resource_group_name: str, - cloudvmclustername: str, - resource: JSON, + cloudexadatainfrastructurename: str, + resource: _types.CloudExadataInfrastructure, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Create a CloudVmCluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Create a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.CloudExadataInfrastructure :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -4991,27 +4293,28 @@ def begin_create_or_update( def begin_create_or_update( self, resource_group_name: str, - cloudvmclustername: str, + cloudexadatainfrastructurename: str, resource: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Create a CloudVmCluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Create a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :param resource: Resource create parameters. Required. :type resource: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -5019,37 +4322,39 @@ def begin_create_or_update( def begin_create_or_update( self, resource_group_name: str, - cloudvmclustername: str, - resource: Union[_models.CloudVmCluster, JSON, IO[bytes]], + cloudexadatainfrastructurename: str, + resource: Union[_models.CloudExadataInfrastructure, _types.CloudExadataInfrastructure, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Create a CloudVmCluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Create a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param resource: Resource create parameters. Is one of the following types: CloudVmCluster, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.CloudVmCluster or JSON or IO[bytes] - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str + :param resource: Resource create parameters. Is either a CloudExadataInfrastructure type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure or + ~azure.mgmt.oracledatabase.types.CloudExadataInfrastructure or IO[bytes] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) + cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, resource=resource, content_type=content_type, cls=lambda x, y, z: x, @@ -5062,7 +4367,7 @@ def begin_create_or_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.CloudVmCluster, response.json()) + deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -5080,27 +4385,30 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.CloudVmCluster].from_continuation_token( + return LROPoller[_models.CloudExadataInfrastructure].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.CloudVmCluster]( + return LROPoller[_models.CloudExadataInfrastructure]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) @distributed_trace - def get(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) -> _models.CloudVmCluster: - """Get a CloudVmCluster. + def get( + self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any + ) -> _models.CloudExadataInfrastructure: + """Get a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :return: CloudVmCluster. The CloudVmCluster is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.CloudVmCluster + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str + :return: CloudExadataInfrastructure. The CloudExadataInfrastructure is compatible with + MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -5114,11 +4422,11 @@ def get(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) + cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) - _request = build_cloud_vm_clusters_get_request( + _request = build_cloud_exadata_infrastructures_get_request( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -5129,6 +4437,7 @@ def get(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5143,13 +4452,16 @@ def get(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.CloudVmCluster, response.json()) + deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -5159,8 +4471,8 @@ def get(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) def _update_initial( self, resource_group_name: str, - cloudvmclustername: str, - properties: Union[_models.CloudVmClusterUpdate, JSON, IO[bytes]], + cloudexadatainfrastructurename: str, + properties: Union[_models.CloudExadataInfrastructureUpdate, _types.CloudExadataInfrastructureUpdate, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -5184,9 +4496,9 @@ def _update_initial( else: _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_cloud_vm_clusters_update_request( + _request = build_cloud_exadata_infrastructures_update_request( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -5199,6 +4511,7 @@ def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5212,7 +4525,10 @@ def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -5220,7 +4536,7 @@ def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -5231,27 +4547,28 @@ def _update_initial( def begin_update( self, resource_group_name: str, - cloudvmclustername: str, - properties: _models.CloudVmClusterUpdate, + cloudexadatainfrastructurename: str, + properties: _models.CloudExadataInfrastructureUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Update a CloudVmCluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Update a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.CloudVmClusterUpdate + :type properties: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructureUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -5259,27 +4576,28 @@ def begin_update( def begin_update( self, resource_group_name: str, - cloudvmclustername: str, - properties: JSON, + cloudexadatainfrastructurename: str, + properties: _types.CloudExadataInfrastructureUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Update a CloudVmCluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Update a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.CloudExadataInfrastructureUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -5287,27 +4605,28 @@ def begin_update( def begin_update( self, resource_group_name: str, - cloudvmclustername: str, + cloudexadatainfrastructurename: str, properties: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Update a CloudVmCluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Update a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :param properties: The resource properties to be updated. Required. :type properties: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -5315,37 +4634,39 @@ def begin_update( def begin_update( self, resource_group_name: str, - cloudvmclustername: str, - properties: Union[_models.CloudVmClusterUpdate, JSON, IO[bytes]], + cloudexadatainfrastructurename: str, + properties: Union[_models.CloudExadataInfrastructureUpdate, _types.CloudExadataInfrastructureUpdate, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Update a CloudVmCluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Update a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param properties: The resource properties to be updated. Is one of the following types: - CloudVmClusterUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.CloudVmClusterUpdate or JSON or IO[bytes] - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str + :param properties: The resource properties to be updated. Is either a + CloudExadataInfrastructureUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.CloudExadataInfrastructureUpdate or + ~azure.mgmt.oracledatabase.types.CloudExadataInfrastructureUpdate or IO[bytes] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) + cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: raw_result = self._update_initial( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, properties=properties, content_type=content_type, cls=lambda x, y, z: x, @@ -5358,7 +4679,7 @@ def begin_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.CloudVmCluster, response.json()) + deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -5376,17 +4697,19 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.CloudVmCluster].from_continuation_token( + return LROPoller[_models.CloudExadataInfrastructure].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.CloudVmCluster]( + return LROPoller[_models.CloudExadataInfrastructure]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - def _delete_initial(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) -> Iterator[bytes]: + def _delete_initial( + self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -5400,9 +4723,9 @@ def _delete_initial(self, resource_group_name: str, cloudvmclustername: str, **k cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_cloud_vm_clusters_delete_request( + _request = build_cloud_exadata_infrastructures_delete_request( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -5413,6 +4736,7 @@ def _delete_initial(self, resource_group_name: str, cloudvmclustername: str, **k } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5426,7 +4750,10 @@ def _delete_initial(self, resource_group_name: str, cloudvmclustername: str, **k except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -5434,7 +4761,7 @@ def _delete_initial(self, resource_group_name: str, cloudvmclustername: str, **k response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -5442,14 +4769,16 @@ def _delete_initial(self, resource_group_name: str, cloudvmclustername: str, **k return deserialized # type: ignore @distributed_trace - def begin_delete(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) -> LROPoller[None]: - """Delete a CloudVmCluster. + def begin_delete( + self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any + ) -> LROPoller[None]: + """Delete a CloudExadataInfrastructure. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :return: An instance of LROPoller that returns None :rtype: ~azure.core.polling.LROPoller[None] :raises ~azure.core.exceptions.HttpResponseError: @@ -5464,7 +4793,7 @@ def begin_delete(self, resource_group_name: str, cloudvmclustername: str, **kwar if cont_token is None: raw_result = self._delete_initial( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -5499,20 +4828,23 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.CloudVmCluster"]: - """List CloudVmCluster resources by resource group. + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> ItemPaged["_models.CloudExadataInfrastructure"]: + """List CloudExadataInfrastructure resources by resource group. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :return: An iterator like instance of CloudVmCluster - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An iterator like instance of CloudExadataInfrastructure + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.CloudVmCluster]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.CloudExadataInfrastructure]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -5525,7 +4857,7 @@ def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Ite def prepare_request(next_link=None): if not next_link: - _request = build_cloud_vm_clusters_list_by_resource_group_request( + _request = build_cloud_exadata_infrastructures_list_by_resource_group_request( resource_group_name=resource_group_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, @@ -5550,7 +4882,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -5563,7 +4898,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.CloudVmCluster], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.CloudExadataInfrastructure], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -5579,19 +4917,18 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return ItemPaged(get_next, extract_data) - def _add_vms_initial( - self, - resource_group_name: str, - cloudvmclustername: str, - body: Union[_models.AddRemoveDbNode, JSON, IO[bytes]], - **kwargs: Any + def _add_storage_capacity_initial( + self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -5601,26 +4938,16 @@ def _add_vms_initial( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - content_type = content_type or "application/json" - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - - _request = build_cloud_vm_clusters_add_vms_request( + _request = build_cloud_exadata_infrastructures_add_storage_capacity_request( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, subscription_id=self._config.subscription_id, - content_type=content_type, api_version=self._config.api_version, - content=_content, headers=_headers, params=_params, ) @@ -5629,6 +4956,7 @@ def _add_vms_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5642,7 +4970,10 @@ def _add_vms_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -5650,134 +4981,41 @@ def _add_vms_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore - @overload - def begin_add_vms( - self, - resource_group_name: str, - cloudvmclustername: str, - body: _models.AddRemoveDbNode, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Add VMs to the VM Cluster. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_add_vms( - self, - resource_group_name: str, - cloudvmclustername: str, - body: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Add VMs to the VM Cluster. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param body: The content of the action request. Required. - :type body: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_add_vms( - self, - resource_group_name: str, - cloudvmclustername: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Add VMs to the VM Cluster. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param body: The content of the action request. Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] - :raises ~azure.core.exceptions.HttpResponseError: - """ - @distributed_trace - def begin_add_vms( - self, - resource_group_name: str, - cloudvmclustername: str, - body: Union[_models.AddRemoveDbNode, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Add VMs to the VM Cluster. + def begin_add_storage_capacity( + self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Perform add storage capacity on exadata infra. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param body: The content of the action request. Is one of the following types: AddRemoveDbNode, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode or JSON or IO[bytes] - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) + cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._add_vms_initial( + raw_result = self._add_storage_capacity_initial( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, - body=body, - content_type=content_type, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -5787,14 +5025,10 @@ def begin_add_vms( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = _deserialize(_models.CloudVmCluster, response.json()) + deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -5810,21 +5044,52 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.CloudVmCluster].from_continuation_token( + return LROPoller[_models.CloudExadataInfrastructure].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.CloudVmCluster]( + return LROPoller[_models.CloudExadataInfrastructure]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - def _remove_vms_initial( + @api_version_validation( + method_added_on="2025-08-01-preview", + params_added_on={ + "2025-08-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "cloudexadatainfrastructurename", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _configure_exascale_initial( self, resource_group_name: str, - cloudvmclustername: str, - body: Union[_models.AddRemoveDbNode, JSON, IO[bytes]], + cloudexadatainfrastructurename: str, + body: Union[ + _models.ConfigureExascaleCloudExadataInfrastructureDetails, + _types.ConfigureExascaleCloudExadataInfrastructureDetails, + IO[bytes], + ], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -5848,9 +5113,9 @@ def _remove_vms_initial( else: _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_cloud_vm_clusters_remove_vms_request( + _request = build_cloud_exadata_infrastructures_configure_exascale_request( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -5863,6 +5128,7 @@ def _remove_vms_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -5876,7 +5142,10 @@ def _remove_vms_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -5884,7 +5153,7 @@ def _remove_vms_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -5892,124 +5161,163 @@ def _remove_vms_initial( return deserialized # type: ignore @overload - def begin_remove_vms( + def begin_configure_exascale( self, resource_group_name: str, - cloudvmclustername: str, - body: _models.AddRemoveDbNode, + cloudexadatainfrastructurename: str, + body: _models.ConfigureExascaleCloudExadataInfrastructureDetails, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Remove VMs from the VM Cluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Configures Exascale on Cloud exadata infrastructure resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode + :type body: + ~azure.mgmt.oracledatabase.models.ConfigureExascaleCloudExadataInfrastructureDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_remove_vms( + def begin_configure_exascale( self, resource_group_name: str, - cloudvmclustername: str, - body: JSON, + cloudexadatainfrastructurename: str, + body: _types.ConfigureExascaleCloudExadataInfrastructureDetails, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Remove VMs from the VM Cluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Configures Exascale on Cloud exadata infrastructure resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.ConfigureExascaleCloudExadataInfrastructureDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_remove_vms( + def begin_configure_exascale( self, resource_group_name: str, - cloudvmclustername: str, + cloudexadatainfrastructurename: str, body: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Remove VMs from the VM Cluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Configures Exascale on Cloud exadata infrastructure resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str :param body: The content of the action request. Required. :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def begin_remove_vms( + @api_version_validation( + method_added_on="2025-08-01-preview", + params_added_on={ + "2025-08-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "cloudexadatainfrastructurename", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_configure_exascale( self, resource_group_name: str, - cloudvmclustername: str, - body: Union[_models.AddRemoveDbNode, JSON, IO[bytes]], + cloudexadatainfrastructurename: str, + body: Union[ + _models.ConfigureExascaleCloudExadataInfrastructureDetails, + _types.ConfigureExascaleCloudExadataInfrastructureDetails, + IO[bytes], + ], **kwargs: Any - ) -> LROPoller[_models.CloudVmCluster]: - """Remove VMs from the VM Cluster. + ) -> LROPoller[_models.CloudExadataInfrastructure]: + """Configures Exascale on Cloud exadata infrastructure resource. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param body: The content of the action request. Is one of the following types: AddRemoveDbNode, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode or JSON or IO[bytes] - :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str + :param body: The content of the action request. Is either a + ConfigureExascaleCloudExadataInfrastructureDetails type or a IO[bytes] type. Required. + :type body: + ~azure.mgmt.oracledatabase.models.ConfigureExascaleCloudExadataInfrastructureDetails or + ~azure.mgmt.oracledatabase.types.ConfigureExascaleCloudExadataInfrastructureDetails or + IO[bytes] + :return: An instance of LROPoller that returns CloudExadataInfrastructure. The + CloudExadataInfrastructure is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudExadataInfrastructure] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) + cls: ClsType[_models.CloudExadataInfrastructure] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._remove_vms_initial( + raw_result = self._configure_exascale_initial( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, body=body, content_type=content_type, cls=lambda x, y, z: x, @@ -6021,14 +5329,10 @@ def begin_remove_vms( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = _deserialize(_models.CloudVmCluster, response.json()) + deserialized = _deserialize(_models.CloudExadataInfrastructure, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -6044,147 +5348,70 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.CloudVmCluster].from_continuation_token( + return LROPoller[_models.CloudExadataInfrastructure].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.CloudVmCluster]( + return LROPoller[_models.CloudExadataInfrastructure]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - @overload - def list_private_ip_addresses( - self, - resource_group_name: str, - cloudvmclustername: str, - body: _models.PrivateIpAddressesFilter, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> List[_models.PrivateIpAddressProperties]: - """List Private IP Addresses by the provided filter. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.PrivateIpAddressesFilter - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: list of PrivateIpAddressProperties - :rtype: list[~azure.mgmt.oracledatabase.models.PrivateIpAddressProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ +class DbServersOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. - @overload - def list_private_ip_addresses( - self, - resource_group_name: str, - cloudvmclustername: str, - body: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> List[_models.PrivateIpAddressProperties]: - """List Private IP Addresses by the provided filter. + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`db_servers` attribute. + """ - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param body: The content of the action request. Required. - :type body: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: list of PrivateIpAddressProperties - :rtype: list[~azure.mgmt.oracledatabase.models.PrivateIpAddressProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - @overload - def list_private_ip_addresses( - self, - resource_group_name: str, - cloudvmclustername: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> List[_models.PrivateIpAddressProperties]: - """List Private IP Addresses by the provided filter. + @distributed_trace + def get( + self, resource_group_name: str, cloudexadatainfrastructurename: str, dbserverocid: str, **kwargs: Any + ) -> _models.DbServer: + """Get a DbServer. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param body: The content of the action request. Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: list of PrivateIpAddressProperties - :rtype: list[~azure.mgmt.oracledatabase.models.PrivateIpAddressProperties] + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str + :param dbserverocid: DbServer OCID. Required. + :type dbserverocid: str + :return: DbServer. The DbServer is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DbServer :raises ~azure.core.exceptions.HttpResponseError: """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) - @distributed_trace - def list_private_ip_addresses( - self, - resource_group_name: str, - cloudvmclustername: str, - body: Union[_models.PrivateIpAddressesFilter, JSON, IO[bytes]], - **kwargs: Any - ) -> List[_models.PrivateIpAddressProperties]: - """List Private IP Addresses by the provided filter. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param body: The content of the action request. Is one of the following types: - PrivateIpAddressesFilter, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.PrivateIpAddressesFilter or JSON or IO[bytes] - :return: list of PrivateIpAddressProperties - :rtype: list[~azure.mgmt.oracledatabase.models.PrivateIpAddressProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[List[_models.PrivateIpAddressProperties]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + cls: ClsType[_models.DbServer] = kwargs.pop("cls", None) - _request = build_cloud_vm_clusters_list_private_ip_addresses_request( + _request = build_db_servers_get_request( resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, + dbserverocid=dbserverocid, subscription_id=self._config.subscription_id, - content_type=content_type, api_version=self._config.api_version, - content=_content, headers=_headers, params=_params, ) @@ -6193,6 +5420,7 @@ def list_private_ip_addresses( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -6207,28 +5435,133 @@ def list_private_ip_addresses( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(List[_models.PrivateIpAddressProperties], response.json()) + deserialized = _deserialize(_models.DbServer, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore + @distributed_trace + def list_by_parent( + self, resource_group_name: str, cloudexadatainfrastructurename: str, **kwargs: Any + ) -> ItemPaged["_models.DbServer"]: + """List DbServer resources by CloudExadataInfrastructure. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudexadatainfrastructurename: CloudExadataInfrastructure name. Required. + :type cloudexadatainfrastructurename: str + :return: An iterator like instance of DbServer + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbServer] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DbServer]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_db_servers_list_by_parent_request( + resource_group_name=resource_group_name, + cloudexadatainfrastructurename=cloudexadatainfrastructurename, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DbServer], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + -class VirtualNetworkAddressesOperations: +class CloudVmClustersOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`virtual_network_addresses` attribute. + :attr:`cloud_vm_clusters` attribute. """ def __init__(self, *args, **kwargs) -> None: @@ -6238,12 +5571,104 @@ def __init__(self, *args, **kwargs) -> None: self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.CloudVmCluster"]: + """List CloudVmCluster resources by subscription ID. + + :return: An iterator like instance of CloudVmCluster + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.CloudVmCluster]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_cloud_vm_clusters_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.CloudVmCluster], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + def _create_or_update_initial( self, resource_group_name: str, cloudvmclustername: str, - virtualnetworkaddressname: str, - resource: Union[_models.VirtualNetworkAddress, JSON, IO[bytes]], + resource: Union[_models.CloudVmCluster, _types.CloudVmCluster, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -6267,10 +5692,9 @@ def _create_or_update_initial( else: _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_virtual_network_addresses_create_or_update_request( + _request = build_cloud_vm_clusters_create_or_update_request( resource_group_name=resource_group_name, cloudvmclustername=cloudvmclustername, - virtualnetworkaddressname=virtualnetworkaddressname, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -6283,6 +5707,7 @@ def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -6296,7 +5721,10 @@ def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -6306,7 +5734,7 @@ def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -6318,29 +5746,26 @@ def begin_create_or_update( self, resource_group_name: str, cloudvmclustername: str, - virtualnetworkaddressname: str, - resource: _models.VirtualNetworkAddress, + resource: _models.CloudVmCluster, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.VirtualNetworkAddress]: - """Create a VirtualNetworkAddress. + ) -> LROPoller[_models.CloudVmCluster]: + """Create a CloudVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param virtualnetworkaddressname: Virtual IP address hostname. Required. - :type virtualnetworkaddressname: str :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.VirtualNetworkAddress + :type resource: ~azure.mgmt.oracledatabase.models.CloudVmCluster :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns VirtualNetworkAddress. The VirtualNetworkAddress - is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -6349,30 +5774,27 @@ def begin_create_or_update( self, resource_group_name: str, cloudvmclustername: str, - virtualnetworkaddressname: str, - resource: JSON, + resource: _types.CloudVmCluster, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.VirtualNetworkAddress]: - """Create a VirtualNetworkAddress. + ) -> LROPoller[_models.CloudVmCluster]: + """Create a CloudVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param virtualnetworkaddressname: Virtual IP address hostname. Required. - :type virtualnetworkaddressname: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.CloudVmCluster :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns VirtualNetworkAddress. The VirtualNetworkAddress - is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] - :raises ~azure.core.exceptions.HttpResponseError: + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :raises ~azure.core.exceptions.HttpResponseError: """ @overload @@ -6380,29 +5802,26 @@ def begin_create_or_update( self, resource_group_name: str, cloudvmclustername: str, - virtualnetworkaddressname: str, resource: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.VirtualNetworkAddress]: - """Create a VirtualNetworkAddress. + ) -> LROPoller[_models.CloudVmCluster]: + """Create a CloudVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param virtualnetworkaddressname: Virtual IP address hostname. Required. - :type virtualnetworkaddressname: str :param resource: Resource create parameters. Required. :type resource: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns VirtualNetworkAddress. The VirtualNetworkAddress - is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -6411,32 +5830,30 @@ def begin_create_or_update( self, resource_group_name: str, cloudvmclustername: str, - virtualnetworkaddressname: str, - resource: Union[_models.VirtualNetworkAddress, JSON, IO[bytes]], + resource: Union[_models.CloudVmCluster, _types.CloudVmCluster, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.VirtualNetworkAddress]: - """Create a VirtualNetworkAddress. + ) -> LROPoller[_models.CloudVmCluster]: + """Create a CloudVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param virtualnetworkaddressname: Virtual IP address hostname. Required. - :type virtualnetworkaddressname: str - :param resource: Resource create parameters. Is one of the following types: - VirtualNetworkAddress, JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.VirtualNetworkAddress or JSON or IO[bytes] - :return: An instance of LROPoller that returns VirtualNetworkAddress. The VirtualNetworkAddress - is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] + :param resource: Resource create parameters. Is either a CloudVmCluster type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.CloudVmCluster or + ~azure.mgmt.oracledatabase.types.CloudVmCluster or IO[bytes] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.VirtualNetworkAddress] = kwargs.pop("cls", None) + cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) @@ -6444,7 +5861,6 @@ def begin_create_or_update( raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, cloudvmclustername=cloudvmclustername, - virtualnetworkaddressname=virtualnetworkaddressname, resource=resource, content_type=content_type, cls=lambda x, y, z: x, @@ -6457,7 +5873,7 @@ def begin_create_or_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.VirtualNetworkAddress, response.json()) + deserialized = _deserialize(_models.CloudVmCluster, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -6475,31 +5891,27 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.VirtualNetworkAddress].from_continuation_token( + return LROPoller[_models.CloudVmCluster].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.VirtualNetworkAddress]( + return LROPoller[_models.CloudVmCluster]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) @distributed_trace - def get( - self, resource_group_name: str, cloudvmclustername: str, virtualnetworkaddressname: str, **kwargs: Any - ) -> _models.VirtualNetworkAddress: - """Get a VirtualNetworkAddress. + def get(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) -> _models.CloudVmCluster: + """Get a CloudVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param virtualnetworkaddressname: Virtual IP address hostname. Required. - :type virtualnetworkaddressname: str - :return: VirtualNetworkAddress. The VirtualNetworkAddress is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.VirtualNetworkAddress + :return: CloudVmCluster. The CloudVmCluster is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.CloudVmCluster :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -6513,12 +5925,11 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.VirtualNetworkAddress] = kwargs.pop("cls", None) + cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) - _request = build_virtual_network_addresses_get_request( + _request = build_cloud_vm_clusters_get_request( resource_group_name=resource_group_name, cloudvmclustername=cloudvmclustername, - virtualnetworkaddressname=virtualnetworkaddressname, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -6529,6 +5940,7 @@ def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -6543,21 +5955,28 @@ def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.VirtualNetworkAddress, response.json()) + deserialized = _deserialize(_models.CloudVmCluster, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - def _delete_initial( - self, resource_group_name: str, cloudvmclustername: str, virtualnetworkaddressname: str, **kwargs: Any + def _update_initial( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: Union[_models.CloudVmClusterUpdate, _types.CloudVmClusterUpdate, IO[bytes]], + **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -6567,17 +5986,26 @@ def _delete_initial( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_virtual_network_addresses_delete_request( + content_type = content_type or "application/json" + _content = None + if isinstance(properties, (IOBase, bytes)): + _content = properties + else: + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_cloud_vm_clusters_update_request( resource_group_name=resource_group_name, cloudvmclustername=cloudvmclustername, - virtualnetworkaddressname=virtualnetworkaddressname, subscription_id=self._config.subscription_id, + content_type=content_type, api_version=self._config.api_version, + content=_content, headers=_headers, params=_params, ) @@ -6586,6 +6014,7 @@ def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -6593,13 +6022,16 @@ def _delete_initial( response = pipeline_response.http_response - if response.status_code not in [202, 204]: + if response.status_code not in [200, 202]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -6607,42 +6039,135 @@ def _delete_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore + @overload + def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: _models.CloudVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Update a CloudVmCluster. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.CloudVmClusterUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: _types.CloudVmClusterUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Update a CloudVmCluster. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.CloudVmClusterUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Update a CloudVmCluster. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :raises ~azure.core.exceptions.HttpResponseError: + """ + @distributed_trace - def begin_delete( - self, resource_group_name: str, cloudvmclustername: str, virtualnetworkaddressname: str, **kwargs: Any - ) -> LROPoller[None]: - """Delete a VirtualNetworkAddress. + def begin_update( + self, + resource_group_name: str, + cloudvmclustername: str, + properties: Union[_models.CloudVmClusterUpdate, _types.CloudVmClusterUpdate, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Update a CloudVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param cloudvmclustername: CloudVmCluster name. Required. :type cloudvmclustername: str - :param virtualnetworkaddressname: Virtual IP address hostname. Required. - :type virtualnetworkaddressname: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] + :param properties: The resource properties to be updated. Is either a CloudVmClusterUpdate type + or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.CloudVmClusterUpdate or + ~azure.mgmt.oracledatabase.types.CloudVmClusterUpdate or IO[bytes] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[None] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._delete_initial( + raw_result = self._update_initial( resource_group_name=resource_group_name, cloudvmclustername=cloudvmclustername, - virtualnetworkaddressname=virtualnetworkaddressname, + properties=properties, + content_type=content_type, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -6651,9 +6176,12 @@ def begin_delete( raw_result.http_response.read() # type: ignore kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.CloudVmCluster, response.json()) if cls: - return cls(pipeline_response, None, {}) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized path_format_arguments = { "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), @@ -6668,34 +6196,17 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- else: polling_method = polling if cont_token: - return LROPoller[None].from_continuation_token( + return LROPoller[_models.CloudVmCluster].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def list_by_parent( - self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any - ) -> ItemPaged["_models.VirtualNetworkAddress"]: - """List VirtualNetworkAddress resources by CloudVmCluster. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :return: An iterator like instance of VirtualNetworkAddress - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.VirtualNetworkAddress]] = kwargs.pop("cls", None) + return LROPoller[_models.CloudVmCluster]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + def _delete_initial(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -6704,117 +6215,14 @@ def list_by_parent( } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} - _request = build_virtual_network_addresses_list_by_parent_request( - resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - return _request - - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.VirtualNetworkAddress], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - -class SystemVersionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`system_versions` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, location: str, systemversionname: str, **kwargs: Any) -> _models.SystemVersion: - """Get a SystemVersion. - - :param location: The name of the Azure region. Required. - :type location: str - :param systemversionname: SystemVersion name. Required. - :type systemversionname: str - :return: SystemVersion. The SystemVersion is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.SystemVersion - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[_models.SystemVersion] = kwargs.pop("cls", None) - - _request = build_system_versions_get_request( - location=location, - systemversionname=systemversionname, + _request = build_cloud_vm_clusters_delete_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -6825,47 +6233,110 @@ def get(self, location: str, systemversionname: str, **kwargs: Any) -> _models.S } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) + _decompress = kwargs.pop("decompress", True) + _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.SystemVersion, response.json()) + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore @distributed_trace - def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.SystemVersion"]: - """List SystemVersion resources by SubscriptionLocationResource. + def begin_delete(self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any) -> LROPoller[None]: + """Delete a CloudVmCluster. - :param location: The name of the Azure region. Required. - :type location: str - :return: An iterator like instance of SystemVersion - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.SystemVersion] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.SystemVersion]] = kwargs.pop("cls", None) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.CloudVmCluster"]: + """List CloudVmCluster resources by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of CloudVmCluster + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.CloudVmCluster] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.CloudVmCluster]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -6878,8 +6349,8 @@ def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.S def prepare_request(next_link=None): if not next_link: - _request = build_system_versions_list_by_location_request( - location=location, + _request = build_cloud_vm_clusters_list_by_resource_group_request( + resource_group_name=resource_group_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -6903,7 +6374,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -6916,7 +6390,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.SystemVersion], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.CloudVmCluster], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -6932,44 +6409,23 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return ItemPaged(get_next, extract_data) - -class OracleSubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`oracle_subscriptions` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.OracleSubscription"]: - """List OracleSubscription resources by subscription ID. - - :return: An iterator like instance of OracleSubscription - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.OracleSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.OracleSubscription]] = kwargs.pop("cls", None) - + def _add_vms_initial( + self, + resource_group_name: str, + cloudvmclustername: str, + body: Union[_models.AddRemoveDbNode, _types.AddRemoveDbNode, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -6978,94 +6434,22 @@ def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.OracleSubscr } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} - _request = build_oracle_subscriptions_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - return _request - - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.OracleSubscription], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_or_update_initial( - self, resource: Union[_models.OracleSubscription, JSON, IO[bytes]], **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) content_type = content_type or "application/json" _content = None - if isinstance(resource, (IOBase, bytes)): - _content = resource + if isinstance(body, (IOBase, bytes)): + _content = body else: - _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_oracle_subscriptions_create_or_update_request( + _request = build_cloud_vm_clusters_add_vms_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -7078,6 +6462,7 @@ def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -7085,23 +6470,24 @@ def _create_or_update_initial( response = pipeline_response.http_response - if response.status_code not in [200, 201]: + if response.status_code not in [200, 202]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 201: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -7109,81 +6495,126 @@ def _create_or_update_initial( return deserialized # type: ignore @overload - def begin_create_or_update( - self, resource: _models.OracleSubscription, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.OracleSubscription]: - """Create a OracleSubscription. + def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: _models.AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Add VMs to the VM Cluster. - :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.OracleSubscription + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( - self, resource: JSON, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.OracleSubscription]: - """Create a OracleSubscription. + def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: _types.AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Add VMs to the VM Cluster. - :param resource: Resource create parameters. Required. - :type resource: JSON + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AddRemoveDbNode :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( - self, resource: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.OracleSubscription]: - """Create a OracleSubscription. + def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Add VMs to the VM Cluster. - :param resource: Resource create parameters. Required. - :type resource: IO[bytes] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Required. + :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def begin_create_or_update( - self, resource: Union[_models.OracleSubscription, JSON, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.OracleSubscription]: - """Create a OracleSubscription. + def begin_add_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: Union[_models.AddRemoveDbNode, _types.AddRemoveDbNode, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Add VMs to the VM Cluster. - :param resource: Resource create parameters. Is one of the following types: OracleSubscription, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.OracleSubscription or JSON or IO[bytes] - :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Is either a AddRemoveDbNode type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode or + ~azure.mgmt.oracledatabase.types.AddRemoveDbNode or IO[bytes] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.OracleSubscription] = kwargs.pop("cls", None) + cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._create_or_update_initial( - resource=resource, + raw_result = self._add_vms_initial( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + body=body, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -7195,7 +6626,7 @@ def begin_create_or_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.OracleSubscription, response.json()) + deserialized = _deserialize(_models.CloudVmCluster, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -7213,77 +6644,22 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.OracleSubscription].from_continuation_token( + return LROPoller[_models.CloudVmCluster].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.OracleSubscription]( + return LROPoller[_models.CloudVmCluster]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - @distributed_trace - def get(self, **kwargs: Any) -> _models.OracleSubscription: - """Get a OracleSubscription. - - :return: OracleSubscription. The OracleSubscription is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.OracleSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[_models.OracleSubscription] = kwargs.pop("cls", None) - - _request = build_oracle_subscriptions_get_request( - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - _stream = kwargs.pop("stream", False) - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.OracleSubscription, response.json()) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _update_initial( - self, properties: Union[_models.OracleSubscriptionUpdate, JSON, IO[bytes]], **kwargs: Any + def _remove_vms_initial( + self, + resource_group_name: str, + cloudvmclustername: str, + body: Union[_models.AddRemoveDbNode, _types.AddRemoveDbNode, IO[bytes]], + **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -7301,12 +6677,14 @@ def _update_initial( content_type = content_type or "application/json" _content = None - if isinstance(properties, (IOBase, bytes)): - _content = properties + if isinstance(body, (IOBase, bytes)): + _content = body else: - _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_oracle_subscriptions_update_request( + _request = build_cloud_vm_clusters_remove_vms_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -7319,6 +6697,7 @@ def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -7332,7 +6711,10 @@ def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -7340,7 +6722,7 @@ def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -7348,82 +6730,126 @@ def _update_initial( return deserialized # type: ignore @overload - def begin_update( - self, properties: _models.OracleSubscriptionUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.OracleSubscription]: - """Update a OracleSubscription. + def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: _models.AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Remove VMs from the VM Cluster. - :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.OracleSubscriptionUpdate + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_update( - self, properties: JSON, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.OracleSubscription]: - """Update a OracleSubscription. + def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: _types.AddRemoveDbNode, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Remove VMs from the VM Cluster. - :param properties: The resource properties to be updated. Required. - :type properties: JSON + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AddRemoveDbNode :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_update( - self, properties: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.OracleSubscription]: - """Update a OracleSubscription. + def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Remove VMs from the VM Cluster. - :param properties: The resource properties to be updated. Required. - :type properties: IO[bytes] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Required. + :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def begin_update( - self, properties: Union[_models.OracleSubscriptionUpdate, JSON, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.OracleSubscription]: - """Update a OracleSubscription. + def begin_remove_vms( + self, + resource_group_name: str, + cloudvmclustername: str, + body: Union[_models.AddRemoveDbNode, _types.AddRemoveDbNode, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.CloudVmCluster]: + """Remove VMs from the VM Cluster. - :param properties: The resource properties to be updated. Is one of the following types: - OracleSubscriptionUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.OracleSubscriptionUpdate or JSON or - IO[bytes] - :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Is either a AddRemoveDbNode type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AddRemoveDbNode or + ~azure.mgmt.oracledatabase.types.AddRemoveDbNode or IO[bytes] + :return: An instance of LROPoller that returns CloudVmCluster. The CloudVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.OracleSubscription] = kwargs.pop("cls", None) + cls: ClsType[_models.CloudVmCluster] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._update_initial( - properties=properties, + raw_result = self._remove_vms_initial( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + body=body, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -7435,7 +6861,7 @@ def begin_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.OracleSubscription, response.json()) + deserialized = _deserialize(_models.CloudVmCluster, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -7453,17 +6879,120 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.OracleSubscription].from_continuation_token( + return LROPoller[_models.CloudVmCluster].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.OracleSubscription]( + return LROPoller[_models.CloudVmCluster]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - def _delete_initial(self, **kwargs: Any) -> Iterator[bytes]: + @overload + def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: _models.PrivateIpAddressesFilter, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> List[_models.PrivateIpAddressProperties]: + """List Private IP Addresses by the provided filter. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.PrivateIpAddressesFilter + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: list of PrivateIpAddressProperties + :rtype: list[~azure.mgmt.oracledatabase.models.PrivateIpAddressProperties] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: _types.PrivateIpAddressesFilter, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> List[_models.PrivateIpAddressProperties]: + """List Private IP Addresses by the provided filter. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.PrivateIpAddressesFilter + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: list of PrivateIpAddressProperties + :rtype: list[~azure.mgmt.oracledatabase.models.PrivateIpAddressProperties] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> List[_models.PrivateIpAddressProperties]: + """List Private IP Addresses by the provided filter. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: list of PrivateIpAddressProperties + :rtype: list[~azure.mgmt.oracledatabase.models.PrivateIpAddressProperties] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def list_private_ip_addresses( + self, + resource_group_name: str, + cloudvmclustername: str, + body: Union[_models.PrivateIpAddressesFilter, _types.PrivateIpAddressesFilter, IO[bytes]], + **kwargs: Any + ) -> List[_models.PrivateIpAddressProperties]: + """List Private IP Addresses by the provided filter. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param body: The content of the action request. Is either a PrivateIpAddressesFilter type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.PrivateIpAddressesFilter or + ~azure.mgmt.oracledatabase.types.PrivateIpAddressesFilter or IO[bytes] + :return: list of PrivateIpAddressProperties + :rtype: list[~azure.mgmt.oracledatabase.models.PrivateIpAddressProperties] + :raises ~azure.core.exceptions.HttpResponseError: + """ error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -7472,14 +7001,26 @@ def _delete_initial(self, **kwargs: Any) -> Iterator[bytes]: } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[List[_models.PrivateIpAddressProperties]] = kwargs.pop("cls", None) - _request = build_oracle_subscriptions_delete_request( + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_cloud_vm_clusters_list_private_ip_addresses_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, subscription_id=self._config.subscription_id, + content_type=content_type, api_version=self._config.api_version, + content=_content, headers=_headers, params=_params, ) @@ -7488,80 +7029,63 @@ def _delete_initial(self, **kwargs: Any) -> Iterator[bytes]: } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(List[_models.PrivateIpAddressProperties], response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - @distributed_trace - def begin_delete(self, **kwargs: Any) -> LROPoller[None]: - """Delete a OracleSubscription. - - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial(cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore +class VirtualNetworkAddressesOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`virtual_network_addresses` attribute. + """ - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - def _list_cloud_account_details_initial(self, **kwargs: Any) -> Iterator[bytes]: + def _create_or_update_initial( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: Union[_models.VirtualNetworkAddress, _types.VirtualNetworkAddress, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -7570,14 +7094,27 @@ def _list_cloud_account_details_initial(self, **kwargs: Any) -> Iterator[bytes]: } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_oracle_subscriptions_list_cloud_account_details_request( + content_type = content_type or "application/json" + _content = None + if isinstance(resource, (IOBase, bytes)): + _content = resource + else: + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_virtual_network_addresses_create_or_update_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + virtualnetworkaddressname=virtualnetworkaddressname, subscription_id=self._config.subscription_id, + content_type=content_type, api_version=self._config.api_version, + content=_content, headers=_headers, params=_params, ) @@ -7586,6 +7123,7 @@ def _list_cloud_account_details_initial(self, **kwargs: Any) -> Iterator[bytes]: } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -7593,53 +7131,178 @@ def _list_cloud_account_details_initial(self, **kwargs: Any) -> Iterator[bytes]: response = pipeline_response.http_response - if response.status_code not in [200, 202]: + if response.status_code not in [200, 201]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: _models.VirtualNetworkAddress, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.VirtualNetworkAddress]: + """Create a VirtualNetworkAddress. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param virtualnetworkaddressname: Virtual IP address hostname. Required. + :type virtualnetworkaddressname: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.VirtualNetworkAddress + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns VirtualNetworkAddress. The VirtualNetworkAddress + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: _types.VirtualNetworkAddress, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.VirtualNetworkAddress]: + """Create a VirtualNetworkAddress. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param virtualnetworkaddressname: Virtual IP address hostname. Required. + :type virtualnetworkaddressname: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.VirtualNetworkAddress + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns VirtualNetworkAddress. The VirtualNetworkAddress + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.VirtualNetworkAddress]: + """Create a VirtualNetworkAddress. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param virtualnetworkaddressname: Virtual IP address hostname. Required. + :type virtualnetworkaddressname: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns VirtualNetworkAddress. The VirtualNetworkAddress + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] + :raises ~azure.core.exceptions.HttpResponseError: + """ + @distributed_trace - def begin_list_cloud_account_details(self, **kwargs: Any) -> LROPoller[_models.CloudAccountDetails]: - """List Cloud Account Details. + def begin_create_or_update( + self, + resource_group_name: str, + cloudvmclustername: str, + virtualnetworkaddressname: str, + resource: Union[_models.VirtualNetworkAddress, _types.VirtualNetworkAddress, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.VirtualNetworkAddress]: + """Create a VirtualNetworkAddress. - :return: An instance of LROPoller that returns CloudAccountDetails. The CloudAccountDetails is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudAccountDetails] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param virtualnetworkaddressname: Virtual IP address hostname. Required. + :type virtualnetworkaddressname: str + :param resource: Resource create parameters. Is either a VirtualNetworkAddress type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.VirtualNetworkAddress or + ~azure.mgmt.oracledatabase.types.VirtualNetworkAddress or IO[bytes] + :return: An instance of LROPoller that returns VirtualNetworkAddress. The VirtualNetworkAddress + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.CloudAccountDetails] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.VirtualNetworkAddress] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._list_cloud_account_details_initial( - cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + virtualnetworkaddressname=virtualnetworkaddressname, + resource=resource, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs ) raw_result.http_response.read() # type: ignore kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.CloudAccountDetails, response.json()) + deserialized = _deserialize(_models.VirtualNetworkAddress, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -7657,17 +7320,33 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.CloudAccountDetails].from_continuation_token( + return LROPoller[_models.VirtualNetworkAddress].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.CloudAccountDetails]( + return LROPoller[_models.VirtualNetworkAddress]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - def _list_saas_subscription_details_initial(self, **kwargs: Any) -> Iterator[bytes]: + @distributed_trace + def get( + self, resource_group_name: str, cloudvmclustername: str, virtualnetworkaddressname: str, **kwargs: Any + ) -> _models.VirtualNetworkAddress: + """Get a VirtualNetworkAddress. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param virtualnetworkaddressname: Virtual IP address hostname. Required. + :type virtualnetworkaddressname: str + :return: VirtualNetworkAddress. The VirtualNetworkAddress is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.VirtualNetworkAddress + :raises ~azure.core.exceptions.HttpResponseError: + """ error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -7679,9 +7358,12 @@ def _list_saas_subscription_details_initial(self, **kwargs: Any) -> Iterator[byt _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + cls: ClsType[_models.VirtualNetworkAddress] = kwargs.pop("cls", None) - _request = build_oracle_subscriptions_list_saas_subscription_details_request( + _request = build_virtual_network_addresses_get_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + virtualnetworkaddressname=virtualnetworkaddressname, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -7692,89 +7374,40 @@ def _list_saas_subscription_details_initial(self, **kwargs: Any) -> Iterator[byt } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.VirtualNetworkAddress, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - @distributed_trace - def begin_list_saas_subscription_details(self, **kwargs: Any) -> LROPoller[_models.SaasSubscriptionDetails]: - """List Saas Subscription Details. - - :return: An instance of LROPoller that returns SaasSubscriptionDetails. The - SaasSubscriptionDetails is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.SaasSubscriptionDetails] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[_models.SaasSubscriptionDetails] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._list_saas_subscription_details_initial( - cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response = pipeline_response.http_response - deserialized = _deserialize(_models.SaasSubscriptionDetails, response.json()) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.SaasSubscriptionDetails].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.SaasSubscriptionDetails]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _list_activation_links_initial(self, **kwargs: Any) -> Iterator[bytes]: + def _delete_initial( + self, resource_group_name: str, cloudvmclustername: str, virtualnetworkaddressname: str, **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -7788,7 +7421,10 @@ def _list_activation_links_initial(self, **kwargs: Any) -> Iterator[bytes]: cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_oracle_subscriptions_list_activation_links_request( + _request = build_virtual_network_addresses_delete_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + virtualnetworkaddressname=virtualnetworkaddressname, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -7799,6 +7435,7 @@ def _list_activation_links_initial(self, **kwargs: Any) -> Iterator[bytes]: } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -7806,13 +7443,16 @@ def _list_activation_links_initial(self, **kwargs: Any) -> Iterator[bytes]: response = pipeline_response.http_response - if response.status_code not in [200, 202]: + if response.status_code not in [202, 204]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -7820,7 +7460,7 @@ def _list_activation_links_initial(self, **kwargs: Any) -> Iterator[bytes]: response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -7828,34 +7468,45 @@ def _list_activation_links_initial(self, **kwargs: Any) -> Iterator[bytes]: return deserialized # type: ignore @distributed_trace - def begin_list_activation_links(self, **kwargs: Any) -> LROPoller[_models.ActivationLinks]: - """List Activation Links. + def begin_delete( + self, resource_group_name: str, cloudvmclustername: str, virtualnetworkaddressname: str, **kwargs: Any + ) -> LROPoller[None]: + """Delete a VirtualNetworkAddress. - :return: An instance of LROPoller that returns ActivationLinks. The ActivationLinks is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ActivationLinks] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param virtualnetworkaddressname: Virtual IP address hostname. Required. + :type virtualnetworkaddressname: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.ActivationLinks] = kwargs.pop("cls", None) + cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._list_activation_links_initial( - cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + virtualnetworkaddressname=virtualnetworkaddressname, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs ) raw_result.http_response.read() # type: ignore kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): - response = pipeline_response.http_response - deserialized = _deserialize(_models.ActivationLinks, response.json()) + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized + return cls(pipeline_response, None, {}) # type: ignore path_format_arguments = { "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), @@ -7870,38 +7521,34 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.ActivationLinks].from_continuation_token( + return LROPoller[None].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.ActivationLinks]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + def list_by_parent( + self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any + ) -> ItemPaged["_models.VirtualNetworkAddress"]: + """List VirtualNetworkAddress resources by CloudVmCluster. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :return: An iterator like instance of VirtualNetworkAddress + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.VirtualNetworkAddress] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.VirtualNetworkAddress]] = kwargs.pop("cls", None) - @api_version_validation( - method_added_on="2024-06-01-preview", - params_added_on={"2024-06-01-preview": ["api_version", "subscription_id", "content_type"]}, - api_versions_list=[ - "2024-06-01-preview", - "2024-06-01", - "2024-08-01-preview", - "2024-10-01-preview", - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def _add_azure_subscriptions_initial( - self, body: Union[_models.AzureSubscriptions, JSON, IO[bytes]], **kwargs: Any - ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -7910,188 +7557,89 @@ def _add_azure_subscriptions_initial( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} + def prepare_request(next_link=None): + if not next_link: - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + _request = build_virtual_network_addresses_list_by_parent_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - content_type = content_type or "application/json" - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - _request = build_oracle_subscriptions_add_azure_subscriptions_request( - subscription_id=self._config.subscription_id, - content_type=content_type, - api_version=self._config.api_version, - content=_content, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + return _request - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.VirtualNetworkAddress], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) - response = pipeline_response.http_response + def get_next(next_link=None): + _request = prepare_request(next_link) - if response.status_code not in [202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response - response_headers = {} - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_add_azure_subscriptions( - self, body: _models.AzureSubscriptions, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[None]: - """Add Azure Subscriptions. - - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.AzureSubscriptions - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_add_azure_subscriptions( - self, body: JSON, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[None]: - """Add Azure Subscriptions. - - :param body: The content of the action request. Required. - :type body: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_add_azure_subscriptions( - self, body: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[None]: - """Add Azure Subscriptions. - - :param body: The content of the action request. Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - @api_version_validation( - method_added_on="2024-06-01-preview", - params_added_on={"2024-06-01-preview": ["api_version", "subscription_id", "content_type"]}, - api_versions_list=[ - "2024-06-01-preview", - "2024-06-01", - "2024-08-01-preview", - "2024-10-01-preview", - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def begin_add_azure_subscriptions( - self, body: Union[_models.AzureSubscriptions, JSON, IO[bytes]], **kwargs: Any - ) -> LROPoller[None]: - """Add Azure Subscriptions. - - :param body: The content of the action request. Is one of the following types: - AzureSubscriptions, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.AzureSubscriptions or JSON or IO[bytes] - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._add_azure_subscriptions_initial( - body=body, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } + return pipeline_response - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + return ItemPaged(get_next, extract_data) -class DbNodesOperations: +class SystemVersionsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`db_nodes` attribute. + :attr:`system_versions` attribute. """ def __init__(self, *args, **kwargs) -> None: @@ -8102,18 +7650,15 @@ def __init__(self, *args, **kwargs) -> None: self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def get(self, resource_group_name: str, cloudvmclustername: str, dbnodeocid: str, **kwargs: Any) -> _models.DbNode: - """Get a DbNode. + def get(self, location: str, systemversionname: str, **kwargs: Any) -> _models.SystemVersion: + """Get a SystemVersion. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param dbnodeocid: DbNode OCID. Required. - :type dbnodeocid: str - :return: DbNode. The DbNode is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.DbNode + :param location: The name of the Azure region. Required. + :type location: str + :param systemversionname: SystemVersion name. Required. + :type systemversionname: str + :return: SystemVersion. The SystemVersion is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.SystemVersion :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -8127,12 +7672,11 @@ def get(self, resource_group_name: str, cloudvmclustername: str, dbnodeocid: str _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.DbNode] = kwargs.pop("cls", None) + cls: ClsType[_models.SystemVersion] = kwargs.pop("cls", None) - _request = build_db_nodes_get_request( - resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, - dbnodeocid=dbnodeocid, + _request = build_system_versions_get_request( + location=location, + systemversionname=systemversionname, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -8143,6 +7687,7 @@ def get(self, resource_group_name: str, cloudvmclustername: str, dbnodeocid: str } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -8157,13 +7702,16 @@ def get(self, resource_group_name: str, cloudvmclustername: str, dbnodeocid: str except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.DbNode, response.json()) + deserialized = _deserialize(_models.SystemVersion, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -8171,24 +7719,19 @@ def get(self, resource_group_name: str, cloudvmclustername: str, dbnodeocid: str return deserialized # type: ignore @distributed_trace - def list_by_parent( - self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any - ) -> ItemPaged["_models.DbNode"]: - """List DbNode resources by CloudVmCluster. + def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.SystemVersion"]: + """List SystemVersion resources by SubscriptionLocationResource. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :return: An iterator like instance of DbNode - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbNode] + :param location: The name of the Azure region. Required. + :type location: str + :return: An iterator like instance of SystemVersion + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.SystemVersion] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.DbNode]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.SystemVersion]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -8201,9 +7744,8 @@ def list_by_parent( def prepare_request(next_link=None): if not next_link: - _request = build_db_nodes_list_by_parent_request( - resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, + _request = build_system_versions_list_by_location_request( + location=location, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -8227,7 +7769,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -8240,7 +7785,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbNode], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.SystemVersion], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -8256,21 +7804,47 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return ItemPaged(get_next, extract_data) - def _action_initial( - self, - resource_group_name: str, - cloudvmclustername: str, - dbnodeocid: str, - body: Union[_models.DbNodeAction, JSON, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: + +class OracleSubscriptionsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`oracle_subscriptions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.OracleSubscription"]: + """List OracleSubscription resources by subscription ID. + + :return: An iterator like instance of OracleSubscription + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.OracleSubscription] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.OracleSubscription]] = kwargs.pop("cls", None) + error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -8279,26 +7853,106 @@ def _action_initial( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + def prepare_request(next_link=None): + if not next_link: - content_type = content_type or "application/json" - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _request = build_oracle_subscriptions_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - _request = build_db_nodes_action_request( - resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, - dbnodeocid=dbnodeocid, - subscription_id=self._config.subscription_id, - content_type=content_type, - api_version=self._config.api_version, + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.OracleSubscription], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + def _create_or_update_initial( + self, resource: Union[_models.OracleSubscription, _types.OracleSubscription, IO[bytes]], **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(resource, (IOBase, bytes)): + _content = resource + else: + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_oracle_subscriptions_create_or_update_request( + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, content=_content, headers=_headers, params=_params, @@ -8308,6 +7962,7 @@ def _action_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -8315,21 +7970,26 @@ def _action_initial( response = pipeline_response.http_response - if response.status_code not in [200, 202]: + if response.status_code not in [200, 201]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -8337,138 +7997,82 @@ def _action_initial( return deserialized # type: ignore @overload - def begin_action( - self, - resource_group_name: str, - cloudvmclustername: str, - dbnodeocid: str, - body: _models.DbNodeAction, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.DbNode]: - """VM actions on DbNode of VM Cluster by the provided filter. + def begin_create_or_update( + self, resource: _models.OracleSubscription, *, content_type: str = "application/json", **kwargs: Any + ) -> LROPoller[_models.OracleSubscription]: + """Create a OracleSubscription. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param dbnodeocid: DbNode OCID. Required. - :type dbnodeocid: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.OracleSubscription :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbNode. The DbNode is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbNode] + :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_action( - self, - resource_group_name: str, - cloudvmclustername: str, - dbnodeocid: str, - body: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.DbNode]: - """VM actions on DbNode of VM Cluster by the provided filter. + def begin_create_or_update( + self, resource: _types.OracleSubscription, *, content_type: str = "application/json", **kwargs: Any + ) -> LROPoller[_models.OracleSubscription]: + """Create a OracleSubscription. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param dbnodeocid: DbNode OCID. Required. - :type dbnodeocid: str - :param body: The content of the action request. Required. - :type body: JSON + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.OracleSubscription :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbNode. The DbNode is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbNode] + :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_action( - self, - resource_group_name: str, - cloudvmclustername: str, - dbnodeocid: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.DbNode]: - """VM actions on DbNode of VM Cluster by the provided filter. + def begin_create_or_update( + self, resource: IO[bytes], *, content_type: str = "application/json", **kwargs: Any + ) -> LROPoller[_models.OracleSubscription]: + """Create a OracleSubscription. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param dbnodeocid: DbNode OCID. Required. - :type dbnodeocid: str - :param body: The content of the action request. Required. - :type body: IO[bytes] + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbNode. The DbNode is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbNode] + :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def begin_action( - self, - resource_group_name: str, - cloudvmclustername: str, - dbnodeocid: str, - body: Union[_models.DbNodeAction, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.DbNode]: - """VM actions on DbNode of VM Cluster by the provided filter. + def begin_create_or_update( + self, resource: Union[_models.OracleSubscription, _types.OracleSubscription, IO[bytes]], **kwargs: Any + ) -> LROPoller[_models.OracleSubscription]: + """Create a OracleSubscription. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param cloudvmclustername: CloudVmCluster name. Required. - :type cloudvmclustername: str - :param dbnodeocid: DbNode OCID. Required. - :type dbnodeocid: str - :param body: The content of the action request. Is one of the following types: DbNodeAction, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction or JSON or IO[bytes] - :return: An instance of LROPoller that returns DbNode. The DbNode is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbNode] + :param resource: Resource create parameters. Is either a OracleSubscription type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.OracleSubscription or + ~azure.mgmt.oracledatabase.types.OracleSubscription or IO[bytes] + :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DbNode] = kwargs.pop("cls", None) + cls: ClsType[_models.OracleSubscription] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._action_initial( - resource_group_name=resource_group_name, - cloudvmclustername=cloudvmclustername, - dbnodeocid=dbnodeocid, - body=body, + raw_result = self._create_or_update_initial( + resource=resource, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -8479,14 +8083,10 @@ def begin_action( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = _deserialize(_models.DbNode, response.json()) + deserialized = _deserialize(_models.OracleSubscription, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -8502,44 +8102,22 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.DbNode].from_continuation_token( + return LROPoller[_models.OracleSubscription].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.DbNode]( + return LROPoller[_models.OracleSubscription]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - -class GiVersionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`gi_versions` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - @distributed_trace - def get(self, location: str, giversionname: str, **kwargs: Any) -> _models.GiVersion: - """Get a GiVersion. + def get(self, **kwargs: Any) -> _models.OracleSubscription: + """Get a OracleSubscription. - :param location: The name of the Azure region. Required. - :type location: str - :param giversionname: GiVersion name. Required. - :type giversionname: str - :return: GiVersion. The GiVersion is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.GiVersion + :return: OracleSubscription. The OracleSubscription is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.OracleSubscription :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -8553,11 +8131,9 @@ def get(self, location: str, giversionname: str, **kwargs: Any) -> _models.GiVer _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.GiVersion] = kwargs.pop("cls", None) + cls: ClsType[_models.OracleSubscription] = kwargs.pop("cls", None) - _request = build_gi_versions_get_request( - location=location, - giversionname=giversionname, + _request = build_oracle_subscriptions_get_request( subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -8568,6 +8144,7 @@ def get(self, location: str, giversionname: str, **kwargs: Any) -> _models.GiVer } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -8582,68 +8159,27 @@ def get(self, location: str, giversionname: str, **kwargs: Any) -> _models.GiVer except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.GiVersion, response.json()) + deserialized = _deserialize(_models.OracleSubscription, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - @distributed_trace - @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={ - "2024-12-01-preview": ["api_version", "subscription_id", "location", "shape", "zone", "accept"], - "2025-08-01-preview": ["shape_attribute"], - }, - api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def list_by_location( + def _update_initial( self, - location: str, - *, - shape: Optional[Union[str, _models.SystemShapes]] = None, - zone: Optional[str] = None, - shape_attribute: Optional[str] = None, + properties: Union[_models.OracleSubscriptionUpdate, _types.OracleSubscriptionUpdate, IO[bytes]], **kwargs: Any - ) -> ItemPaged["_models.GiVersion"]: - """List GiVersion resources by SubscriptionLocationResource. - - :param location: The name of the Azure region. Required. - :type location: str - :keyword shape: If provided, filters the results for the given shape. Known values are: - "Exadata.X9M", "Exadata.X11M", and "ExaDbXS". Default value is None. - :paramtype shape: str or ~azure.mgmt.oracledatabase.models.SystemShapes - :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. - :paramtype zone: str - :keyword shape_attribute: Filters the result for the given Shape Attribute, such as - BLOCK_STORAGE or SMART_STORAGE. Default value is None. - :paramtype shape_attribute: str - :return: An iterator like instance of GiVersion - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.GiVersion] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.GiVersion]] = kwargs.pop("cls", None) - + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -8652,147 +8188,183 @@ def list_by_location( } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} - _request = build_gi_versions_list_by_location_request( - location=location, - subscription_id=self._config.subscription_id, - shape=shape, - zone=zone, - shape_attribute=shape_attribute, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + content_type = content_type or "application/json" + _content = None + if isinstance(properties, (IOBase, bytes)): + _content = properties + else: + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - return _request + _request = build_oracle_subscriptions_update_request( + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.GiVersion], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) - def get_next(next_link=None): - _request = prepare_request(next_link) + response = pipeline_response.http_response - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, ) - response = pipeline_response.http_response + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - return pipeline_response + deserialized = response.iter_bytes() if _decompress else response.iter_raw() - return ItemPaged(get_next, extract_data) + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + return deserialized # type: ignore -class GiMinorVersionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. + @overload + def begin_update( + self, properties: _models.OracleSubscriptionUpdate, *, content_type: str = "application/json", **kwargs: Any + ) -> LROPoller[_models.OracleSubscription]: + """Update a OracleSubscription. - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`gi_minor_versions` attribute. - """ + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.OracleSubscriptionUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :raises ~azure.core.exceptions.HttpResponseError: + """ - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + @overload + def begin_update( + self, properties: _types.OracleSubscriptionUpdate, *, content_type: str = "application/json", **kwargs: Any + ) -> LROPoller[_models.OracleSubscription]: + """Update a OracleSubscription. + + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.OracleSubscriptionUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, properties: IO[bytes], *, content_type: str = "application/json", **kwargs: Any + ) -> LROPoller[_models.OracleSubscription]: + """Update a OracleSubscription. + + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] + :raises ~azure.core.exceptions.HttpResponseError: + """ @distributed_trace - @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "location", - "giversionname", - "shape_family", - "zone", - "accept", - ] - }, - api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def list_by_parent( + def begin_update( self, - location: str, - giversionname: str, - *, - shape_family: Optional[Union[str, _models.ShapeFamily]] = None, - zone: Optional[str] = None, + properties: Union[_models.OracleSubscriptionUpdate, _types.OracleSubscriptionUpdate, IO[bytes]], **kwargs: Any - ) -> ItemPaged["_models.GiMinorVersion"]: - """List GiMinorVersion resources by GiVersion. + ) -> LROPoller[_models.OracleSubscription]: + """Update a OracleSubscription. - :param location: The name of the Azure region. Required. - :type location: str - :param giversionname: GiVersion name. Required. - :type giversionname: str - :keyword shape_family: If provided, filters the results to the set of database versions which - are supported for the given shape family. Known values are: "EXADATA" and "EXADB_XS". Default - value is None. - :paramtype shape_family: str or ~azure.mgmt.oracledatabase.models.ShapeFamily - :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. - :paramtype zone: str - :return: An iterator like instance of GiMinorVersion - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.GiMinorVersion] + :param properties: The resource properties to be updated. Is either a OracleSubscriptionUpdate + type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.OracleSubscriptionUpdate or + ~azure.mgmt.oracledatabase.types.OracleSubscriptionUpdate or IO[bytes] + :return: An instance of LROPoller that returns OracleSubscription. The OracleSubscription is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.OracleSubscription] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.GiMinorVersion]] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.OracleSubscription] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._update_initial( + properties=properties, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.OracleSubscription, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.OracleSubscription].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.OracleSubscription]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + def _delete_initial(self, **kwargs: Any) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -8801,113 +8373,4191 @@ def list_by_parent( } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} - _request = build_gi_minor_versions_list_by_parent_request( - location=location, - giversionname=giversionname, - subscription_id=self._config.subscription_id, - shape_family=shape_family, - zone=zone, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + _request = build_oracle_subscriptions_delete_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - return _request + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.GiMinorVersion], deserialized.get("value", [])) + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_delete(self, **kwargs: Any) -> LROPoller[None]: + """Delete a OracleSubscription. + + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial(cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + return cls(pipeline_response, None, {}) # type: ignore - def get_next(next_link=None): - _request = prepare_request(next_link) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) ) - response = pipeline_response.http_response + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + def _list_cloud_account_details_initial(self, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) - return pipeline_response + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} - return ItemPaged(get_next, extract_data) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_oracle_subscriptions_list_cloud_account_details_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore @distributed_trace - @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "location", - "giversionname", - "gi_minor_version_name", - "accept", - ] - }, - api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def get( - self, location: str, giversionname: str, gi_minor_version_name: str, **kwargs: Any - ) -> _models.GiMinorVersion: - """Get a GiMinorVersion. + def begin_list_cloud_account_details(self, **kwargs: Any) -> LROPoller[_models.CloudAccountDetails]: + """List Cloud Account Details. + + :return: An instance of LROPoller that returns CloudAccountDetails. The CloudAccountDetails is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.CloudAccountDetails] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.CloudAccountDetails] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._list_cloud_account_details_initial( + cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.CloudAccountDetails, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.CloudAccountDetails].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.CloudAccountDetails]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + def _list_saas_subscription_details_initial(self, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_oracle_subscriptions_list_saas_subscription_details_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_list_saas_subscription_details(self, **kwargs: Any) -> LROPoller[_models.SaasSubscriptionDetails]: + """List Saas Subscription Details. + + :return: An instance of LROPoller that returns SaasSubscriptionDetails. The + SaasSubscriptionDetails is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.SaasSubscriptionDetails] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.SaasSubscriptionDetails] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._list_saas_subscription_details_initial( + cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.SaasSubscriptionDetails, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.SaasSubscriptionDetails].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.SaasSubscriptionDetails]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + def _list_activation_links_initial(self, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_oracle_subscriptions_list_activation_links_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_list_activation_links(self, **kwargs: Any) -> LROPoller[_models.ActivationLinks]: + """List Activation Links. + + :return: An instance of LROPoller that returns ActivationLinks. The ActivationLinks is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ActivationLinks] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.ActivationLinks] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._list_activation_links_initial( + cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.ActivationLinks, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.ActivationLinks].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.ActivationLinks]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2024-06-01-preview", + params_added_on={"2024-06-01-preview": ["api_version", "subscription_id", "content_type"]}, + api_versions_list=[ + "2024-06-01-preview", + "2024-06-01", + "2024-08-01-preview", + "2024-10-01-preview", + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _add_azure_subscriptions_initial( + self, body: Union[_models.AzureSubscriptions, _types.AzureSubscriptions, IO[bytes]], **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_oracle_subscriptions_add_azure_subscriptions_request( + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_add_azure_subscriptions( + self, body: _models.AzureSubscriptions, *, content_type: str = "application/json", **kwargs: Any + ) -> LROPoller[None]: + """Add Azure Subscriptions. + + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AzureSubscriptions + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_add_azure_subscriptions( + self, body: _types.AzureSubscriptions, *, content_type: str = "application/json", **kwargs: Any + ) -> LROPoller[None]: + """Add Azure Subscriptions. + + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AzureSubscriptions + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_add_azure_subscriptions( + self, body: IO[bytes], *, content_type: str = "application/json", **kwargs: Any + ) -> LROPoller[None]: + """Add Azure Subscriptions. + + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + @api_version_validation( + method_added_on="2024-06-01-preview", + params_added_on={"2024-06-01-preview": ["api_version", "subscription_id", "content_type"]}, + api_versions_list=[ + "2024-06-01-preview", + "2024-06-01", + "2024-08-01-preview", + "2024-10-01-preview", + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_add_azure_subscriptions( + self, body: Union[_models.AzureSubscriptions, _types.AzureSubscriptions, IO[bytes]], **kwargs: Any + ) -> LROPoller[None]: + """Add Azure Subscriptions. + + :param body: The content of the action request. Is either a AzureSubscriptions type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AzureSubscriptions or + ~azure.mgmt.oracledatabase.types.AzureSubscriptions or IO[bytes] + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._add_azure_subscriptions_initial( + body=body, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + +class DbNodesOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`db_nodes` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, resource_group_name: str, cloudvmclustername: str, dbnodeocid: str, **kwargs: Any) -> _models.DbNode: + """Get a DbNode. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param dbnodeocid: DbNode OCID. Required. + :type dbnodeocid: str + :return: DbNode. The DbNode is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DbNode + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.DbNode] = kwargs.pop("cls", None) + + _request = build_db_nodes_get_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + dbnodeocid=dbnodeocid, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DbNode, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_parent( + self, resource_group_name: str, cloudvmclustername: str, **kwargs: Any + ) -> ItemPaged["_models.DbNode"]: + """List DbNode resources by CloudVmCluster. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :return: An iterator like instance of DbNode + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbNode] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DbNode]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_db_nodes_list_by_parent_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DbNode], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + def _action_initial( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: Union[_models.DbNodeAction, _types.DbNodeAction, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_db_nodes_action_request( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + dbnodeocid=dbnodeocid, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: _models.DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DbNode]: + """VM actions on DbNode of VM Cluster by the provided filter. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param dbnodeocid: DbNode OCID. Required. + :type dbnodeocid: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DbNode. The DbNode is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbNode] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: _types.DbNodeAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DbNode]: + """VM actions on DbNode of VM Cluster by the provided filter. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param dbnodeocid: DbNode OCID. Required. + :type dbnodeocid: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.DbNodeAction + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DbNode. The DbNode is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbNode] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DbNode]: + """VM actions on DbNode of VM Cluster by the provided filter. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param dbnodeocid: DbNode OCID. Required. + :type dbnodeocid: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DbNode. The DbNode is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbNode] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_action( + self, + resource_group_name: str, + cloudvmclustername: str, + dbnodeocid: str, + body: Union[_models.DbNodeAction, _types.DbNodeAction, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.DbNode]: + """VM actions on DbNode of VM Cluster by the provided filter. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param cloudvmclustername: CloudVmCluster name. Required. + :type cloudvmclustername: str + :param dbnodeocid: DbNode OCID. Required. + :type dbnodeocid: str + :param body: The content of the action request. Is either a DbNodeAction type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction or + ~azure.mgmt.oracledatabase.types.DbNodeAction or IO[bytes] + :return: An instance of LROPoller that returns DbNode. The DbNode is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbNode] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DbNode] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._action_initial( + resource_group_name=resource_group_name, + cloudvmclustername=cloudvmclustername, + dbnodeocid=dbnodeocid, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.DbNode, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.DbNode].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.DbNode]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + +class GiVersionsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`gi_versions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, location: str, giversionname: str, **kwargs: Any) -> _models.GiVersion: + """Get a GiVersion. + + :param location: The name of the Azure region. Required. + :type location: str + :param giversionname: GiVersion name. Required. + :type giversionname: str + :return: GiVersion. The GiVersion is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.GiVersion + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.GiVersion] = kwargs.pop("cls", None) + + _request = build_gi_versions_get_request( + location=location, + giversionname=giversionname, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GiVersion, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": ["api_version", "subscription_id", "location", "shape", "zone", "accept"], + "2025-08-01-preview": ["shape_attribute"], + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_location( + self, + location: str, + *, + shape: Optional[Union[str, _models.SystemShapes]] = None, + zone: Optional[str] = None, + shape_attribute: Optional[str] = None, + **kwargs: Any + ) -> ItemPaged["_models.GiVersion"]: + """List GiVersion resources by SubscriptionLocationResource. + + :param location: The name of the Azure region. Required. + :type location: str + :keyword shape: If provided, filters the results for the given shape. Known values are: + "Exadata.X9M", "Exadata.X11M", "Exadata.X11MV", and "ExaDbXS". Default value is None. + :paramtype shape: str or ~azure.mgmt.oracledatabase.models.SystemShapes + :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. + :paramtype zone: str + :keyword shape_attribute: Filters the result for the given Shape Attribute, such as + BLOCK_STORAGE or SMART_STORAGE. Default value is None. + :paramtype shape_attribute: str + :return: An iterator like instance of GiVersion + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.GiVersion] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.GiVersion]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_gi_versions_list_by_location_request( + location=location, + subscription_id=self._config.subscription_id, + shape=shape, + zone=zone, + shape_attribute=shape_attribute, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GiVersion], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class GiMinorVersionsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`gi_minor_versions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "location", + "giversionname", + "shape_family", + "zone", + "accept", + ], + "2026-04-01-preview": ["shape", "is_gi_version_for_provisioning", "sort_order"], + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_parent( + self, + location: str, + giversionname: str, + *, + shape_family: Optional[Union[str, _models.ShapeFamily]] = None, + zone: Optional[str] = None, + shape: Optional[str] = None, + is_gi_version_for_provisioning: Optional[bool] = None, + sort_order: Optional[Union[str, _models.GiMinorVersionSortOrder]] = None, + **kwargs: Any + ) -> ItemPaged["_models.GiMinorVersion"]: + """List GiMinorVersion resources by GiVersion. + + :param location: The name of the Azure region. Required. + :type location: str + :param giversionname: GiVersion name. Required. + :type giversionname: str + :keyword shape_family: If provided, filters the results to the set of database versions which + are supported for the given shape family. Known values are: "EXADATA" and "EXADB_XS". Default + value is None. + :paramtype shape_family: str or ~azure.mgmt.oracledatabase.models.ShapeFamily + :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. + :paramtype zone: str + :keyword shape: If provided, filters the results to the set of GI minor versions supported for + the given shape. Default value is None. + :paramtype shape: str + :keyword is_gi_version_for_provisioning: If true, filters the results to GI minor versions + supported during VM cluster provisioning. Default value is None. + :paramtype is_gi_version_for_provisioning: bool + :keyword sort_order: Sort order for the returned GI minor versions. Known values are: "ASC" and + "DESC". Default value is None. + :paramtype sort_order: str or ~azure.mgmt.oracledatabase.models.GiMinorVersionSortOrder + :return: An iterator like instance of GiMinorVersion + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.GiMinorVersion] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.GiMinorVersion]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_gi_minor_versions_list_by_parent_request( + location=location, + giversionname=giversionname, + subscription_id=self._config.subscription_id, + shape_family=shape_family, + zone=zone, + shape=shape, + is_gi_version_for_provisioning=is_gi_version_for_provisioning, + sort_order=sort_order, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GiMinorVersion], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "location", + "giversionname", + "gi_minor_version_name", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def get( + self, location: str, giversionname: str, gi_minor_version_name: str, **kwargs: Any + ) -> _models.GiMinorVersion: + """Get a GiMinorVersion. + + :param location: The name of the Azure region. Required. + :type location: str + :param giversionname: GiVersion name. Required. + :type giversionname: str + :param gi_minor_version_name: The name of the GiMinorVersion. Required. + :type gi_minor_version_name: str + :return: GiMinorVersion. The GiMinorVersion is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.GiMinorVersion + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.GiMinorVersion] = kwargs.pop("cls", None) + + _request = build_gi_minor_versions_get_request( + location=location, + giversionname=giversionname, + gi_minor_version_name=gi_minor_version_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GiMinorVersion, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class DbSystemShapesOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`db_system_shapes` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, location: str, dbsystemshapename: str, **kwargs: Any) -> _models.DbSystemShape: + """Get a DbSystemShape. + + :param location: The name of the Azure region. Required. + :type location: str + :param dbsystemshapename: DbSystemShape name. Required. + :type dbsystemshapename: str + :return: DbSystemShape. The DbSystemShape is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DbSystemShape + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.DbSystemShape] = kwargs.pop("cls", None) + + _request = build_db_system_shapes_get_request( + location=location, + dbsystemshapename=dbsystemshapename, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DbSystemShape, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": ["api_version", "subscription_id", "location", "zone", "accept"], + "2025-08-01-preview": ["shape_attribute"], + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_location( + self, location: str, *, zone: Optional[str] = None, shape_attribute: Optional[str] = None, **kwargs: Any + ) -> ItemPaged["_models.DbSystemShape"]: + """List DbSystemShape resources by SubscriptionLocationResource. + + :param location: The name of the Azure region. Required. + :type location: str + :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. + :paramtype zone: str + :keyword shape_attribute: Filters the result for the given Shape Attribute, such as + BLOCK_STORAGE or SMART_STORAGE. Default value is None. + :paramtype shape_attribute: str + :return: An iterator like instance of DbSystemShape + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbSystemShape] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DbSystemShape]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_db_system_shapes_list_by_location_request( + location=location, + subscription_id=self._config.subscription_id, + zone=zone, + shape_attribute=shape_attribute, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DbSystemShape], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class DnsPrivateViewsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`dns_private_views` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, location: str, dnsprivateviewocid: str, **kwargs: Any) -> _models.DnsPrivateView: + """Get a DnsPrivateView. + + :param location: The name of the Azure region. Required. + :type location: str + :param dnsprivateviewocid: DnsPrivateView OCID. Required. + :type dnsprivateviewocid: str + :return: DnsPrivateView. The DnsPrivateView is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DnsPrivateView + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.DnsPrivateView] = kwargs.pop("cls", None) + + _request = build_dns_private_views_get_request( + location=location, + dnsprivateviewocid=dnsprivateviewocid, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DnsPrivateView, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.DnsPrivateView"]: + """List DnsPrivateView resources by SubscriptionLocationResource. + + :param location: The name of the Azure region. Required. + :type location: str + :return: An iterator like instance of DnsPrivateView + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DnsPrivateView] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DnsPrivateView]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_dns_private_views_list_by_location_request( + location=location, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DnsPrivateView], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class DnsPrivateZonesOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`dns_private_zones` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, location: str, dnsprivatezonename: str, **kwargs: Any) -> _models.DnsPrivateZone: + """Get a DnsPrivateZone. + + :param location: The name of the Azure region. Required. + :type location: str + :param dnsprivatezonename: DnsPrivateZone name. Required. + :type dnsprivatezonename: str + :return: DnsPrivateZone. The DnsPrivateZone is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DnsPrivateZone + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.DnsPrivateZone] = kwargs.pop("cls", None) + + _request = build_dns_private_zones_get_request( + location=location, + dnsprivatezonename=dnsprivatezonename, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DnsPrivateZone, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.DnsPrivateZone"]: + """List DnsPrivateZone resources by SubscriptionLocationResource. + + :param location: The name of the Azure region. Required. + :type location: str + :return: An iterator like instance of DnsPrivateZone + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DnsPrivateZone] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DnsPrivateZone]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_dns_private_zones_list_by_location_request( + location=location, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DnsPrivateZone], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class FlexComponentsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`flex_components` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + @api_version_validation( + method_added_on="2025-01-01-preview", + params_added_on={ + "2025-01-01-preview": ["api_version", "subscription_id", "location", "flex_component_name", "accept"] + }, + api_versions_list=[ + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def get(self, location: str, flex_component_name: str, **kwargs: Any) -> _models.FlexComponent: + """Get a FlexComponent. + + :param location: The name of the Azure region. Required. + :type location: str + :param flex_component_name: The name of the FlexComponent. Required. + :type flex_component_name: str + :return: FlexComponent. The FlexComponent is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.FlexComponent + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.FlexComponent] = kwargs.pop("cls", None) + + _request = build_flex_components_get_request( + location=location, + flex_component_name=flex_component_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.FlexComponent, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2025-01-01-preview", + params_added_on={"2025-01-01-preview": ["api_version", "subscription_id", "location", "shape", "accept"]}, + api_versions_list=[ + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_parent( + self, location: str, *, shape: Optional[Union[str, _models.SystemShapes]] = None, **kwargs: Any + ) -> ItemPaged["_models.FlexComponent"]: + """List FlexComponent resources by SubscriptionLocationResource. + + :param location: The name of the Azure region. Required. + :type location: str + :keyword shape: If provided, filters the results for the given shape. Known values are: + "Exadata.X9M", "Exadata.X11M", "Exadata.X11MV", and "ExaDbXS". Default value is None. + :paramtype shape: str or ~azure.mgmt.oracledatabase.models.SystemShapes + :return: An iterator like instance of FlexComponent + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.FlexComponent] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.FlexComponent]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_flex_components_list_by_parent_request( + location=location, + subscription_id=self._config.subscription_id, + shape=shape, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.FlexComponent], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class AutonomousDatabasesOperations: # pylint: disable=docstring-missing-param,too-many-public-methods + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`autonomous_databases` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.AutonomousDatabase"]: + """List AutonomousDatabase resources by subscription ID. + + :return: An iterator like instance of AutonomousDatabase + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.AutonomousDatabase]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_autonomous_databases_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AutonomousDatabase], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + def _create_or_update_initial( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: Union[_models.AutonomousDatabase, _types.AutonomousDatabase, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(resource, (IOBase, bytes)): + _content = resource + else: + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_autonomous_databases_create_or_update_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 201]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: _models.AutonomousDatabase, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Create a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabase + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: _types.AutonomousDatabase, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Create a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.AutonomousDatabase + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Create a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + resource: Union[_models.AutonomousDatabase, _types.AutonomousDatabase, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Create a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param resource: Resource create parameters. Is either a AutonomousDatabase type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabase or + ~azure.mgmt.oracledatabase.types.AutonomousDatabase or IO[bytes] + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + resource=resource, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AutonomousDatabase].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AutonomousDatabase]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def get(self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any) -> _models.AutonomousDatabase: + """Get a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :return: AutonomousDatabase. The AutonomousDatabase is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabase + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + + _request = build_autonomous_databases_get_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _delete_initial(self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_autonomous_databases_delete_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_delete(self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any) -> LROPoller[None]: + """Delete a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + def _update_initial( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: Union[_models.AutonomousDatabaseUpdate, _types.AutonomousDatabaseUpdate, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(properties, (IOBase, bytes)): + _content = properties + else: + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_autonomous_databases_update_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: _models.AutonomousDatabaseUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Update a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: _types.AutonomousDatabaseUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Update a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.AutonomousDatabaseUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Update a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + properties: Union[_models.AutonomousDatabaseUpdate, _types.AutonomousDatabaseUpdate, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Update a AutonomousDatabase. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param properties: The resource properties to be updated. Is either a AutonomousDatabaseUpdate + type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseUpdate or + ~azure.mgmt.oracledatabase.types.AutonomousDatabaseUpdate or IO[bytes] + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._update_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + properties=properties, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AutonomousDatabase].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AutonomousDatabase]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @distributed_trace + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> ItemPaged["_models.AutonomousDatabase"]: + """List AutonomousDatabase resources by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of AutonomousDatabase + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.AutonomousDatabase]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_autonomous_databases_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AutonomousDatabase], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + def _switchover_initial( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[_models.PeerDbDetails, _types.PeerDbDetails, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_autonomous_databases_switchover_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _models.PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform switchover action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _types.PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform switchover action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.PeerDbDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform switchover action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_switchover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[_models.PeerDbDetails, _types.PeerDbDetails, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform switchover action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Is either a PeerDbDetails type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails or + ~azure.mgmt.oracledatabase.types.PeerDbDetails or IO[bytes] + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._switchover_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AutonomousDatabase].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AutonomousDatabase]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + def _failover_initial( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[_models.PeerDbDetails, _types.PeerDbDetails, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_autonomous_databases_failover_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _models.PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform failover action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _types.PeerDbDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform failover action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.PeerDbDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform failover action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_failover( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[_models.PeerDbDetails, _types.PeerDbDetails, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform failover action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Is either a PeerDbDetails type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails or + ~azure.mgmt.oracledatabase.types.PeerDbDetails or IO[bytes] + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._failover_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AutonomousDatabase].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AutonomousDatabase]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @overload + def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _models.GenerateAutonomousDatabaseWalletDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutonomousDatabaseWalletFile: + """Generate wallet action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.GenerateAutonomousDatabaseWalletDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutonomousDatabaseWalletFile. The AutonomousDatabaseWalletFile is compatible with + MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _types.GenerateAutonomousDatabaseWalletDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutonomousDatabaseWalletFile: + """Generate wallet action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.GenerateAutonomousDatabaseWalletDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: AutonomousDatabaseWalletFile. The AutonomousDatabaseWalletFile is compatible with + MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> _models.AutonomousDatabaseWalletFile: + """Generate wallet action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: AutonomousDatabaseWalletFile. The AutonomousDatabaseWalletFile is compatible with + MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def generate_wallet( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[ + _models.GenerateAutonomousDatabaseWalletDetails, _types.GenerateAutonomousDatabaseWalletDetails, IO[bytes] + ], + **kwargs: Any + ) -> _models.AutonomousDatabaseWalletFile: + """Generate wallet action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Is either a + GenerateAutonomousDatabaseWalletDetails type or a IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.GenerateAutonomousDatabaseWalletDetails or + ~azure.mgmt.oracledatabase.types.GenerateAutonomousDatabaseWalletDetails or IO[bytes] + :return: AutonomousDatabaseWalletFile. The AutonomousDatabaseWalletFile is compatible with + MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile + :raises ~azure.core.exceptions.HttpResponseError: + """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutonomousDatabaseWalletFile] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_autonomous_databases_generate_wallet_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutonomousDatabaseWalletFile, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + def _restore_initial( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[_models.RestoreAutonomousDatabaseDetails, _types.RestoreAutonomousDatabaseDetails, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_autonomous_databases_restore_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _models.RestoreAutonomousDatabaseDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Restores an Autonomous Database based on the provided request parameters. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.RestoreAutonomousDatabaseDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _types.RestoreAutonomousDatabaseDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Restores an Autonomous Database based on the provided request parameters. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.RestoreAutonomousDatabaseDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Restores an Autonomous Database based on the provided request parameters. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + def begin_restore( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[_models.RestoreAutonomousDatabaseDetails, _types.RestoreAutonomousDatabaseDetails, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Restores an Autonomous Database based on the provided request parameters. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Is either a RestoreAutonomousDatabaseDetails + type or a IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.RestoreAutonomousDatabaseDetails or + ~azure.mgmt.oracledatabase.types.RestoreAutonomousDatabaseDetails or IO[bytes] + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._restore_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AutonomousDatabase].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AutonomousDatabase]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) - :param location: The name of the Azure region. Required. - :type location: str - :param giversionname: GiVersion name. Required. - :type giversionname: str - :param gi_minor_version_name: The name of the GiMinorVersion. Required. - :type gi_minor_version_name: str - :return: GiMinorVersion. The GiMinorVersion is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.GiMinorVersion - :raises ~azure.core.exceptions.HttpResponseError: - """ + def _shrink_initial(self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -8919,12 +12569,11 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.GiMinorVersion] = kwargs.pop("cls", None) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_gi_minor_versions_get_request( - location=location, - giversionname=giversionname, - gi_minor_version_name=gi_minor_version_name, + _request = build_autonomous_databases_shrink_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -8935,63 +12584,147 @@ def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) + _decompress = kwargs.pop("decompress", True) + _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.GiMinorVersion, response.json()) + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore + @distributed_trace + def begin_shrink( + self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """This operation shrinks the current allocated storage down to the current actual used data + storage. -class DbSystemShapesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`db_system_shapes` attribute. - """ + cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._shrink_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized - @distributed_trace - def get(self, location: str, dbsystemshapename: str, **kwargs: Any) -> _models.DbSystemShape: - """Get a DbSystemShape. + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } - :param location: The name of the Azure region. Required. - :type location: str - :param dbsystemshapename: DbSystemShape name. Required. - :type dbsystemshapename: str - :return: DbSystemShape. The DbSystemShape is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.DbSystemShape - :raises ~azure.core.exceptions.HttpResponseError: - """ + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AutonomousDatabase].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AutonomousDatabase]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2024-10-01-preview", + params_added_on={ + "2024-10-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "autonomousdatabasename", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-10-01-preview", + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _change_disaster_recovery_configuration_initial( # pylint: disable=name-too-long + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[ + _models.DisasterRecoveryConfigurationDetails, _types.DisasterRecoveryConfigurationDetails, IO[bytes] + ], + **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -9000,16 +12733,26 @@ def get(self, location: str, dbsystemshapename: str, **kwargs: Any) -> _models.D } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.DbSystemShape] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_db_system_shapes_get_request( - location=location, - dbsystemshapename=dbsystemshapename, + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_autonomous_databases_change_disaster_recovery_configuration_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, subscription_id=self._config.subscription_id, + content_type=content_type, api_version=self._config.api_version, + content=_content, headers=_headers, params=_params, ) @@ -9018,41 +12761,137 @@ def get(self, location: str, dbsystemshapename: str, **kwargs: Any) -> _models.D } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) + _decompress = kwargs.pop("decompress", True) + _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.DbSystemShape, response.json()) + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-long + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _models.DisasterRecoveryConfigurationDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.DisasterRecoveryConfigurationDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-long + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _types.DisasterRecoveryConfigurationDetails, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.DisasterRecoveryConfigurationDetails + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + @overload + def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-long + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database. - return deserialized # type: ignore + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2024-10-01-preview", params_added_on={ - "2024-12-01-preview": ["api_version", "subscription_id", "location", "zone", "accept"], - "2025-08-01-preview": ["shape_attribute"], + "2024-10-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "autonomousdatabasename", + "content_type", + "accept", + ] }, api_versions_list=[ + "2024-10-01-preview", "2024-12-01-preview", "2025-01-01-preview", "2025-03-01", @@ -9062,133 +12901,130 @@ def get(self, location: str, dbsystemshapename: str, **kwargs: Any) -> _models.D "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def list_by_location( - self, location: str, *, zone: Optional[str] = None, shape_attribute: Optional[str] = None, **kwargs: Any - ) -> ItemPaged["_models.DbSystemShape"]: - """List DbSystemShape resources by SubscriptionLocationResource. + def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-long + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[ + _models.DisasterRecoveryConfigurationDetails, _types.DisasterRecoveryConfigurationDetails, IO[bytes] + ], + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database. - :param location: The name of the Azure region. Required. - :type location: str - :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. - :paramtype zone: str - :keyword shape_attribute: Filters the result for the given Shape Attribute, such as - BLOCK_STORAGE or SMART_STORAGE. Default value is None. - :paramtype shape_attribute: str - :return: An iterator like instance of DbSystemShape - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbSystemShape] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Is either a + DisasterRecoveryConfigurationDetails type or a IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.DisasterRecoveryConfigurationDetails or + ~azure.mgmt.oracledatabase.types.DisasterRecoveryConfigurationDetails or IO[bytes] + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.DbSystemShape]] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_db_system_shapes_list_by_location_request( - location=location, - subscription_id=self._config.subscription_id, - zone=zone, - shape_attribute=shape_attribute, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - return _request + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._change_disaster_recovery_configuration_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbSystemShape], deserialized.get("value", [])) + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AutonomousDatabase, response.json()) if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized - def get_next(next_link=None): - _request = prepare_request(next_link) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - -class DnsPrivateViewsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`dns_private_views` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, location: str, dnsprivateviewocid: str, **kwargs: Any) -> _models.DnsPrivateView: - """Get a DnsPrivateView. + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AutonomousDatabase].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AutonomousDatabase]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) - :param location: The name of the Azure region. Required. - :type location: str - :param dnsprivateviewocid: DnsPrivateView OCID. Required. - :type dnsprivateviewocid: str - :return: DnsPrivateView. The DnsPrivateView is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.DnsPrivateView - :raises ~azure.core.exceptions.HttpResponseError: - """ + @api_version_validation( + method_added_on="2025-06-01-preview", + params_added_on={ + "2025-06-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "autonomousdatabasename", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _action_initial( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[_models.AutonomousDatabaseLifecycleAction, _types.AutonomousDatabaseLifecycleAction, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -9197,16 +13033,26 @@ def get(self, location: str, dnsprivateviewocid: str, **kwargs: Any) -> _models. } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.DnsPrivateView] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_dns_private_views_get_request( - location=location, - dnsprivateviewocid=dnsprivateviewocid, + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_autonomous_databases_action_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, subscription_id=self._config.subscription_id, + content_type=content_type, api_version=self._config.api_version, + content=_content, headers=_headers, params=_params, ) @@ -9215,129 +13061,236 @@ def get(self, location: str, dnsprivateviewocid: str, **kwargs: Any) -> _models. } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) + _decompress = kwargs.pop("decompress", True) + _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.DnsPrivateView, response.json()) + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore - @distributed_trace - def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.DnsPrivateView"]: - """List DnsPrivateView resources by SubscriptionLocationResource. + @overload + def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _models.AutonomousDatabaseLifecycleAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform Lifecycle Management Action on Autonomous Database. - :param location: The name of the Azure region. Required. - :type location: str - :return: An iterator like instance of DnsPrivateView - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DnsPrivateView] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseLifecycleAction + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.DnsPrivateView]] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: + @overload + def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: _types.AutonomousDatabaseLifecycleAction, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform Lifecycle Management Action on Autonomous Database. - _request = build_dns_private_views_list_by_location_request( - location=location, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AutonomousDatabaseLifecycleAction + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + @overload + def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform Lifecycle Management Action on Autonomous Database. - return _request + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DnsPrivateView], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + @distributed_trace + @api_version_validation( + method_added_on="2025-06-01-preview", + params_added_on={ + "2025-06-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "autonomousdatabasename", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_action( + self, + resource_group_name: str, + autonomousdatabasename: str, + body: Union[_models.AutonomousDatabaseLifecycleAction, _types.AutonomousDatabaseLifecycleAction, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabase]: + """Perform Lifecycle Management Action on Autonomous Database. - def get_next(next_link=None): - _request = prepare_request(next_link) + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param body: The content of the action request. Is either a AutonomousDatabaseLifecycleAction + type or a IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseLifecycleAction or + ~azure.mgmt.oracledatabase.types.AutonomousDatabaseLifecycleAction or IO[bytes] + :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._action_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs ) - response = pipeline_response.http_response + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized - return pipeline_response + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } - return ItemPaged(get_next, extract_data) + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AutonomousDatabase].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AutonomousDatabase]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) -class DnsPrivateZonesOperations: +class AutonomousDatabaseBackupsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`dns_private_zones` attribute. + :attr:`autonomous_database_backups` attribute. """ def __init__(self, *args, **kwargs) -> None: @@ -9347,18 +13300,14 @@ def __init__(self, *args, **kwargs) -> None: self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - @distributed_trace - def get(self, location: str, dnsprivatezonename: str, **kwargs: Any) -> _models.DnsPrivateZone: - """Get a DnsPrivateZone. - - :param location: The name of the Azure region. Required. - :type location: str - :param dnsprivatezonename: DnsPrivateZone name. Required. - :type dnsprivatezonename: str - :return: DnsPrivateZone. The DnsPrivateZone is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.DnsPrivateZone - :raises ~azure.core.exceptions.HttpResponseError: - """ + def _create_or_update_initial( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: Union[_models.AutonomousDatabaseBackup, _types.AutonomousDatabaseBackup, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -9367,16 +13316,27 @@ def get(self, location: str, dnsprivatezonename: str, **kwargs: Any) -> _models. } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.DnsPrivateZone] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_dns_private_zones_get_request( - location=location, - dnsprivatezonename=dnsprivatezonename, + content_type = content_type or "application/json" + _content = None + if isinstance(resource, (IOBase, bytes)): + _content = resource + else: + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_autonomous_database_backups_create_or_update_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + adbbackupid=adbbackupid, subscription_id=self._config.subscription_id, + content_type=content_type, api_version=self._config.api_version, + content=_content, headers=_headers, params=_params, ) @@ -9385,164 +13345,233 @@ def get(self, location: str, dnsprivatezonename: str, **kwargs: Any) -> _models. } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) + _decompress = kwargs.pop("decompress", True) + _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200, 201]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.DnsPrivateZone, response.json()) + response_headers = {} + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore - @distributed_trace - def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.DnsPrivateZone"]: - """List DnsPrivateZone resources by SubscriptionLocationResource. + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: _models.AutonomousDatabaseBackup, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabaseBackup]: + """Create a AutonomousDatabaseBackup. - :param location: The name of the Azure region. Required. - :type location: str - :return: An iterator like instance of DnsPrivateZone - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DnsPrivateZone] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The + AutonomousDatabaseBackup is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.DnsPrivateZone]] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: _types.AutonomousDatabaseBackup, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabaseBackup]: + """Create a AutonomousDatabaseBackup. - _request = build_dns_private_zones_list_by_location_request( - location=location, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.AutonomousDatabaseBackup + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The + AutonomousDatabaseBackup is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :raises ~azure.core.exceptions.HttpResponseError: + """ - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + @overload + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabaseBackup]: + """Create a AutonomousDatabaseBackup. - return _request + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The + AutonomousDatabaseBackup is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :raises ~azure.core.exceptions.HttpResponseError: + """ - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DnsPrivateZone], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + @distributed_trace + def begin_create_or_update( + self, + resource_group_name: str, + autonomousdatabasename: str, + adbbackupid: str, + resource: Union[_models.AutonomousDatabaseBackup, _types.AutonomousDatabaseBackup, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AutonomousDatabaseBackup]: + """Create a AutonomousDatabaseBackup. - def get_next(next_link=None): - _request = prepare_request(next_link) + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :param resource: Resource create parameters. Is either a AutonomousDatabaseBackup type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup or + ~azure.mgmt.oracledatabase.types.AutonomousDatabaseBackup or IO[bytes] + :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The + AutonomousDatabaseBackup is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AutonomousDatabaseBackup] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + adbbackupid=adbbackupid, + resource=resource, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) -class FlexComponentsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AutonomousDatabaseBackup, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`flex_components` attribute. - """ + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AutonomousDatabaseBackup].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AutonomousDatabaseBackup]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) @distributed_trace - @api_version_validation( - method_added_on="2025-01-01-preview", - params_added_on={ - "2025-01-01-preview": ["api_version", "subscription_id", "location", "flex_component_name", "accept"] - }, - api_versions_list=[ - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def get(self, location: str, flex_component_name: str, **kwargs: Any) -> _models.FlexComponent: - """Get a FlexComponent. + def get( + self, resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, **kwargs: Any + ) -> _models.AutonomousDatabaseBackup: + """Get a AutonomousDatabaseBackup. - :param location: The name of the Azure region. Required. - :type location: str - :param flex_component_name: The name of the FlexComponent. Required. - :type flex_component_name: str - :return: FlexComponent. The FlexComponent is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.FlexComponent + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :return: AutonomousDatabaseBackup. The AutonomousDatabaseBackup is compatible with + MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -9556,11 +13585,12 @@ def get(self, location: str, flex_component_name: str, **kwargs: Any) -> _models _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.FlexComponent] = kwargs.pop("cls", None) + cls: ClsType[_models.AutonomousDatabaseBackup] = kwargs.pop("cls", None) - _request = build_flex_components_get_request( - location=location, - flex_component_name=flex_component_name, + _request = build_autonomous_database_backups_get_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + adbbackupid=adbbackupid, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -9571,6 +13601,7 @@ def get(self, location: str, flex_component_name: str, **kwargs: Any) -> _models } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -9585,157 +13616,25 @@ def get(self, location: str, flex_component_name: str, **kwargs: Any) -> _models except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.FlexComponent, response.json()) + deserialized = _deserialize(_models.AutonomousDatabaseBackup, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized # type: ignore - - @distributed_trace - @api_version_validation( - method_added_on="2025-01-01-preview", - params_added_on={"2025-01-01-preview": ["api_version", "subscription_id", "location", "shape", "accept"]}, - api_versions_list=[ - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def list_by_parent( - self, location: str, *, shape: Optional[Union[str, _models.SystemShapes]] = None, **kwargs: Any - ) -> ItemPaged["_models.FlexComponent"]: - """List FlexComponent resources by SubscriptionLocationResource. - - :param location: The name of the Azure region. Required. - :type location: str - :keyword shape: If provided, filters the results for the given shape. Known values are: - "Exadata.X9M", "Exadata.X11M", and "ExaDbXS". Default value is None. - :paramtype shape: str or ~azure.mgmt.oracledatabase.models.SystemShapes - :return: An iterator like instance of FlexComponent - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.FlexComponent] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.FlexComponent]] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_flex_components_list_by_parent_request( - location=location, - subscription_id=self._config.subscription_id, - shape=shape, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - return _request - - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.FlexComponent], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - -class AutonomousDatabasesOperations: # pylint: disable=too-many-public-methods - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`autonomous_databases` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.AutonomousDatabase"]: - """List AutonomousDatabase resources by subscription ID. - - :return: An iterator like instance of AutonomousDatabase - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.AutonomousDatabase]] = kwargs.pop("cls", None) + return deserialized # type: ignore + def _delete_initial( + self, resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -9744,74 +13643,125 @@ def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.AutonomousDa } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} - _request = build_autonomous_databases_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + _request = build_autonomous_database_backups_delete_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + adbbackupid=adbbackupid, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - return _request + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDatabase], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + response = pipeline_response.http_response - def get_next(next_link=None): - _request = prepare_request(next_link) + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + def begin_delete( + self, resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, **kwargs: Any + ) -> LROPoller[None]: + """Delete a AutonomousDatabaseBackup. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param autonomousdatabasename: The database name. Required. + :type autonomousdatabasename: str + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + adbbackupid=adbbackupid, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs ) - response = pipeline_response.http_response + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore - return pipeline_response + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } - return ItemPaged(get_next, extract_data) + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - def _create_or_update_initial( + def _update_initial( self, resource_group_name: str, autonomousdatabasename: str, - resource: Union[_models.AutonomousDatabase, JSON, IO[bytes]], + adbbackupid: str, + properties: Union[_models.AutonomousDatabaseBackupUpdate, _types.AutonomousDatabaseBackupUpdate, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -9830,14 +13780,15 @@ def _create_or_update_initial( content_type = content_type or "application/json" _content = None - if isinstance(resource, (IOBase, bytes)): - _content = resource + if isinstance(properties, (IOBase, bytes)): + _content = properties else: - _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_autonomous_databases_create_or_update_request( + _request = build_autonomous_database_backups_update_request( resource_group_name=resource_group_name, autonomousdatabasename=autonomousdatabasename, + adbbackupid=adbbackupid, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -9850,6 +13801,7 @@ def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -9857,23 +13809,24 @@ def _create_or_update_initial( response = pipeline_response.http_response - if response.status_code not in [200, 201]: + if response.status_code not in [200, 202]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 201: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -9881,125 +13834,143 @@ def _create_or_update_initial( return deserialized # type: ignore @overload - def begin_create_or_update( + def begin_update( self, resource_group_name: str, autonomousdatabasename: str, - resource: _models.AutonomousDatabase, + adbbackupid: str, + properties: _models.AutonomousDatabaseBackupUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Create a AutonomousDatabase. + ) -> LROPoller[_models.AutonomousDatabaseBackup]: + """Update a AutonomousDatabaseBackup. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabase + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The + AutonomousDatabaseBackup is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( + def begin_update( self, resource_group_name: str, autonomousdatabasename: str, - resource: JSON, + adbbackupid: str, + properties: _types.AutonomousDatabaseBackupUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Create a AutonomousDatabase. + ) -> LROPoller[_models.AutonomousDatabaseBackup]: + """Update a AutonomousDatabaseBackup. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param resource: Resource create parameters. Required. - :type resource: JSON + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.AutonomousDatabaseBackupUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The + AutonomousDatabaseBackup is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( + def begin_update( self, resource_group_name: str, autonomousdatabasename: str, - resource: IO[bytes], + adbbackupid: str, + properties: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Create a AutonomousDatabase. + ) -> LROPoller[_models.AutonomousDatabaseBackup]: + """Update a AutonomousDatabaseBackup. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param resource: Resource create parameters. Required. - :type resource: IO[bytes] + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The + AutonomousDatabaseBackup is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def begin_create_or_update( + def begin_update( self, resource_group_name: str, autonomousdatabasename: str, - resource: Union[_models.AutonomousDatabase, JSON, IO[bytes]], + adbbackupid: str, + properties: Union[_models.AutonomousDatabaseBackupUpdate, _types.AutonomousDatabaseBackupUpdate, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Create a AutonomousDatabase. + ) -> LROPoller[_models.AutonomousDatabaseBackup]: + """Update a AutonomousDatabaseBackup. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :param resource: Resource create parameters. Is one of the following types: AutonomousDatabase, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabase or JSON or IO[bytes] - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :param adbbackupid: AutonomousDatabaseBackup id. Required. + :type adbbackupid: str + :param properties: The resource properties to be updated. Is either a + AutonomousDatabaseBackupUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupUpdate or + ~azure.mgmt.oracledatabase.types.AutonomousDatabaseBackupUpdate or IO[bytes] + :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The + AutonomousDatabaseBackup is compatible with MutableMapping + :rtype: + ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + cls: ClsType[_models.AutonomousDatabaseBackup] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._create_or_update_initial( + raw_result = self._update_initial( resource_group_name=resource_group_name, autonomousdatabasename=autonomousdatabasename, - resource=resource, + adbbackupid=adbbackupid, + properties=properties, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -10011,7 +13982,7 @@ def begin_create_or_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + deserialized = _deserialize(_models.AutonomousDatabaseBackup, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -10029,29 +14000,37 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.AutonomousDatabase].from_continuation_token( + return LROPoller[_models.AutonomousDatabaseBackup].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.AutonomousDatabase]( + return LROPoller[_models.AutonomousDatabaseBackup]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) @distributed_trace - def get(self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any) -> _models.AutonomousDatabase: - """Get a AutonomousDatabase. + def list_by_parent( + self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any + ) -> ItemPaged["_models.AutonomousDatabaseBackup"]: + """List AutonomousDatabaseBackup resources by AutonomousDatabase. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str :param autonomousdatabasename: The database name. Required. :type autonomousdatabasename: str - :return: AutonomousDatabase. The AutonomousDatabase is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabase + :return: An iterator like instance of AutonomousDatabaseBackup + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.AutonomousDatabaseBackup]] = kwargs.pop("cls", None) + error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -10060,52 +14039,111 @@ def get(self, resource_group_name: str, autonomousdatabasename: str, **kwargs: A } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + def prepare_request(next_link=None): + if not next_link: - cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + _request = build_autonomous_database_backups_list_by_parent_request( + resource_group_name=resource_group_name, + autonomousdatabasename=autonomousdatabasename, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - _request = build_autonomous_databases_get_request( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) + return _request - response = pipeline_response.http_response + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AutonomousDatabaseBackup], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + def get_next(next_link=None): + _request = prepare_request(next_link) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - return deserialized # type: ignore + return pipeline_response - def _delete_initial(self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any) -> Iterator[bytes]: + return ItemPaged(get_next, extract_data) + + +class AutonomousDatabaseCharacterSetsOperations: # pylint: disable=docstring-missing-param,name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`autonomous_database_character_sets` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, location: str, adbscharsetname: str, **kwargs: Any) -> _models.AutonomousDatabaseCharacterSet: + """Get a AutonomousDatabaseCharacterSet. + + :param location: The name of the Azure region. Required. + :type location: str + :param adbscharsetname: AutonomousDatabaseCharacterSet name. Required. + :type adbscharsetname: str + :return: AutonomousDatabaseCharacterSet. The AutonomousDatabaseCharacterSet is compatible with + MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseCharacterSet + :raises ~azure.core.exceptions.HttpResponseError: + """ error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -10117,11 +14155,11 @@ def _delete_initial(self, resource_group_name: str, autonomousdatabasename: str, _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + cls: ClsType[_models.AutonomousDatabaseCharacterSet] = kwargs.pop("cls", None) - _request = build_autonomous_databases_delete_request( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + _request = build_autonomous_database_character_sets_get_request( + location=location, + adbscharsetname=adbscharsetname, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -10132,98 +14170,167 @@ def _delete_initial(self, resource_group_name: str, autonomousdatabasename: str, } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutonomousDatabaseCharacterSet, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore @distributed_trace - def begin_delete(self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any) -> LROPoller[None]: - """Delete a AutonomousDatabase. + def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.AutonomousDatabaseCharacterSet"]: + """List AutonomousDatabaseCharacterSet resources by SubscriptionLocationResource. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] + :param location: The name of the Azure region. Required. + :type location: str + :return: An iterator like instance of AutonomousDatabaseCharacterSet + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabaseCharacterSet] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) + cls: ClsType[List[_models.AutonomousDatabaseCharacterSet]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_autonomous_database_character_sets_list_by_location_request( + location=location, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AutonomousDatabaseCharacterSet], + deserialized.get("value", []), + ) if cls: - return cls(pipeline_response, None, {}) # type: ignore + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } + def get_next(next_link=None): + _request = prepare_request(next_link) - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + response = pipeline_response.http_response - def _update_initial( - self, - resource_group_name: str, - autonomousdatabasename: str, - properties: Union[_models.AutonomousDatabaseUpdate, JSON, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class AutonomousDatabaseNationalCharacterSetsOperations: # pylint: disable=docstring-missing-param,name-too-long + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`autonomous_database_national_character_sets` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get( + self, location: str, adbsncharsetname: str, **kwargs: Any + ) -> _models.AutonomousDatabaseNationalCharacterSet: + """Get a AutonomousDatabaseNationalCharacterSet. + + :param location: The name of the Azure region. Required. + :type location: str + :param adbsncharsetname: AutonomousDatabaseNationalCharacterSets name. Required. + :type adbsncharsetname: str + :return: AutonomousDatabaseNationalCharacterSet. The AutonomousDatabaseNationalCharacterSet is + compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseNationalCharacterSet + :raises ~azure.core.exceptions.HttpResponseError: + """ error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -10232,26 +14339,16 @@ def _update_initial( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _content = None - if isinstance(properties, (IOBase, bytes)): - _content = properties - else: - _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + cls: ClsType[_models.AutonomousDatabaseNationalCharacterSet] = kwargs.pop("cls", None) - _request = build_autonomous_databases_update_request( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + _request = build_autonomous_database_national_character_sets_get_request( + location=location, + adbsncharsetname=adbsncharsetname, subscription_id=self._config.subscription_id, - content_type=content_type, api_version=self._config.api_version, - content=_content, headers=_headers, params=_params, ) @@ -10260,211 +14357,54 @@ def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_update( - self, - resource_group_name: str, - autonomousdatabasename: str, - properties: _models.AutonomousDatabaseUpdate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Update a AutonomousDatabase. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseUpdate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - autonomousdatabasename: str, - properties: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Update a AutonomousDatabase. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param properties: The resource properties to be updated. Required. - :type properties: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - autonomousdatabasename: str, - properties: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Update a AutonomousDatabase. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param properties: The resource properties to be updated. Required. - :type properties: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_update( - self, - resource_group_name: str, - autonomousdatabasename: str, - properties: Union[_models.AutonomousDatabaseUpdate, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Update a AutonomousDatabase. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param properties: The resource properties to be updated. Is one of the following types: - AutonomousDatabaseUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseUpdate or JSON or - IO[bytes] - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._update_initial( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - properties=properties, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response = pipeline_response.http_response - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } + response = pipeline_response.http_response - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - polling_method = polling - if cont_token: - return LROPoller[_models.AutonomousDatabase].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.AutonomousDatabase]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + deserialized = _deserialize(_models.AutonomousDatabaseNationalCharacterSet, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> ItemPaged["_models.AutonomousDatabase"]: - """List AutonomousDatabase resources by resource group. + def list_by_location( + self, location: str, **kwargs: Any + ) -> ItemPaged["_models.AutonomousDatabaseNationalCharacterSet"]: + """List AutonomousDatabaseNationalCharacterSet resources by SubscriptionLocationResource. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :return: An iterator like instance of AutonomousDatabase - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :param location: The name of the Azure region. Required. + :type location: str + :return: An iterator like instance of AutonomousDatabaseNationalCharacterSet + :rtype: + ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabaseNationalCharacterSet] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.AutonomousDatabase]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.AutonomousDatabaseNationalCharacterSet]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -10477,8 +14417,8 @@ def list_by_resource_group( def prepare_request(next_link=None): if not next_link: - _request = build_autonomous_databases_list_by_resource_group_request( - resource_group_name=resource_group_name, + _request = build_autonomous_database_national_character_sets_list_by_location_request( + location=location, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -10502,7 +14442,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -10515,7 +14458,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDatabase], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.AutonomousDatabaseNationalCharacterSet], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -10531,20 +14477,46 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return ItemPaged(get_next, extract_data) - def _switchover_initial( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.PeerDbDetails, JSON, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: + +class AutonomousDatabaseVersionsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`autonomous_database_versions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + def get(self, location: str, autonomousdbversionsname: str, **kwargs: Any) -> _models.AutonomousDbVersion: + """Get a AutonomousDbVersion. + + :param location: The name of the Azure region. Required. + :type location: str + :param autonomousdbversionsname: AutonomousDbVersion name. Required. + :type autonomousdbversionsname: str + :return: AutonomousDbVersion. The AutonomousDbVersion is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDbVersion + :raises ~azure.core.exceptions.HttpResponseError: + """ error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -10553,26 +14525,16 @@ def _switchover_initial( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + cls: ClsType[_models.AutonomousDbVersion] = kwargs.pop("cls", None) - _request = build_autonomous_databases_switchover_request( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + _request = build_autonomous_database_versions_get_request( + location=location, + autonomousdbversionsname=autonomousdbversionsname, subscription_id=self._config.subscription_id, - content_type=content_type, api_version=self._config.api_version, - content=_content, headers=_headers, params=_params, ) @@ -10581,202 +14543,306 @@ def _switchover_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.AutonomousDbVersion, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - @overload - def begin_switchover( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: _models.PeerDbDetails, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform switchover action on Autonomous Database. + @distributed_trace + def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.AutonomousDbVersion"]: + """List AutonomousDbVersion resources by SubscriptionLocationResource. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :param location: The name of the Azure region. Required. + :type location: str + :return: An iterator like instance of AutonomousDbVersion + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDbVersion] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} - @overload - def begin_switchover( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform switchover action on Autonomous Database. + cls: ClsType[List[_models.AutonomousDbVersion]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_autonomous_database_versions_list_by_location_request( + location=location, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AutonomousDbVersion], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ + return pipeline_response - @overload - def begin_switchover( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform switchover action on Autonomous Database. + return ItemPaged(get_next, extract_data) - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ + +class ExadbVmClustersOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`exadb_vm_clusters` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def begin_switchover( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.PeerDbDetails, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform switchover action on Autonomous Database. + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={"2024-12-01-preview": ["api_version", "subscription_id", "accept"]}, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ExadbVmCluster"]: + """List ExadbVmCluster resources by subscription ID. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: PeerDbDetails, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails or JSON or IO[bytes] - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An iterator like instance of ExadbVmCluster + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._switchover_initial( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - body=body, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) + cls: ClsType[List[_models.ExadbVmCluster]] = kwargs.pop("cls", None) - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized + def prepare_request(next_link=None): + if not next_link: - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } + _request = build_exadb_vm_clusters_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ExadbVmCluster], + deserialized.get("value", []), ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.AutonomousDatabase].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs ) - return LROPoller[_models.AutonomousDatabase]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + response = pipeline_response.http_response - def _failover_initial( + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exadb_vm_cluster_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _create_or_update_initial( self, resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.PeerDbDetails, JSON, IO[bytes]], + exadb_vm_cluster_name: str, + resource: Union[_models.ExadbVmCluster, _types.ExadbVmCluster, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -10795,14 +14861,14 @@ def _failover_initial( content_type = content_type or "application/json" _content = None - if isinstance(body, (IOBase, bytes)): - _content = body + if isinstance(resource, (IOBase, bytes)): + _content = resource else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_autonomous_databases_failover_request( + _request = build_exadb_vm_clusters_create_or_update_request( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + exadb_vm_cluster_name=exadb_vm_cluster_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -10815,6 +14881,7 @@ def _failover_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -10822,21 +14889,26 @@ def _failover_initial( response = pipeline_response.http_response - if response.status_code not in [200, 202]: + if response.status_code not in [200, 201]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -10844,125 +14916,159 @@ def _failover_initial( return deserialized # type: ignore @overload - def begin_failover( + def begin_create_or_update( self, resource_group_name: str, - autonomousdatabasename: str, - body: _models.PeerDbDetails, + exadb_vm_cluster_name: str, + resource: _models.ExadbVmCluster, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform failover action on Autonomous Database. + ) -> LROPoller[_models.ExadbVmCluster]: + """Create a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.ExadbVmCluster :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_failover( + def begin_create_or_update( self, resource_group_name: str, - autonomousdatabasename: str, - body: JSON, + exadb_vm_cluster_name: str, + resource: _types.ExadbVmCluster, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform failover action on Autonomous Database. + ) -> LROPoller[_models.ExadbVmCluster]: + """Create a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: JSON + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.ExadbVmCluster :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_failover( + def begin_create_or_update( self, resource_group_name: str, - autonomousdatabasename: str, - body: IO[bytes], + exadb_vm_cluster_name: str, + resource: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform failover action on Autonomous Database. + ) -> LROPoller[_models.ExadbVmCluster]: + """Create a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: IO[bytes] + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def begin_failover( + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exadb_vm_cluster_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_create_or_update( self, resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.PeerDbDetails, JSON, IO[bytes]], + exadb_vm_cluster_name: str, + resource: Union[_models.ExadbVmCluster, _types.ExadbVmCluster, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform failover action on Autonomous Database. + ) -> LROPoller[_models.ExadbVmCluster]: + """Create a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: PeerDbDetails, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.PeerDbDetails or JSON or IO[bytes] - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param resource: Resource create parameters. Is either a ExadbVmCluster type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.ExadbVmCluster or + ~azure.mgmt.oracledatabase.types.ExadbVmCluster or IO[bytes] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + cls: ClsType[_models.ExadbVmCluster] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._failover_initial( + raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - body=body, + exadb_vm_cluster_name=exadb_vm_cluster_name, + resource=resource, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -10973,14 +15079,10 @@ def begin_failover( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + deserialized = _deserialize(_models.ExadbVmCluster, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -10996,122 +15098,59 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.AutonomousDatabase].from_continuation_token( + return LROPoller[_models.ExadbVmCluster].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.AutonomousDatabase]( + return LROPoller[_models.ExadbVmCluster]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - @overload - def generate_wallet( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: _models.GenerateAutonomousDatabaseWalletDetails, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AutonomousDatabaseWalletFile: - """Generate wallet action on Autonomous Database. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.GenerateAutonomousDatabaseWalletDetails - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AutonomousDatabaseWalletFile. The AutonomousDatabaseWalletFile is compatible with - MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def generate_wallet( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AutonomousDatabaseWalletFile: - """Generate wallet action on Autonomous Database. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AutonomousDatabaseWalletFile. The AutonomousDatabaseWalletFile is compatible with - MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def generate_wallet( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AutonomousDatabaseWalletFile: - """Generate wallet action on Autonomous Database. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AutonomousDatabaseWalletFile. The AutonomousDatabaseWalletFile is compatible with - MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile - :raises ~azure.core.exceptions.HttpResponseError: - """ - @distributed_trace - def generate_wallet( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.GenerateAutonomousDatabaseWalletDetails, JSON, IO[bytes]], - **kwargs: Any - ) -> _models.AutonomousDatabaseWalletFile: - """Generate wallet action on Autonomous Database. + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exadb_vm_cluster_name", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: Any) -> _models.ExadbVmCluster: + """Get a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: - GenerateAutonomousDatabaseWalletDetails, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.GenerateAutonomousDatabaseWalletDetails or JSON - or IO[bytes] - :return: AutonomousDatabaseWalletFile. The AutonomousDatabaseWalletFile is compatible with - MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseWalletFile + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :return: ExadbVmCluster. The ExadbVmCluster is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.ExadbVmCluster :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -11122,26 +15161,16 @@ def generate_wallet( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabaseWalletFile] = kwargs.pop("cls", None) + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} - content_type = content_type or "application/json" - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + cls: ClsType[_models.ExadbVmCluster] = kwargs.pop("cls", None) - _request = build_autonomous_databases_generate_wallet_request( + _request = build_exadb_vm_clusters_get_request( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + exadb_vm_cluster_name=exadb_vm_cluster_name, subscription_id=self._config.subscription_id, - content_type=content_type, api_version=self._config.api_version, - content=_content, headers=_headers, params=_params, ) @@ -11150,6 +15179,7 @@ def generate_wallet( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -11164,24 +15194,60 @@ def generate_wallet( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.AutonomousDatabaseWalletFile, response.json()) + deserialized = _deserialize(_models.ExadbVmCluster, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - def _restore_initial( + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exadb_vm_cluster_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _update_initial( self, resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.RestoreAutonomousDatabaseDetails, JSON, IO[bytes]], + exadb_vm_cluster_name: str, + properties: Union[_models.ExadbVmClusterUpdate, _types.ExadbVmClusterUpdate, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -11200,14 +15266,14 @@ def _restore_initial( content_type = content_type or "application/json" _content = None - if isinstance(body, (IOBase, bytes)): - _content = body + if isinstance(properties, (IOBase, bytes)): + _content = properties else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_autonomous_databases_restore_request( + _request = build_exadb_vm_clusters_update_request( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + exadb_vm_cluster_name=exadb_vm_cluster_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -11220,6 +15286,7 @@ def _restore_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -11233,7 +15300,10 @@ def _restore_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -11241,7 +15311,7 @@ def _restore_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -11249,126 +15319,159 @@ def _restore_initial( return deserialized # type: ignore @overload - def begin_restore( + def begin_update( self, resource_group_name: str, - autonomousdatabasename: str, - body: _models.RestoreAutonomousDatabaseDetails, + exadb_vm_cluster_name: str, + properties: _models.ExadbVmClusterUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Restores an Autonomous Database based on the provided request parameters. + ) -> LROPoller[_models.ExadbVmCluster]: + """Update a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.RestoreAutonomousDatabaseDetails + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_restore( + def begin_update( self, resource_group_name: str, - autonomousdatabasename: str, - body: JSON, + exadb_vm_cluster_name: str, + properties: _types.ExadbVmClusterUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Restores an Autonomous Database based on the provided request parameters. + ) -> LROPoller[_models.ExadbVmCluster]: + """Update a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: JSON + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.ExadbVmClusterUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_restore( + def begin_update( self, resource_group_name: str, - autonomousdatabasename: str, - body: IO[bytes], + exadb_vm_cluster_name: str, + properties: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Restores an Autonomous Database based on the provided request parameters. + ) -> LROPoller[_models.ExadbVmCluster]: + """Update a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: IO[bytes] + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def begin_restore( + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exadb_vm_cluster_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_update( self, resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.RestoreAutonomousDatabaseDetails, JSON, IO[bytes]], + exadb_vm_cluster_name: str, + properties: Union[_models.ExadbVmClusterUpdate, _types.ExadbVmClusterUpdate, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Restores an Autonomous Database based on the provided request parameters. + ) -> LROPoller[_models.ExadbVmCluster]: + """Update a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: - RestoreAutonomousDatabaseDetails, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.RestoreAutonomousDatabaseDetails or JSON or - IO[bytes] - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param properties: The resource properties to be updated. Is either a ExadbVmClusterUpdate type + or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterUpdate or + ~azure.mgmt.oracledatabase.types.ExadbVmClusterUpdate or IO[bytes] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + cls: ClsType[_models.ExadbVmCluster] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._restore_initial( + raw_result = self._update_initial( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - body=body, + exadb_vm_cluster_name=exadb_vm_cluster_name, + properties=properties, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -11379,14 +15482,10 @@ def begin_restore( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + deserialized = _deserialize(_models.ExadbVmCluster, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -11402,17 +15501,43 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.AutonomousDatabase].from_continuation_token( + return LROPoller[_models.ExadbVmCluster].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.AutonomousDatabase]( + return LROPoller[_models.ExadbVmCluster]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - def _shrink_initial(self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any) -> Iterator[bytes]: + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": ["api_version", "subscription_id", "resource_group_name", "exadb_vm_cluster_name"] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _delete_initial(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: Any) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -11426,9 +15551,9 @@ def _shrink_initial(self, resource_group_name: str, autonomousdatabasename: str, cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_autonomous_databases_shrink_request( + _request = build_exadb_vm_clusters_delete_request( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + exadb_vm_cluster_name=exadb_vm_cluster_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -11439,6 +15564,7 @@ def _shrink_initial(self, resource_group_name: str, autonomousdatabasename: str, } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -11446,13 +15572,16 @@ def _shrink_initial(self, resource_group_name: str, autonomousdatabasename: str, response = pipeline_response.http_response - if response.status_code not in [200, 202]: + if response.status_code not in [202, 204]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -11460,7 +15589,7 @@ def _shrink_initial(self, resource_group_name: str, autonomousdatabasename: str, response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -11468,51 +15597,66 @@ def _shrink_initial(self, resource_group_name: str, autonomousdatabasename: str, return deserialized # type: ignore @distributed_trace - def begin_shrink( - self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """This operation shrinks the current allocated storage down to the current actual used data - storage. + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": ["api_version", "subscription_id", "resource_group_name", "exadb_vm_cluster_name"] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_delete(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: Any) -> LROPoller[None]: + """Delete a ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._shrink_initial( + raw_result = self._delete_initial( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + exadb_vm_cluster_name=exadb_vm_cluster_name, cls=lambda x, y, z: x, headers=_headers, params=_params, **kwargs ) raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + kwargs.pop("error_map", None) - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized + return cls(pipeline_response, None, {}) # type: ignore path_format_arguments = { "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), @@ -11527,30 +15671,148 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.AutonomousDatabase].from_continuation_token( + return LROPoller[None].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.AutonomousDatabase]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + @distributed_trace @api_version_validation( - method_added_on="2024-10-01-preview", + method_added_on="2024-12-01-preview", + params_added_on={"2024-12-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.ExadbVmCluster"]: + """List ExadbVmCluster resources by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of ExadbVmCluster + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.ExadbVmCluster]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_exadb_vm_clusters_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ExadbVmCluster], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @api_version_validation( + method_added_on="2024-12-01-preview", params_added_on={ - "2024-10-01-preview": [ + "2024-12-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "autonomousdatabasename", + "exadb_vm_cluster_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-10-01-preview", "2024-12-01-preview", "2025-01-01-preview", "2025-03-01", @@ -11560,13 +15822,26 @@ def get_long_running_output(pipeline_response): "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def _change_disaster_recovery_configuration_initial( # pylint: disable=name-too-long + def _remove_vms_initial( self, resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.DisasterRecoveryConfigurationDetails, JSON, IO[bytes]], + exadb_vm_cluster_name: str, + body: Union[ + _models.RemoveVirtualMachineFromExadbVmClusterDetails, + _types.RemoveVirtualMachineFromExadbVmClusterDetails, + IO[bytes], + ], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -11590,9 +15865,9 @@ def _change_disaster_recovery_configuration_initial( # pylint: disable=name-too else: _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_autonomous_databases_change_disaster_recovery_configuration_request( + _request = build_exadb_vm_clusters_remove_vms_request( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + exadb_vm_cluster_name=exadb_vm_cluster_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -11605,6 +15880,7 @@ def _change_disaster_recovery_configuration_initial( # pylint: disable=name-too } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -11618,7 +15894,10 @@ def _change_disaster_recovery_configuration_initial( # pylint: disable=name-too except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -11626,7 +15905,7 @@ def _change_disaster_recovery_configuration_initial( # pylint: disable=name-too response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -11634,104 +15913,103 @@ def _change_disaster_recovery_configuration_initial( # pylint: disable=name-too return deserialized # type: ignore @overload - def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-long + def begin_remove_vms( self, resource_group_name: str, - autonomousdatabasename: str, - body: _models.DisasterRecoveryConfigurationDetails, + exadb_vm_cluster_name: str, + body: _models.RemoveVirtualMachineFromExadbVmClusterDetails, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database. + ) -> LROPoller[_models.ExadbVmCluster]: + """Remove VMs from the VM Cluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.DisasterRecoveryConfigurationDetails + :type body: ~azure.mgmt.oracledatabase.models.RemoveVirtualMachineFromExadbVmClusterDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-long + def begin_remove_vms( self, resource_group_name: str, - autonomousdatabasename: str, - body: JSON, + exadb_vm_cluster_name: str, + body: _types.RemoveVirtualMachineFromExadbVmClusterDetails, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database. + ) -> LROPoller[_models.ExadbVmCluster]: + """Remove VMs from the VM Cluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str :param body: The content of the action request. Required. - :type body: JSON + :type body: ~azure.mgmt.oracledatabase.types.RemoveVirtualMachineFromExadbVmClusterDetails :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-long + def begin_remove_vms( self, resource_group_name: str, - autonomousdatabasename: str, + exadb_vm_cluster_name: str, body: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database. + ) -> LROPoller[_models.ExadbVmCluster]: + """Remove VMs from the VM Cluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str :param body: The content of the action request. Required. :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace @api_version_validation( - method_added_on="2024-10-01-preview", + method_added_on="2024-12-01-preview", params_added_on={ - "2024-10-01-preview": [ + "2024-12-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "autonomousdatabasename", + "exadb_vm_cluster_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-10-01-preview", "2024-12-01-preview", "2025-01-01-preview", "2025-03-01", @@ -11741,43 +16019,56 @@ def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-lo "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-long + def begin_remove_vms( self, resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.DisasterRecoveryConfigurationDetails, JSON, IO[bytes]], + exadb_vm_cluster_name: str, + body: Union[ + _models.RemoveVirtualMachineFromExadbVmClusterDetails, + _types.RemoveVirtualMachineFromExadbVmClusterDetails, + IO[bytes], + ], **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database. + ) -> LROPoller[_models.ExadbVmCluster]: + """Remove VMs from the VM Cluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: - DisasterRecoveryConfigurationDetails, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.DisasterRecoveryConfigurationDetails or JSON or - IO[bytes] - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param body: The content of the action request. Is either a + RemoveVirtualMachineFromExadbVmClusterDetails type or a IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.RemoveVirtualMachineFromExadbVmClusterDetails or + ~azure.mgmt.oracledatabase.types.RemoveVirtualMachineFromExadbVmClusterDetails or IO[bytes] + :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) + cls: ClsType[_models.ExadbVmCluster] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._change_disaster_recovery_configuration_initial( + raw_result = self._remove_vms_initial( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + exadb_vm_cluster_name=exadb_vm_cluster_name, body=body, content_type=content_type, cls=lambda x, y, z: x, @@ -11789,14 +16080,10 @@ def begin_change_disaster_recovery_configuration( # pylint: disable=name-too-lo kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) + deserialized = _deserialize(_models.ExadbVmCluster, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -11812,43 +16099,84 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.AutonomousDatabase].from_continuation_token( + return LROPoller[_models.ExadbVmCluster].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.AutonomousDatabase]( + return LROPoller[_models.ExadbVmCluster]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) + +class ExascaleDbNodesOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`exascale_db_nodes` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace @api_version_validation( - method_added_on="2025-06-01-preview", + method_added_on="2024-12-01-preview", params_added_on={ - "2025-06-01-preview": [ + "2024-12-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "autonomousdatabasename", - "content_type", + "exadb_vm_cluster_name", + "exascale_db_node_name", "accept", ] }, api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def _action_initial( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.AutonomousDatabaseLifecycleAction, JSON, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: + def get( + self, resource_group_name: str, exadb_vm_cluster_name: str, exascale_db_node_name: str, **kwargs: Any + ) -> _models.ExascaleDbNode: + """Get a ExascaleDbNode. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param exascale_db_node_name: The name of the ExascaleDbNode. Required. + :type exascale_db_node_name: str + :return: ExascaleDbNode. The ExascaleDbNode is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.ExascaleDbNode + :raises ~azure.core.exceptions.HttpResponseError: + """ error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -11857,26 +16185,17 @@ def _action_initial( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _content = None - if isinstance(body, (IOBase, bytes)): - _content = body - else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + cls: ClsType[_models.ExascaleDbNode] = kwargs.pop("cls", None) - _request = build_autonomous_databases_action_request( + _request = build_exascale_db_nodes_get_request( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, + exadb_vm_cluster_name=exadb_vm_cluster_name, + exascale_db_node_name=exascale_db_node_name, subscription_id=self._config.subscription_id, - content_type=content_type, api_version=self._config.api_version, - content=_content, headers=_headers, params=_params, ) @@ -11885,242 +16204,211 @@ def _action_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ExascaleDbNode, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - @overload - def begin_action( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: _models.AutonomousDatabaseLifecycleAction, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform Lifecycle Management Action on Autonomous Database. + @distributed_trace + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exadb_vm_cluster_name", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_parent( + self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: Any + ) -> ItemPaged["_models.ExascaleDbNode"]: + """List ExascaleDbNode resources by ExadbVmCluster. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseLifecycleAction - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :return: An iterator like instance of ExascaleDbNode + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExascaleDbNode] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} - @overload - def begin_action( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform Lifecycle Management Action on Autonomous Database. + cls: ClsType[List[_models.ExascaleDbNode]] = kwargs.pop("cls", None) - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) - @overload - def begin_action( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform Lifecycle Management Action on Autonomous Database. + def prepare_request(next_link=None): + if not next_link: - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ + _request = build_exascale_db_nodes_list_by_parent_request( + resource_group_name=resource_group_name, + exadb_vm_cluster_name=exadb_vm_cluster_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ExascaleDbNode], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) - @distributed_trace @api_version_validation( - method_added_on="2025-06-01-preview", + method_added_on="2024-12-01-preview", params_added_on={ - "2025-06-01-preview": [ + "2024-12-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "autonomousdatabasename", + "exadb_vm_cluster_name", + "exascale_db_node_name", "content_type", "accept", ] }, api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def begin_action( - self, - resource_group_name: str, - autonomousdatabasename: str, - body: Union[_models.AutonomousDatabaseLifecycleAction, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabase]: - """Perform Lifecycle Management Action on Autonomous Database. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param body: The content of the action request. Is one of the following types: - AutonomousDatabaseLifecycleAction, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseLifecycleAction or JSON or - IO[bytes] - :return: An instance of LROPoller that returns AutonomousDatabase. The AutonomousDatabase is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabase] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabase] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._action_initial( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - body=body, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = _deserialize(_models.AutonomousDatabase, response.json()) - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized - - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.AutonomousDatabase].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.AutonomousDatabase]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - -class AutonomousDatabaseBackupsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`autonomous_database_backups` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - def _create_or_update_initial( + def _action_initial( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - resource: Union[_models.AutonomousDatabaseBackup, JSON, IO[bytes]], + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: Union[_models.DbNodeAction, _types.DbNodeAction, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -12139,15 +16427,15 @@ def _create_or_update_initial( content_type = content_type or "application/json" _content = None - if isinstance(resource, (IOBase, bytes)): - _content = resource + if isinstance(body, (IOBase, bytes)): + _content = body else: - _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_autonomous_database_backups_create_or_update_request( + _request = build_exascale_db_nodes_action_request( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - adbbackupid=adbbackupid, + exadb_vm_cluster_name=exadb_vm_cluster_name, + exascale_db_node_name=exascale_db_node_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -12160,6 +16448,7 @@ def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -12167,23 +16456,24 @@ def _create_or_update_initial( response = pipeline_response.http_response - if response.status_code not in [200, 201]: + if response.status_code not in [200, 202]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 201: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -12191,142 +16481,173 @@ def _create_or_update_initial( return deserialized # type: ignore @overload - def begin_create_or_update( + def begin_action( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - resource: _models.AutonomousDatabaseBackup, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: _models.DbNodeAction, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabaseBackup]: - """Create a AutonomousDatabaseBackup. + ) -> LROPoller[_models.DbActionResponse]: + """VM actions on DbNode of ExadbVmCluster by the provided filter. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param exascale_db_node_name: The name of the ExascaleDbNode. Required. + :type exascale_db_node_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The - AutonomousDatabaseBackup is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :return: An instance of LROPoller that returns DbActionResponse. The DbActionResponse is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbActionResponse] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( + def begin_action( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - resource: JSON, + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: _types.DbNodeAction, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabaseBackup]: - """Create a AutonomousDatabaseBackup. + ) -> LROPoller[_models.DbActionResponse]: + """VM actions on DbNode of ExadbVmCluster by the provided filter. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :param resource: Resource create parameters. Required. - :type resource: JSON + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param exascale_db_node_name: The name of the ExascaleDbNode. Required. + :type exascale_db_node_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.DbNodeAction :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The - AutonomousDatabaseBackup is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :return: An instance of LROPoller that returns DbActionResponse. The DbActionResponse is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbActionResponse] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( + def begin_action( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - resource: IO[bytes], + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabaseBackup]: - """Create a AutonomousDatabaseBackup. + ) -> LROPoller[_models.DbActionResponse]: + """VM actions on DbNode of ExadbVmCluster by the provided filter. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :param resource: Resource create parameters. Required. - :type resource: IO[bytes] + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param exascale_db_node_name: The name of the ExascaleDbNode. Required. + :type exascale_db_node_name: str + :param body: The content of the action request. Required. + :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The - AutonomousDatabaseBackup is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :return: An instance of LROPoller that returns DbActionResponse. The DbActionResponse is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbActionResponse] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def begin_create_or_update( + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exadb_vm_cluster_name", + "exascale_db_node_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_action( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - resource: Union[_models.AutonomousDatabaseBackup, JSON, IO[bytes]], + exadb_vm_cluster_name: str, + exascale_db_node_name: str, + body: Union[_models.DbNodeAction, _types.DbNodeAction, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabaseBackup]: - """Create a AutonomousDatabaseBackup. + ) -> LROPoller[_models.DbActionResponse]: + """VM actions on DbNode of ExadbVmCluster by the provided filter. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :param resource: Resource create parameters. Is one of the following types: - AutonomousDatabaseBackup, JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup or JSON or IO[bytes] - :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The - AutonomousDatabaseBackup is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :type resource_group_name: str + :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. + :type exadb_vm_cluster_name: str + :param exascale_db_node_name: The name of the ExascaleDbNode. Required. + :type exascale_db_node_name: str + :param body: The content of the action request. Is either a DbNodeAction type or a IO[bytes] + type. Required. + :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction or + ~azure.mgmt.oracledatabase.types.DbNodeAction or IO[bytes] + :return: An instance of LROPoller that returns DbActionResponse. The DbActionResponse is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbActionResponse] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabaseBackup] = kwargs.pop("cls", None) + cls: ClsType[_models.DbActionResponse] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._create_or_update_initial( + raw_result = self._action_initial( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - adbbackupid=adbbackupid, - resource=resource, + exadb_vm_cluster_name=exadb_vm_cluster_name, + exascale_db_node_name=exascale_db_node_name, + body=body, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -12338,7 +16659,7 @@ def begin_create_or_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.AutonomousDatabaseBackup, response.json()) + deserialized = _deserialize(_models.DbActionResponse, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -12356,32 +16677,79 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.AutonomousDatabaseBackup].from_continuation_token( + return LROPoller[_models.DbActionResponse].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.AutonomousDatabaseBackup]( + return LROPoller[_models.DbActionResponse]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) + +class ExascaleDbStorageVaultsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`exascale_db_storage_vaults` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + @distributed_trace + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exascale_db_storage_vault_name", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) def get( - self, resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, **kwargs: Any - ) -> _models.AutonomousDatabaseBackup: - """Get a AutonomousDatabaseBackup. + self, resource_group_name: str, exascale_db_storage_vault_name: str, **kwargs: Any + ) -> _models.ExascaleDbStorageVault: + """Get a ExascaleDbStorageVault. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :return: AutonomousDatabaseBackup. The AutonomousDatabaseBackup is compatible with - MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :return: ExascaleDbStorageVault. The ExascaleDbStorageVault is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -12395,12 +16763,11 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.AutonomousDatabaseBackup] = kwargs.pop("cls", None) + cls: ClsType[_models.ExascaleDbStorageVault] = kwargs.pop("cls", None) - _request = build_autonomous_database_backups_get_request( + _request = build_exascale_db_storage_vaults_get_request( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - adbbackupid=adbbackupid, + exascale_db_storage_vault_name=exascale_db_storage_vault_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -12411,6 +16778,7 @@ def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -12425,145 +16793,60 @@ def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.AutonomousDatabaseBackup, response.json()) + deserialized = _deserialize(_models.ExascaleDbStorageVault, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - def _delete_initial( - self, resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_autonomous_database_backups_delete_request( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - adbbackupid=adbbackupid, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, resource_group_name: str, autonomousdatabasename: str, adbbackupid: str, **kwargs: Any - ) -> LROPoller[None]: - """Delete a AutonomousDatabaseBackup. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - adbbackupid=adbbackupid, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - def _update_initial( + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exascale_db_storage_vault_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _create_initial( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - properties: Union[_models.AutonomousDatabaseBackupUpdate, JSON, IO[bytes]], + exascale_db_storage_vault_name: str, + resource: Union[_models.ExascaleDbStorageVault, _types.ExascaleDbStorageVault, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -12582,15 +16865,14 @@ def _update_initial( content_type = content_type or "application/json" _content = None - if isinstance(properties, (IOBase, bytes)): - _content = properties + if isinstance(resource, (IOBase, bytes)): + _content = resource else: - _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_autonomous_database_backups_update_request( + _request = build_exascale_db_storage_vaults_create_request( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - adbbackupid=adbbackupid, + exascale_db_storage_vault_name=exascale_db_storage_vault_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -12603,6 +16885,7 @@ def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -12610,21 +16893,26 @@ def _update_initial( response = pipeline_response.http_response - if response.status_code not in [200, 202]: + if response.status_code not in [200, 201]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -12632,143 +16920,159 @@ def _update_initial( return deserialized # type: ignore @overload - def begin_update( + def begin_create( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - properties: _models.AutonomousDatabaseBackupUpdate, + exascale_db_storage_vault_name: str, + resource: _models.ExascaleDbStorageVault, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabaseBackup]: - """Update a AutonomousDatabaseBackup. + ) -> LROPoller[_models.ExascaleDbStorageVault]: + """Create a ExascaleDbStorageVault. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupUpdate + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The - AutonomousDatabaseBackup is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :return: An instance of LROPoller that returns ExascaleDbStorageVault. The + ExascaleDbStorageVault is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_update( + def begin_create( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - properties: JSON, + exascale_db_storage_vault_name: str, + resource: _types.ExascaleDbStorageVault, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabaseBackup]: - """Update a AutonomousDatabaseBackup. + ) -> LROPoller[_models.ExascaleDbStorageVault]: + """Create a ExascaleDbStorageVault. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :param properties: The resource properties to be updated. Required. - :type properties: JSON + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.ExascaleDbStorageVault :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The - AutonomousDatabaseBackup is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :return: An instance of LROPoller that returns ExascaleDbStorageVault. The + ExascaleDbStorageVault is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_update( + def begin_create( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - properties: IO[bytes], + exascale_db_storage_vault_name: str, + resource: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabaseBackup]: - """Update a AutonomousDatabaseBackup. + ) -> LROPoller[_models.ExascaleDbStorageVault]: + """Create a ExascaleDbStorageVault. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :param properties: The resource properties to be updated. Required. - :type properties: IO[bytes] + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The - AutonomousDatabaseBackup is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :return: An instance of LROPoller that returns ExascaleDbStorageVault. The + ExascaleDbStorageVault is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace - def begin_update( + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exascale_db_storage_vault_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_create( self, resource_group_name: str, - autonomousdatabasename: str, - adbbackupid: str, - properties: Union[_models.AutonomousDatabaseBackupUpdate, JSON, IO[bytes]], + exascale_db_storage_vault_name: str, + resource: Union[_models.ExascaleDbStorageVault, _types.ExascaleDbStorageVault, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.AutonomousDatabaseBackup]: - """Update a AutonomousDatabaseBackup. + ) -> LROPoller[_models.ExascaleDbStorageVault]: + """Create a ExascaleDbStorageVault. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :param adbbackupid: AutonomousDatabaseBackup id. Required. - :type adbbackupid: str - :param properties: The resource properties to be updated. Is one of the following types: - AutonomousDatabaseBackupUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackupUpdate or JSON or - IO[bytes] - :return: An instance of LROPoller that returns AutonomousDatabaseBackup. The - AutonomousDatabaseBackup is compatible with MutableMapping - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :param resource: Resource create parameters. Is either a ExascaleDbStorageVault type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault or + ~azure.mgmt.oracledatabase.types.ExascaleDbStorageVault or IO[bytes] + :return: An instance of LROPoller that returns ExascaleDbStorageVault. The + ExascaleDbStorageVault is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AutonomousDatabaseBackup] = kwargs.pop("cls", None) + cls: ClsType[_models.ExascaleDbStorageVault] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._update_initial( + raw_result = self._create_initial( resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - adbbackupid=adbbackupid, - properties=properties, + exascale_db_storage_vault_name=exascale_db_storage_vault_name, + resource=resource, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -12780,7 +17084,7 @@ def begin_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.AutonomousDatabaseBackup, response.json()) + deserialized = _deserialize(_models.ExascaleDbStorageVault, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -12798,141 +17102,56 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.AutonomousDatabaseBackup].from_continuation_token( + return LROPoller[_models.ExascaleDbStorageVault].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.AutonomousDatabaseBackup]( + return LROPoller[_models.ExascaleDbStorageVault]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - @distributed_trace - def list_by_parent( - self, resource_group_name: str, autonomousdatabasename: str, **kwargs: Any - ) -> ItemPaged["_models.AutonomousDatabaseBackup"]: - """List AutonomousDatabaseBackup resources by AutonomousDatabase. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param autonomousdatabasename: The database name. Required. - :type autonomousdatabasename: str - :return: An iterator like instance of AutonomousDatabaseBackup - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabaseBackup] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.AutonomousDatabaseBackup]] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_autonomous_database_backups_list_by_parent_request( - resource_group_name=resource_group_name, - autonomousdatabasename=autonomousdatabasename, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - return _request - - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDatabaseBackup], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - -class AutonomousDatabaseCharacterSetsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`autonomous_database_character_sets` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, location: str, adbscharsetname: str, **kwargs: Any) -> _models.AutonomousDatabaseCharacterSet: - """Get a AutonomousDatabaseCharacterSet. - - :param location: The name of the Azure region. Required. - :type location: str - :param adbscharsetname: AutonomousDatabaseCharacterSet name. Required. - :type adbscharsetname: str - :return: AutonomousDatabaseCharacterSet. The AutonomousDatabaseCharacterSet is compatible with - MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseCharacterSet - :raises ~azure.core.exceptions.HttpResponseError: - """ + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exascale_db_storage_vault_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _update_initial( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: Union[_models.ExascaleDbStorageVaultTagsUpdate, _types.ExascaleDbStorageVaultTagsUpdate, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -12941,16 +17160,26 @@ def get(self, location: str, adbscharsetname: str, **kwargs: Any) -> _models.Aut } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.AutonomousDatabaseCharacterSet] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_autonomous_database_character_sets_get_request( - location=location, - adbscharsetname=adbscharsetname, + content_type = content_type or "application/json" + _content = None + if isinstance(properties, (IOBase, bytes)): + _content = properties + else: + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_exascale_db_storage_vaults_update_request( + resource_group_name=resource_group_name, + exascale_db_storage_vault_name=exascale_db_storage_vault_name, subscription_id=self._config.subscription_id, + content_type=content_type, api_version=self._config.api_version, + content=_content, headers=_headers, params=_params, ) @@ -12959,154 +17188,265 @@ def get(self, location: str, adbscharsetname: str, **kwargs: Any) -> _models.Aut } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) + _decompress = kwargs.pop("decompress", True) + _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.AutonomousDatabaseCharacterSet, response.json()) + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore - @distributed_trace - def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.AutonomousDatabaseCharacterSet"]: - """List AutonomousDatabaseCharacterSet resources by SubscriptionLocationResource. + @overload + def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: _models.ExascaleDbStorageVaultTagsUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.ExascaleDbStorageVault]: + """Update a ExascaleDbStorageVault. - :param location: The name of the Azure region. Required. - :type location: str - :return: An iterator like instance of AutonomousDatabaseCharacterSet - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabaseCharacterSet] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultTagsUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns ExascaleDbStorageVault. The + ExascaleDbStorageVault is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.AutonomousDatabaseCharacterSet]] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_autonomous_database_character_sets_list_by_location_request( - location=location, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - return _request - - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDatabaseCharacterSet], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) - def get_next(next_link=None): - _request = prepare_request(next_link) + @overload + def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: _types.ExascaleDbStorageVaultTagsUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.ExascaleDbStorageVault]: + """Update a ExascaleDbStorageVault. - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.ExascaleDbStorageVaultTagsUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns ExascaleDbStorageVault. The + ExascaleDbStorageVault is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] + :raises ~azure.core.exceptions.HttpResponseError: + """ - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + @overload + def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.ExascaleDbStorageVault]: + """Update a ExascaleDbStorageVault. - return pipeline_response + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns ExascaleDbStorageVault. The + ExascaleDbStorageVault is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] + :raises ~azure.core.exceptions.HttpResponseError: + """ - return ItemPaged(get_next, extract_data) + @distributed_trace + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exascale_db_storage_vault_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_update( + self, + resource_group_name: str, + exascale_db_storage_vault_name: str, + properties: Union[_models.ExascaleDbStorageVaultTagsUpdate, _types.ExascaleDbStorageVaultTagsUpdate, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.ExascaleDbStorageVault]: + """Update a ExascaleDbStorageVault. + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :param properties: The resource properties to be updated. Is either a + ExascaleDbStorageVaultTagsUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultTagsUpdate or + ~azure.mgmt.oracledatabase.types.ExascaleDbStorageVaultTagsUpdate or IO[bytes] + :return: An instance of LROPoller that returns ExascaleDbStorageVault. The + ExascaleDbStorageVault is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} -class AutonomousDatabaseNationalCharacterSetsOperations: # pylint: disable=name-too-long - """ - .. warning:: - **DO NOT** instantiate this class directly. + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.ExascaleDbStorageVault] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._update_initial( + resource_group_name=resource_group_name, + exascale_db_storage_vault_name=exascale_db_storage_vault_name, + properties=properties, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`autonomous_database_national_character_sets` attribute. - """ + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.ExascaleDbStorageVault, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } - @distributed_trace - def get( - self, location: str, adbsncharsetname: str, **kwargs: Any - ) -> _models.AutonomousDatabaseNationalCharacterSet: - """Get a AutonomousDatabaseNationalCharacterSet. + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.ExascaleDbStorageVault].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.ExascaleDbStorageVault]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) - :param location: The name of the Azure region. Required. - :type location: str - :param adbsncharsetname: AutonomousDatabaseNationalCharacterSets name. Required. - :type adbsncharsetname: str - :return: AutonomousDatabaseNationalCharacterSet. The AutonomousDatabaseNationalCharacterSet is - compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDatabaseNationalCharacterSet - :raises ~azure.core.exceptions.HttpResponseError: - """ + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exascale_db_storage_vault_name", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _delete_initial( + self, resource_group_name: str, exascale_db_storage_vault_name: str, **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -13118,11 +17458,11 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.AutonomousDatabaseNationalCharacterSet] = kwargs.pop("cls", None) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_autonomous_database_national_character_sets_get_request( - location=location, - adbsncharsetname=adbsncharsetname, + _request = build_exascale_db_storage_vaults_delete_request( + resource_group_name=resource_group_name, + exascale_db_storage_vault_name=exascale_db_storage_vault_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -13133,50 +17473,169 @@ def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) + _decompress = kwargs.pop("decompress", True) + _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.AutonomousDatabaseNationalCharacterSet, response.json()) + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore @distributed_trace - def list_by_location( - self, location: str, **kwargs: Any - ) -> ItemPaged["_models.AutonomousDatabaseNationalCharacterSet"]: - """List AutonomousDatabaseNationalCharacterSet resources by SubscriptionLocationResource. + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={ + "2024-12-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "exascale_db_storage_vault_name", + ] + }, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_delete( + self, resource_group_name: str, exascale_db_storage_vault_name: str, **kwargs: Any + ) -> LROPoller[None]: + """Delete a ExascaleDbStorageVault. - :param location: The name of the Azure region. Required. - :type location: str - :return: An iterator like instance of AutonomousDatabaseNationalCharacterSet - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDatabaseNationalCharacterSet] + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. + :type exascale_db_storage_vault_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + exascale_db_storage_vault_name=exascale_db_storage_vault_name, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={"2024-12-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> ItemPaged["_models.ExascaleDbStorageVault"]: + """List ExascaleDbStorageVault resources by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of ExascaleDbStorageVault + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.AutonomousDatabaseNationalCharacterSet]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.ExascaleDbStorageVault]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -13189,8 +17648,8 @@ def list_by_location( def prepare_request(next_link=None): if not next_link: - _request = build_autonomous_database_national_character_sets_list_by_location_request( - location=location, + _request = build_exascale_db_storage_vaults_list_by_resource_group_request( + resource_group_name=resource_group_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -13214,7 +17673,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -13228,7 +17690,8 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() list_of_elem = _deserialize( - List[_models.AutonomousDatabaseNationalCharacterSet], deserialized.get("value", []) + List[_models.ExascaleDbStorageVault], + deserialized.get("value", []), ) if cls: list_of_elem = cls(list_of_elem) # type: ignore @@ -13245,110 +17708,52 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return ItemPaged(get_next, extract_data) - -class AutonomousDatabaseVersionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`autonomous_database_versions` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, location: str, autonomousdbversionsname: str, **kwargs: Any) -> _models.AutonomousDbVersion: - """Get a AutonomousDbVersion. - - :param location: The name of the Azure region. Required. - :type location: str - :param autonomousdbversionsname: AutonomousDbVersion name. Required. - :type autonomousdbversionsname: str - :return: AutonomousDbVersion. The AutonomousDbVersion is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.AutonomousDbVersion - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[_models.AutonomousDbVersion] = kwargs.pop("cls", None) - - _request = build_autonomous_database_versions_get_request( - location=location, - autonomousdbversionsname=autonomousdbversionsname, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - _stream = kwargs.pop("stream", False) - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.AutonomousDbVersion, response.json()) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - @distributed_trace - def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.AutonomousDbVersion"]: - """List AutonomousDbVersion resources by SubscriptionLocationResource. + @api_version_validation( + method_added_on="2024-12-01-preview", + params_added_on={"2024-12-01-preview": ["api_version", "subscription_id", "accept"]}, + api_versions_list=[ + "2024-12-01-preview", + "2025-01-01-preview", + "2025-03-01", + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ExascaleDbStorageVault"]: + """List ExascaleDbStorageVault resources by subscription ID. - :param location: The name of the Azure region. Required. - :type location: str - :return: An iterator like instance of AutonomousDbVersion - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AutonomousDbVersion] + :return: An iterator like instance of ExascaleDbStorageVault + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.AutonomousDbVersion]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.ExascaleDbStorageVault]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -13361,8 +17766,7 @@ def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.A def prepare_request(next_link=None): if not next_link: - _request = build_autonomous_database_versions_list_by_location_request( - location=location, + _request = build_exascale_db_storage_vaults_list_by_subscription_request( subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -13386,7 +17790,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -13399,7 +17806,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.AutonomousDbVersion], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.ExascaleDbStorageVault], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -13415,7 +17825,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -13423,14 +17836,14 @@ def get_next(next_link=None): return ItemPaged(get_next, extract_data) -class ExadbVmClustersOperations: +class NetworkAnchorsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`exadb_vm_clusters` attribute. + :attr:`network_anchors` attribute. """ def __init__(self, *args, **kwargs) -> None: @@ -13442,31 +17855,37 @@ def __init__(self, *args, **kwargs) -> None: @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={"2024-12-01-preview": ["api_version", "subscription_id", "accept"]}, + method_added_on="2025-04-01-preview", + params_added_on={"2025-04-01-preview": ["api_version", "subscription_id", "accept"]}, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ExadbVmCluster"]: - """List ExadbVmCluster resources by subscription ID. + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.NetworkAnchor"]: + """List NetworkAnchor resources by subscription ID. - :return: An iterator like instance of ExadbVmCluster - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :return: An iterator like instance of NetworkAnchor + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.NetworkAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.ExadbVmCluster]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.NetworkAnchor]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -13479,7 +17898,7 @@ def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ExadbVmClust def prepare_request(next_link=None): if not next_link: - _request = build_exadb_vm_clusters_list_by_subscription_request( + _request = build_network_anchors_list_by_subscription_request( subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -13503,7 +17922,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -13516,7 +17938,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExadbVmCluster], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.NetworkAnchor], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -13532,7 +17957,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -13540,34 +17968,40 @@ def get_next(next_link=None): return ItemPaged(get_next, extract_data) @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-04-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-04-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "exadb_vm_cluster_name", + "network_anchor_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def _create_or_update_initial( self, resource_group_name: str, - exadb_vm_cluster_name: str, - resource: Union[_models.ExadbVmCluster, JSON, IO[bytes]], + network_anchor_name: str, + resource: Union[_models.NetworkAnchor, _types.NetworkAnchor, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -13591,9 +18025,9 @@ def _create_or_update_initial( else: _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_exadb_vm_clusters_create_or_update_request( + _request = build_network_anchors_create_or_update_request( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, + network_anchor_name=network_anchor_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -13606,6 +18040,7 @@ def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -13619,7 +18054,10 @@ def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -13629,7 +18067,7 @@ def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -13640,27 +18078,27 @@ def _create_or_update_initial( def begin_create_or_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - resource: _models.ExadbVmCluster, + network_anchor_name: str, + resource: _models.NetworkAnchor, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Create a ExadbVmCluster. + ) -> LROPoller[_models.NetworkAnchor]: + """Create a NetworkAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.ExadbVmCluster + :type resource: ~azure.mgmt.oracledatabase.models.NetworkAnchor :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -13668,27 +18106,27 @@ def begin_create_or_update( def begin_create_or_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - resource: JSON, + network_anchor_name: str, + resource: _types.NetworkAnchor, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Create a ExadbVmCluster. + ) -> LROPoller[_models.NetworkAnchor]: + """Create a NetworkAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.NetworkAnchor :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -13696,89 +18134,96 @@ def begin_create_or_update( def begin_create_or_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, + network_anchor_name: str, resource: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Create a ExadbVmCluster. + ) -> LROPoller[_models.NetworkAnchor]: + """Create a NetworkAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str :param resource: Resource create parameters. Required. :type resource: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-04-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-04-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "exadb_vm_cluster_name", + "network_anchor_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def begin_create_or_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - resource: Union[_models.ExadbVmCluster, JSON, IO[bytes]], + network_anchor_name: str, + resource: Union[_models.NetworkAnchor, _types.NetworkAnchor, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Create a ExadbVmCluster. + ) -> LROPoller[_models.NetworkAnchor]: + """Create a NetworkAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param resource: Resource create parameters. Is one of the following types: ExadbVmCluster, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.ExadbVmCluster or JSON or IO[bytes] - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str + :param resource: Resource create parameters. Is either a NetworkAnchor type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.NetworkAnchor or + ~azure.mgmt.oracledatabase.types.NetworkAnchor or IO[bytes] + :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ExadbVmCluster] = kwargs.pop("cls", None) + cls: ClsType[_models.NetworkAnchor] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, + network_anchor_name=network_anchor_name, resource=resource, content_type=content_type, cls=lambda x, y, z: x, @@ -13791,7 +18236,7 @@ def begin_create_or_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.ExadbVmCluster, response.json()) + deserialized = _deserialize(_models.NetworkAnchor, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -13809,50 +18254,56 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.ExadbVmCluster].from_continuation_token( + return LROPoller[_models.NetworkAnchor].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.ExadbVmCluster]( + return LROPoller[_models.NetworkAnchor]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-04-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-04-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "exadb_vm_cluster_name", + "network_anchor_name", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: Any) -> _models.ExadbVmCluster: - """Get a ExadbVmCluster. + def get(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) -> _models.NetworkAnchor: + """Get a NetworkAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :return: ExadbVmCluster. The ExadbVmCluster is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.ExadbVmCluster + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str + :return: NetworkAnchor. The NetworkAnchor is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.NetworkAnchor :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -13866,11 +18317,11 @@ def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: An _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.ExadbVmCluster] = kwargs.pop("cls", None) + cls: ClsType[_models.NetworkAnchor] = kwargs.pop("cls", None) - _request = build_exadb_vm_clusters_get_request( + _request = build_network_anchors_get_request( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, + network_anchor_name=network_anchor_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -13881,6 +18332,7 @@ def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: An } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -13895,13 +18347,16 @@ def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: An except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.ExadbVmCluster, response.json()) + deserialized = _deserialize(_models.NetworkAnchor, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -13909,34 +18364,40 @@ def get(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: An return deserialized # type: ignore @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-04-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-04-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "exadb_vm_cluster_name", + "network_anchor_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def _update_initial( self, resource_group_name: str, - exadb_vm_cluster_name: str, - properties: Union[_models.ExadbVmClusterUpdate, JSON, IO[bytes]], + network_anchor_name: str, + properties: Union[_models.NetworkAnchorUpdate, _types.NetworkAnchorUpdate, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -13960,9 +18421,9 @@ def _update_initial( else: _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_exadb_vm_clusters_update_request( + _request = build_network_anchors_update_request( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, + network_anchor_name=network_anchor_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -13975,6 +18436,7 @@ def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -13988,7 +18450,10 @@ def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -13996,7 +18461,7 @@ def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -14007,27 +18472,27 @@ def _update_initial( def begin_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - properties: _models.ExadbVmClusterUpdate, + network_anchor_name: str, + properties: _models.NetworkAnchorUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Update a ExadbVmCluster. + ) -> LROPoller[_models.NetworkAnchor]: + """Update a NetworkAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterUpdate + :type properties: ~azure.mgmt.oracledatabase.models.NetworkAnchorUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -14035,27 +18500,27 @@ def begin_update( def begin_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - properties: JSON, + network_anchor_name: str, + properties: _types.NetworkAnchorUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Update a ExadbVmCluster. + ) -> LROPoller[_models.NetworkAnchor]: + """Update a NetworkAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.NetworkAnchorUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -14063,91 +18528,265 @@ def begin_update( def begin_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, + network_anchor_name: str, properties: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Update a ExadbVmCluster. + ) -> LROPoller[_models.NetworkAnchor]: + """Update a NetworkAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str :param properties: The resource properties to be updated. Required. :type properties: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-04-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-04-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "exadb_vm_cluster_name", + "network_anchor_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) def begin_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - properties: Union[_models.ExadbVmClusterUpdate, JSON, IO[bytes]], + network_anchor_name: str, + properties: Union[_models.NetworkAnchorUpdate, _types.NetworkAnchorUpdate, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Update a ExadbVmCluster. + ) -> LROPoller[_models.NetworkAnchor]: + """Update a NetworkAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param properties: The resource properties to be updated. Is one of the following types: - ExadbVmClusterUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.ExadbVmClusterUpdate or JSON or IO[bytes] - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str + :param properties: The resource properties to be updated. Is either a NetworkAnchorUpdate type + or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.NetworkAnchorUpdate or + ~azure.mgmt.oracledatabase.types.NetworkAnchorUpdate or IO[bytes] + :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ExadbVmCluster] = kwargs.pop("cls", None) + cls: ClsType[_models.NetworkAnchor] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: raw_result = self._update_initial( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, - properties=properties, - content_type=content_type, + network_anchor_name=network_anchor_name, + properties=properties, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.NetworkAnchor, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.NetworkAnchor].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.NetworkAnchor]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2025-04-01-preview", + params_added_on={ + "2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "network_anchor_name"] + }, + api_versions_list=[ + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _delete_initial(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_network_anchors_delete_request( + resource_group_name=resource_group_name, + network_anchor_name=network_anchor_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2025-04-01-preview", + params_added_on={ + "2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "network_anchor_name"] + }, + api_versions_list=[ + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_delete(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) -> LROPoller[None]: + """Delete a NetworkAnchor. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param network_anchor_name: The name of the NetworkAnchor. Required. + :type network_anchor_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_anchor_name=network_anchor_name, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -14156,12 +18795,9 @@ def begin_update( raw_result.http_response.read() # type: ignore kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): - response = pipeline_response.http_response - deserialized = _deserialize(_models.ExadbVmCluster, response.json()) + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized + return cls(pipeline_response, None, {}) # type: ignore path_format_arguments = { "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), @@ -14176,34 +18812,301 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.ExadbVmCluster].from_continuation_token( + return LROPoller[None].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.ExadbVmCluster]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-04-01-preview", + params_added_on={"2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, + api_versions_list=[ + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.NetworkAnchor"]: + """List NetworkAnchor resources by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of NetworkAnchor + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.NetworkAnchor]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_network_anchors_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.NetworkAnchor], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class ResourceAnchorsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`resource_anchors` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + @api_version_validation( + method_added_on="2025-04-01-preview", + params_added_on={"2025-04-01-preview": ["api_version", "subscription_id", "accept"]}, + api_versions_list=[ + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ResourceAnchor"]: + """List ResourceAnchor resources by subscription ID. + + :return: An iterator like instance of ResourceAnchor + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.ResourceAnchor]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_resource_anchors_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ResourceAnchor], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @api_version_validation( + method_added_on="2025-04-01-preview", params_added_on={ - "2024-12-01-preview": ["api_version", "subscription_id", "resource_group_name", "exadb_vm_cluster_name"] + "2025-04-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "resource_anchor_name", + "content_type", + "accept", + ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def _delete_initial(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: Any) -> Iterator[bytes]: + def _create_or_update_initial( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: Union[_models.ResourceAnchor, _types.ResourceAnchor, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -14212,16 +19115,26 @@ def _delete_initial(self, resource_group_name: str, exadb_vm_cluster_name: str, } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_exadb_vm_clusters_delete_request( + content_type = content_type or "application/json" + _content = None + if isinstance(resource, (IOBase, bytes)): + _content = resource + else: + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_resource_anchors_create_or_update_request( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, + resource_anchor_name=resource_anchor_name, subscription_id=self._config.subscription_id, + content_type=content_type, api_version=self._config.api_version, + content=_content, headers=_headers, params=_params, ) @@ -14230,6 +19143,7 @@ def _delete_initial(self, resource_group_name: str, exadb_vm_cluster_name: str, } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -14237,68 +19151,184 @@ def _delete_initial(self, resource_group_name: str, exadb_vm_cluster_name: str, response = pipeline_response.http_response - if response.status_code not in [202, 204]: + if response.status_code not in [200, 201]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore + @overload + def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: _models.ResourceAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.ResourceAnchor]: + """Create a ResourceAnchor. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.ResourceAnchor + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: _types.ResourceAnchor, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.ResourceAnchor]: + """Create a ResourceAnchor. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.ResourceAnchor + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.ResourceAnchor]: + """Create a ResourceAnchor. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :raises ~azure.core.exceptions.HttpResponseError: + """ + @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-04-01-preview", params_added_on={ - "2024-12-01-preview": ["api_version", "subscription_id", "resource_group_name", "exadb_vm_cluster_name"] + "2025-04-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "resource_anchor_name", + "content_type", + "accept", + ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def begin_delete(self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: Any) -> LROPoller[None]: - """Delete a ExadbVmCluster. + def begin_create_or_update( + self, + resource_group_name: str, + resource_anchor_name: str, + resource: Union[_models.ResourceAnchor, _types.ResourceAnchor, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.ResourceAnchor]: + """Create a ResourceAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :param resource: Resource create parameters. Is either a ResourceAnchor type or a IO[bytes] + type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.ResourceAnchor or + ~azure.mgmt.oracledatabase.types.ResourceAnchor or IO[bytes] + :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[None] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.ResourceAnchor] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._delete_initial( + raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, + resource_anchor_name=resource_anchor_name, + resource=resource, + content_type=content_type, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -14307,9 +19337,12 @@ def begin_delete(self, resource_group_name: str, exadb_vm_cluster_name: str, **k raw_result.http_response.read() # type: ignore kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.ResourceAnchor, response.json()) if cls: - return cls(pipeline_response, None, {}) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized path_format_arguments = { "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), @@ -14324,45 +19357,58 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- else: polling_method = polling if cont_token: - return LROPoller[None].from_continuation_token( + return LROPoller[_models.ResourceAnchor].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + return LROPoller[_models.ResourceAnchor]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={"2024-12-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, + method_added_on="2025-04-01-preview", + params_added_on={ + "2025-04-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "resource_anchor_name", + "accept", + ] + }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.ExadbVmCluster"]: - """List ExadbVmCluster resources by resource group. + def get(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any) -> _models.ResourceAnchor: + """Get a ResourceAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :return: An iterator like instance of ExadbVmCluster - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :return: ResourceAnchor. The ResourceAnchor is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.ResourceAnchor :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.ExadbVmCluster]] = kwargs.pop("cls", None) - error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -14371,99 +19417,90 @@ def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Ite } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: - - _request = build_exadb_vm_clusters_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} - return _request + cls: ClsType[_models.ResourceAnchor] = kwargs.pop("cls", None) - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExadbVmCluster], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + _request = build_resource_anchors_get_request( + resource_group_name=resource_group_name, + resource_anchor_name=resource_anchor_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - def get_next(next_link=None): - _request = prepare_request(next_link) + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, ) - response = pipeline_response.http_response + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.ResourceAnchor, response.json()) - return pipeline_response + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore - return ItemPaged(get_next, extract_data) + return deserialized # type: ignore @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-04-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-04-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "exadb_vm_cluster_name", + "resource_anchor_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def _remove_vms_initial( + def _update_initial( self, resource_group_name: str, - exadb_vm_cluster_name: str, - body: Union[_models.RemoveVirtualMachineFromExadbVmClusterDetails, JSON, IO[bytes]], + resource_anchor_name: str, + properties: Union[_models.ResourceAnchorUpdate, _types.ResourceAnchorUpdate, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -14482,14 +19519,14 @@ def _remove_vms_initial( content_type = content_type or "application/json" _content = None - if isinstance(body, (IOBase, bytes)): - _content = body + if isinstance(properties, (IOBase, bytes)): + _content = properties else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_exadb_vm_clusters_remove_vms_request( + _request = build_resource_anchors_update_request( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, + resource_anchor_name=resource_anchor_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -14502,6 +19539,7 @@ def _remove_vms_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -14515,7 +19553,10 @@ def _remove_vms_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -14523,7 +19564,7 @@ def _remove_vms_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -14531,151 +19572,324 @@ def _remove_vms_initial( return deserialized # type: ignore @overload - def begin_remove_vms( + def begin_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - body: _models.RemoveVirtualMachineFromExadbVmClusterDetails, + resource_anchor_name: str, + properties: _models.ResourceAnchorUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Remove VMs from the VM Cluster. + ) -> LROPoller[_models.ResourceAnchor]: + """Update a ResourceAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.RemoveVirtualMachineFromExadbVmClusterDetails + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.ResourceAnchorUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_remove_vms( + def begin_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - body: JSON, + resource_anchor_name: str, + properties: _types.ResourceAnchorUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Remove VMs from the VM Cluster. + ) -> LROPoller[_models.ResourceAnchor]: + """Update a ResourceAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param body: The content of the action request. Required. - :type body: JSON + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.ResourceAnchorUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible + :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + resource_anchor_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.ResourceAnchor]: + """Update a ResourceAnchor. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + @api_version_validation( + method_added_on="2025-04-01-preview", + params_added_on={ + "2025-04-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "resource_anchor_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_update( + self, + resource_group_name: str, + resource_anchor_name: str, + properties: Union[_models.ResourceAnchorUpdate, _types.ResourceAnchorUpdate, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.ResourceAnchor]: + """Update a ResourceAnchor. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :param properties: The resource properties to be updated. Is either a ResourceAnchorUpdate type + or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.ResourceAnchorUpdate or + ~azure.mgmt.oracledatabase.types.ResourceAnchorUpdate or IO[bytes] + :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible + with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.ResourceAnchor] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._update_initial( + resource_group_name=resource_group_name, + resource_anchor_name=resource_anchor_name, + properties=properties, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.ResourceAnchor, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.ResourceAnchor].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.ResourceAnchor]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2025-04-01-preview", + params_added_on={ + "2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "resource_anchor_name"] + }, + api_versions_list=[ + "2025-04-01-preview", + "2025-06-01-preview", + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _delete_initial(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_resource_anchors_delete_request( + resource_group_name=resource_group_name, + resource_anchor_name=resource_anchor_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - @overload - def begin_remove_vms( - self, - resource_group_name: str, - exadb_vm_cluster_name: str, - body: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Remove VMs from the VM Cluster. + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param body: The content of the action request. Required. - :type body: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] - :raises ~azure.core.exceptions.HttpResponseError: - """ + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-04-01-preview", params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "exadb_vm_cluster_name", - "content_type", - "accept", - ] + "2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "resource_anchor_name"] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def begin_remove_vms( - self, - resource_group_name: str, - exadb_vm_cluster_name: str, - body: Union[_models.RemoveVirtualMachineFromExadbVmClusterDetails, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.ExadbVmCluster]: - """Remove VMs from the VM Cluster. + def begin_delete(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any) -> LROPoller[None]: + """Delete a ResourceAnchor. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param body: The content of the action request. Is one of the following types: - RemoveVirtualMachineFromExadbVmClusterDetails, JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.RemoveVirtualMachineFromExadbVmClusterDetails or - JSON or IO[bytes] - :return: An instance of LROPoller that returns ExadbVmCluster. The ExadbVmCluster is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExadbVmCluster] + :param resource_anchor_name: The name of the ResourceAnchor. Required. + :type resource_anchor_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ExadbVmCluster] = kwargs.pop("cls", None) + cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._remove_vms_initial( + raw_result = self._delete_initial( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, - body=body, - content_type=content_type, + resource_anchor_name=resource_anchor_name, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -14684,16 +19898,9 @@ def begin_remove_vms( raw_result.http_response.read() # type: ignore kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): - response_headers = {} - response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = _deserialize(_models.ExadbVmCluster, response.json()) + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized + return cls(pipeline_response, None, {}) # type: ignore path_format_arguments = { "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), @@ -14708,75 +19915,51 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.ExadbVmCluster].from_continuation_token( + return LROPoller[None].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.ExadbVmCluster]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - -class ExascaleDbNodesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`exascale_db_nodes` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "exadb_vm_cluster_name", - "exascale_db_node_name", - "accept", - ] - }, + method_added_on="2025-04-01-preview", + params_added_on={"2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", "2025-04-01-preview", "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def get( - self, resource_group_name: str, exadb_vm_cluster_name: str, exascale_db_node_name: str, **kwargs: Any - ) -> _models.ExascaleDbNode: - """Get a ExascaleDbNode. + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.ResourceAnchor"]: + """List ResourceAnchor resources by resource group. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param exascale_db_node_name: The name of the ExascaleDbNode. Required. - :type exascale_db_node_name: str - :return: ExascaleDbNode. The ExascaleDbNode is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.ExascaleDbNode + :return: An iterator like instance of ResourceAnchor + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ResourceAnchor] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.ResourceAnchor]] = kwargs.pop("cls", None) + error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -14785,94 +19968,128 @@ def get( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + def prepare_request(next_link=None): + if not next_link: - cls: ClsType[_models.ExascaleDbNode] = kwargs.pop("cls", None) + _request = build_resource_anchors_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - _request = build_exascale_db_nodes_get_request( - resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, - exascale_db_node_name=exascale_db_node_name, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) + return _request - response = pipeline_response.http_response + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.ResourceAnchor], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + def get_next(next_link=None): + _request = prepare_request(next_link) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.ExascaleDbNode, response.json()) + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - return deserialized # type: ignore + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class DbSystemsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`db_systems` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "exadb_vm_cluster_name", - "accept", - ] - }, + method_added_on="2025-07-01-preview", + params_added_on={"2025-07-01-preview": ["api_version", "subscription_id", "accept"]}, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def list_by_parent( - self, resource_group_name: str, exadb_vm_cluster_name: str, **kwargs: Any - ) -> ItemPaged["_models.ExascaleDbNode"]: - """List ExascaleDbNode resources by ExadbVmCluster. + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.DbSystem"]: + """List DbSystem resources by subscription ID. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :return: An iterator like instance of ExascaleDbNode - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExascaleDbNode] + :return: An iterator like instance of DbSystem + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbSystem] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.ExascaleDbNode]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.DbSystem]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -14885,9 +20102,7 @@ def list_by_parent( def prepare_request(next_link=None): if not next_link: - _request = build_exascale_db_nodes_list_by_parent_request( - resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, + _request = build_db_systems_list_by_subscription_request( subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -14911,7 +20126,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -14924,7 +20142,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExascaleDbNode], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DbSystem], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -14940,7 +20161,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -14948,36 +20172,38 @@ def get_next(next_link=None): return ItemPaged(get_next, extract_data) @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-07-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-07-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "exadb_vm_cluster_name", - "exascale_db_node_name", + "db_system_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def _action_initial( + def _create_or_update_initial( self, resource_group_name: str, - exadb_vm_cluster_name: str, - exascale_db_node_name: str, - body: Union[_models.DbNodeAction, JSON, IO[bytes]], + db_system_name: str, + resource: Union[_models.DbSystem, _types.DbSystem, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -14996,15 +20222,14 @@ def _action_initial( content_type = content_type or "application/json" _content = None - if isinstance(body, (IOBase, bytes)): - _content = body + if isinstance(resource, (IOBase, bytes)): + _content = resource else: - _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_exascale_db_nodes_action_request( + _request = build_db_systems_create_or_update_request( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, - exascale_db_node_name=exascale_db_node_name, + db_system_name=db_system_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -15017,6 +20242,7 @@ def _action_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -15024,21 +20250,26 @@ def _action_initial( response = pipeline_response.http_response - if response.status_code not in [200, 202]: + if response.status_code not in [200, 201]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -15046,163 +20277,154 @@ def _action_initial( return deserialized # type: ignore @overload - def begin_action( + def begin_create_or_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - exascale_db_node_name: str, - body: _models.DbNodeAction, + db_system_name: str, + resource: _models.DbSystem, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.DbActionResponse]: - """VM actions on DbNode of ExadbVmCluster by the provided filter. + ) -> LROPoller[_models.DbSystem]: + """Create a DbSystem. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param exascale_db_node_name: The name of the ExascaleDbNode. Required. - :type exascale_db_node_name: str - :param body: The content of the action request. Required. - :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.DbSystem :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbActionResponse. The DbActionResponse is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbActionResponse] + :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_action( + def begin_create_or_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - exascale_db_node_name: str, - body: JSON, + db_system_name: str, + resource: _types.DbSystem, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.DbActionResponse]: - """VM actions on DbNode of ExadbVmCluster by the provided filter. + ) -> LROPoller[_models.DbSystem]: + """Create a DbSystem. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param exascale_db_node_name: The name of the ExascaleDbNode. Required. - :type exascale_db_node_name: str - :param body: The content of the action request. Required. - :type body: JSON + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.DbSystem :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbActionResponse. The DbActionResponse is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbActionResponse] + :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_action( + def begin_create_or_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - exascale_db_node_name: str, - body: IO[bytes], + db_system_name: str, + resource: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.DbActionResponse]: - """VM actions on DbNode of ExadbVmCluster by the provided filter. + ) -> LROPoller[_models.DbSystem]: + """Create a DbSystem. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param exascale_db_node_name: The name of the ExascaleDbNode. Required. - :type exascale_db_node_name: str - :param body: The content of the action request. Required. - :type body: IO[bytes] + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbActionResponse. The DbActionResponse is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbActionResponse] + :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-07-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-07-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "exadb_vm_cluster_name", - "exascale_db_node_name", + "db_system_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def begin_action( + def begin_create_or_update( self, resource_group_name: str, - exadb_vm_cluster_name: str, - exascale_db_node_name: str, - body: Union[_models.DbNodeAction, JSON, IO[bytes]], + db_system_name: str, + resource: Union[_models.DbSystem, _types.DbSystem, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.DbActionResponse]: - """VM actions on DbNode of ExadbVmCluster by the provided filter. + ) -> LROPoller[_models.DbSystem]: + """Create a DbSystem. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exadb_vm_cluster_name: The name of the ExadbVmCluster. Required. - :type exadb_vm_cluster_name: str - :param exascale_db_node_name: The name of the ExascaleDbNode. Required. - :type exascale_db_node_name: str - :param body: The content of the action request. Is one of the following types: DbNodeAction, - JSON, IO[bytes] Required. - :type body: ~azure.mgmt.oracledatabase.models.DbNodeAction or JSON or IO[bytes] - :return: An instance of LROPoller that returns DbActionResponse. The DbActionResponse is - compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbActionResponse] + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :param resource: Resource create parameters. Is either a DbSystem type or a IO[bytes] type. + Required. + :type resource: ~azure.mgmt.oracledatabase.models.DbSystem or + ~azure.mgmt.oracledatabase.types.DbSystem or IO[bytes] + :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DbActionResponse] = kwargs.pop("cls", None) + cls: ClsType[_models.DbSystem] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._action_initial( + raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, - exadb_vm_cluster_name=exadb_vm_cluster_name, - exascale_db_node_name=exascale_db_node_name, - body=body, + db_system_name=db_system_name, + resource=resource, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -15213,14 +20435,10 @@ def begin_action( kwargs.pop("error_map", None) def get_long_running_output(pipeline_response): - response_headers = {} response = pipeline_response.http_response - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = _deserialize(_models.DbActionResponse, response.json()) + deserialized = _deserialize(_models.DbSystem, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized path_format_arguments = { @@ -15236,70 +20454,48 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.DbActionResponse].from_continuation_token( + return LROPoller[_models.DbSystem].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.DbActionResponse]( + return LROPoller[_models.DbSystem]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) - -class ExascaleDbStorageVaultsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`exascale_db_storage_vaults` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-07-01-preview", params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "exascale_db_storage_vault_name", - "accept", - ] + "2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "db_system_name", "accept"] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def get( - self, resource_group_name: str, exascale_db_storage_vault_name: str, **kwargs: Any - ) -> _models.ExascaleDbStorageVault: - """Get a ExascaleDbStorageVault. + def get(self, resource_group_name: str, db_system_name: str, **kwargs: Any) -> _models.DbSystem: + """Get a DbSystem. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :return: ExascaleDbStorageVault. The ExascaleDbStorageVault is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :return: DbSystem. The DbSystem is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DbSystem :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -15313,11 +20509,11 @@ def get( _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.ExascaleDbStorageVault] = kwargs.pop("cls", None) + cls: ClsType[_models.DbSystem] = kwargs.pop("cls", None) - _request = build_exascale_db_storage_vaults_get_request( + _request = build_db_systems_get_request( resource_group_name=resource_group_name, - exascale_db_storage_vault_name=exascale_db_storage_vault_name, + db_system_name=db_system_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -15328,6 +20524,7 @@ def get( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -15342,13 +20539,16 @@ def get( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.ExascaleDbStorageVault, response.json()) + deserialized = _deserialize(_models.DbSystem, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -15356,34 +20556,38 @@ def get( return deserialized # type: ignore @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-07-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-07-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "exascale_db_storage_vault_name", + "db_system_name", "content_type", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def _create_initial( + def _update_initial( self, resource_group_name: str, - exascale_db_storage_vault_name: str, - resource: Union[_models.ExascaleDbStorageVault, JSON, IO[bytes]], + db_system_name: str, + properties: Union[_models.DbSystemUpdate, _types.DbSystemUpdate, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -15402,14 +20606,14 @@ def _create_initial( content_type = content_type or "application/json" _content = None - if isinstance(resource, (IOBase, bytes)): - _content = resource + if isinstance(properties, (IOBase, bytes)): + _content = properties else: - _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_exascale_db_storage_vaults_create_request( + _request = build_db_systems_update_request( resource_group_name=resource_group_name, - exascale_db_storage_vault_name=exascale_db_storage_vault_name, + db_system_name=db_system_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -15422,6 +20626,7 @@ def _create_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -15429,23 +20634,24 @@ def _create_initial( response = pipeline_response.http_response - if response.status_code not in [200, 201]: + if response.status_code not in [200, 202]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 201: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -15453,150 +20659,318 @@ def _create_initial( return deserialized # type: ignore @overload - def begin_create( + def begin_update( self, resource_group_name: str, - exascale_db_storage_vault_name: str, - resource: _models.ExascaleDbStorageVault, + db_system_name: str, + properties: _models.DbSystemUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ExascaleDbStorageVault]: - """Create a ExascaleDbStorageVault. + ) -> LROPoller[_models.DbSystem]: + """Update a DbSystem. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.DbSystemUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ExascaleDbStorageVault. The - ExascaleDbStorageVault is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] + :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + db_system_name: str, + properties: _types.DbSystemUpdate, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DbSystem]: + """Update a DbSystem. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.DbSystemUpdate + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_update( + self, + resource_group_name: str, + db_system_name: str, + properties: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.DbSystem]: + """Update a DbSystem. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + @api_version_validation( + method_added_on="2025-07-01-preview", + params_added_on={ + "2025-07-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "db_system_name", + "content_type", + "accept", + ] + }, + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def begin_update( + self, + resource_group_name: str, + db_system_name: str, + properties: Union[_models.DbSystemUpdate, _types.DbSystemUpdate, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.DbSystem]: + """Update a DbSystem. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :param properties: The resource properties to be updated. Is either a DbSystemUpdate type or a + IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.DbSystemUpdate or + ~azure.mgmt.oracledatabase.types.DbSystemUpdate or IO[bytes] + :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with + MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.DbSystem] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._update_initial( + resource_group_name=resource_group_name, + db_system_name=db_system_name, + properties=properties, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.DbSystem, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.DbSystem].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.DbSystem]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2025-07-01-preview", + params_added_on={ + "2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "db_system_name"] + }, + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def _delete_initial(self, resource_group_name: str, db_system_name: str, **kwargs: Any) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_db_systems_delete_request( + resource_group_name=resource_group_name, + db_system_name=db_system_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) - @overload - def begin_create( - self, - resource_group_name: str, - exascale_db_storage_vault_name: str, - resource: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ExascaleDbStorageVault]: - """Create a ExascaleDbStorageVault. + response = pipeline_response.http_response - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :param resource: Resource create parameters. Required. - :type resource: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns ExascaleDbStorageVault. The - ExascaleDbStorageVault is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] - :raises ~azure.core.exceptions.HttpResponseError: - """ + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - @overload - def begin_create( - self, - resource_group_name: str, - exascale_db_storage_vault_name: str, - resource: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ExascaleDbStorageVault]: - """Create a ExascaleDbStorageVault. + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :param resource: Resource create parameters. Required. - :type resource: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns ExascaleDbStorageVault. The - ExascaleDbStorageVault is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] - :raises ~azure.core.exceptions.HttpResponseError: - """ + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-07-01-preview", params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "exascale_db_storage_vault_name", - "content_type", - "accept", - ] + "2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "db_system_name"] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def begin_create( - self, - resource_group_name: str, - exascale_db_storage_vault_name: str, - resource: Union[_models.ExascaleDbStorageVault, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.ExascaleDbStorageVault]: - """Create a ExascaleDbStorageVault. + def begin_delete(self, resource_group_name: str, db_system_name: str, **kwargs: Any) -> LROPoller[None]: + """Delete a DbSystem. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :param resource: Resource create parameters. Is one of the following types: - ExascaleDbStorageVault, JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault or JSON or IO[bytes] - :return: An instance of LROPoller that returns ExascaleDbStorageVault. The - ExascaleDbStorageVault is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] + :param db_system_name: The name of the DbSystem. Required. + :type db_system_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ExascaleDbStorageVault] = kwargs.pop("cls", None) + cls: ClsType[None] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._create_initial( + raw_result = self._delete_initial( resource_group_name=resource_group_name, - exascale_db_storage_vault_name=exascale_db_storage_vault_name, - resource=resource, - content_type=content_type, + db_system_name=db_system_name, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -15605,12 +20979,9 @@ def begin_create( raw_result.http_response.read() # type: ignore kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): - response = pipeline_response.http_response - deserialized = _deserialize(_models.ExascaleDbStorageVault, response.json()) + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized + return cls(pipeline_response, None, {}) # type: ignore path_format_arguments = { "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), @@ -15625,47 +20996,181 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.ExascaleDbStorageVault].from_continuation_token( + return LROPoller[None].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.ExascaleDbStorageVault]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-07-01-preview", + params_added_on={"2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, + api_versions_list=[ + "2025-07-01-preview", + "2025-08-01-preview", + "2025-08-15-preview", + "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", + ], + ) + def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.DbSystem"]: + """List DbSystem resources by resource group. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :return: An iterator like instance of DbSystem + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbSystem] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DbSystem]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_db_systems_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DbSystem], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class DbVersionsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`db_versions` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + @api_version_validation( + method_added_on="2025-07-01-preview", params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "exascale_db_storage_vault_name", - "content_type", - "accept", - ] + "2025-07-01-preview": ["api_version", "subscription_id", "location", "dbversionsname", "accept"] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def _update_initial( - self, - resource_group_name: str, - exascale_db_storage_vault_name: str, - properties: Union[_models.ExascaleDbStorageVaultTagsUpdate, JSON, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: + def get(self, location: str, dbversionsname: str, **kwargs: Any) -> _models.DbVersion: + """Get a DbVersion. + + :param location: The name of the Azure region. Required. + :type location: str + :param dbversionsname: DbVersion name. Required. + :type dbversionsname: str + :return: DbVersion. The DbVersion is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DbVersion + :raises ~azure.core.exceptions.HttpResponseError: + """ error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -15674,26 +21179,16 @@ def _update_initial( } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _content = None - if isinstance(properties, (IOBase, bytes)): - _content = properties - else: - _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + cls: ClsType[_models.DbVersion] = kwargs.pop("cls", None) - _request = build_exascale_db_storage_vaults_update_request( - resource_group_name=resource_group_name, - exascale_db_storage_vault_name=exascale_db_storage_vault_name, + _request = build_db_versions_get_request( + location=location, + dbversionsname=dbversionsname, subscription_id=self._config.subscription_id, - content_type=content_type, api_version=self._config.api_version, - content=_content, headers=_headers, params=_params, ) @@ -15702,243 +21197,241 @@ def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [200, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DbVersion, response.json()) if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - @overload - def begin_update( - self, - resource_group_name: str, - exascale_db_storage_vault_name: str, - properties: _models.ExascaleDbStorageVaultTagsUpdate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ExascaleDbStorageVault]: - """Update a ExascaleDbStorageVault. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultTagsUpdate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns ExascaleDbStorageVault. The - ExascaleDbStorageVault is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - exascale_db_storage_vault_name: str, - properties: JSON, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ExascaleDbStorageVault]: - """Update a ExascaleDbStorageVault. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :param properties: The resource properties to be updated. Required. - :type properties: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns ExascaleDbStorageVault. The - ExascaleDbStorageVault is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - exascale_db_storage_vault_name: str, - properties: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ExascaleDbStorageVault]: - """Update a ExascaleDbStorageVault. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :param properties: The resource properties to be updated. Required. - :type properties: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns ExascaleDbStorageVault. The - ExascaleDbStorageVault is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] - :raises ~azure.core.exceptions.HttpResponseError: - """ - @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2025-07-01-preview", params_added_on={ - "2024-12-01-preview": [ + "2025-07-01-preview": [ "api_version", "subscription_id", - "resource_group_name", - "exascale_db_storage_vault_name", - "content_type", + "location", + "db_system_shape", + "db_system_id", + "storage_management", + "is_upgrade_supported", + "is_database_software_image_supported", + "shape_family", "accept", ] }, api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", "2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01", + "2025-11-01-preview", + "2025-11-15-preview", + "2025-12-01-preview", + "2026-01-01-preview", + "2026-02-01-preview", + "2026-03-01-preview", + "2026-04-01-preview", + "2026-05-01-preview", + "2026-06-01", ], ) - def begin_update( + def list_by_location( self, - resource_group_name: str, - exascale_db_storage_vault_name: str, - properties: Union[_models.ExascaleDbStorageVaultTagsUpdate, JSON, IO[bytes]], + location: str, + *, + db_system_shape: Optional[Union[str, _models.BaseDbSystemShapes]] = None, + db_system_id: Optional[str] = None, + storage_management: Optional[Union[str, _models.StorageManagementType]] = None, + is_upgrade_supported: Optional[bool] = None, + is_database_software_image_supported: Optional[bool] = None, + shape_family: Optional[Union[str, _models.ShapeFamilyType]] = None, **kwargs: Any - ) -> LROPoller[_models.ExascaleDbStorageVault]: - """Update a ExascaleDbStorageVault. + ) -> ItemPaged["_models.DbVersion"]: + """List DbVersion resources by SubscriptionLocationResource. + + :param location: The name of the Azure region. Required. + :type location: str + :keyword db_system_shape: If provided, filters the results to the set of database versions + which are supported for the given shape. e.g., VM.Standard.E5.Flex. Known values are: + "VM.Standard.x86" and "VM.BaseDB.x86". Default value is None. + :paramtype db_system_shape: str or ~azure.mgmt.oracledatabase.models.BaseDbSystemShapes + :keyword db_system_id: The DB system AzureId. If provided, filters the results to the set of + database versions which are supported for the DB system. Default value is None. + :paramtype db_system_id: str + :keyword storage_management: The DB system storage management option. Used to list database + versions available for that storage manager. Valid values are ASM and LVM. "LVM" Default value + is None. + :paramtype storage_management: str or ~azure.mgmt.oracledatabase.models.StorageManagementType + :keyword is_upgrade_supported: If true, filters the results to the set of database versions + which are supported for Upgrade. Default value is None. + :paramtype is_upgrade_supported: bool + :keyword is_database_software_image_supported: If true, filters the results to the set of + Oracle Database versions that are supported for the database software images. Default value is + None. + :paramtype is_database_software_image_supported: bool + :keyword shape_family: If provided, filters the results to the set of database versions which + are supported for the given shape family. Known values are: "EXADATA", "EXADB_XS", + "SINGLENODE", and "VIRTUALMACHINE". Default value is None. + :paramtype shape_family: str or ~azure.mgmt.oracledatabase.models.ShapeFamilyType + :return: An iterator like instance of DbVersion + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbVersion] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DbVersion]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_db_versions_list_by_location_request( + location=location, + subscription_id=self._config.subscription_id, + db_system_shape=db_system_shape, + db_system_id=db_system_id, + storage_management=storage_management, + is_upgrade_supported=is_upgrade_supported, + is_database_software_image_supported=is_database_software_image_supported, + shape_family=shape_family, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :param properties: The resource properties to be updated. Is one of the following types: - ExascaleDbStorageVaultTagsUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.ExascaleDbStorageVaultTagsUpdate or JSON or - IO[bytes] - :return: An instance of LROPoller that returns ExascaleDbStorageVault. The - ExascaleDbStorageVault is compatible with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} + return _request - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ExascaleDbStorageVault] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._update_initial( - resource_group_name=resource_group_name, - exascale_db_storage_vault_name=exascale_db_storage_vault_name, - properties=properties, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.DbVersion], + deserialized.get("value", []), ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response = pipeline_response.http_response - deserialized = _deserialize(_models.ExascaleDbStorageVault, response.json()) if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } + def get_next(next_link=None): + _request = prepare_request(next_link) - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.ExascaleDbStorageVault].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs ) - return LROPoller[_models.ExascaleDbStorageVault]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + +class DatabaseEditionsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`database_editions` attribute. + """ + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", + method_added_on="2026-04-01-preview", params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "exascale_db_storage_vault_name", - ] + "2026-04-01-preview": ["api_version", "subscription_id", "location", "databaseeditionname", "accept"] }, - api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def _delete_initial( - self, resource_group_name: str, exascale_db_storage_vault_name: str, **kwargs: Any - ) -> Iterator[bytes]: + def get(self, location: str, databaseeditionname: str, **kwargs: Any) -> _models.DatabaseEdition: + """Get a DatabaseEdition. + + :param location: The name of the Azure region. Required. + :type location: str + :param databaseeditionname: DatabaseEdition name. Required. + :type databaseeditionname: str + :return: DatabaseEdition. The DatabaseEdition is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DatabaseEdition + :raises ~azure.core.exceptions.HttpResponseError: + """ error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -15950,11 +21443,11 @@ def _delete_initial( _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + cls: ClsType[_models.DatabaseEdition] = kwargs.pop("cls", None) - _request = build_exascale_db_storage_vaults_delete_request( - resource_group_name=resource_group_name, - exascale_db_storage_vault_name=exascale_db_storage_vault_name, + _request = build_database_editions_get_request( + location=location, + databaseeditionname=databaseeditionname, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -15965,147 +21458,56 @@ def _delete_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = True + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs ) response = pipeline_response.http_response - if response.status_code not in [202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - - deserialized = response.iter_bytes() - - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={ - "2024-12-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "exascale_db_storage_vault_name", - ] - }, - api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def begin_delete( - self, resource_group_name: str, exascale_db_storage_vault_name: str, **kwargs: Any - ) -> LROPoller[None]: - """Delete a ExascaleDbStorageVault. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param exascale_db_storage_vault_name: The name of the ExascaleDbStorageVault. Required. - :type exascale_db_storage_vault_name: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - exascale_db_storage_vault_name=exascale_db_storage_vault_name, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs + error = _failsafe_deserialize( + _models.ErrorResponse, + response, ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + deserialized = _deserialize(_models.DatabaseEdition, response.json()) - @distributed_trace - @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={"2024-12-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, - api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2026-04-01-preview", + params_added_on={"2026-04-01-preview": ["api_version", "subscription_id", "location", "accept"]}, + api_versions_list=["2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> ItemPaged["_models.ExascaleDbStorageVault"]: - """List ExascaleDbStorageVault resources by resource group. + def list_by_location(self, location: str, **kwargs: Any) -> ItemPaged["_models.DatabaseEdition"]: + """List DatabaseEdition resources by SubscriptionLocationResource. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :return: An iterator like instance of ExascaleDbStorageVault - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] + :param location: The name of the Azure region. Required. + :type location: str + :return: An iterator like instance of DatabaseEdition + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DatabaseEdition] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.ExascaleDbStorageVault]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.DatabaseEdition]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -16118,8 +21520,8 @@ def list_by_resource_group( def prepare_request(next_link=None): if not next_link: - _request = build_exascale_db_storage_vaults_list_by_resource_group_request( - resource_group_name=resource_group_name, + _request = build_database_editions_list_by_location_request( + location=location, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -16143,7 +21545,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -16156,7 +21561,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExascaleDbStorageVault], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DatabaseEdition], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -16172,40 +21580,165 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return ItemPaged(get_next, extract_data) + +class DatabaseSystemShapeResourcesOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`database_system_shape_resources` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + @distributed_trace @api_version_validation( - method_added_on="2024-12-01-preview", - params_added_on={"2024-12-01-preview": ["api_version", "subscription_id", "accept"]}, - api_versions_list=[ - "2024-12-01-preview", - "2025-01-01-preview", - "2025-03-01", - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + method_added_on="2026-04-01-preview", + params_added_on={ + "2026-04-01-preview": ["api_version", "subscription_id", "location", "databasesystemshapename", "accept"] + }, + api_versions_list=["2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ExascaleDbStorageVault"]: - """List ExascaleDbStorageVault resources by subscription ID. + def get(self, location: str, databasesystemshapename: str, **kwargs: Any) -> _models.DatabaseSystemShape: + """Get a DatabaseSystemShape. - :return: An iterator like instance of ExascaleDbStorageVault - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ExascaleDbStorageVault] + :param location: The name of the Azure region. Required. + :type location: str + :param databasesystemshapename: DatabaseSystemShape name. Required. + :type databasesystemshapename: str + :return: DatabaseSystemShape. The DatabaseSystemShape is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.DatabaseSystemShape :raises ~azure.core.exceptions.HttpResponseError: """ + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.ExascaleDbStorageVault]] = kwargs.pop("cls", None) + cls: ClsType[_models.DatabaseSystemShape] = kwargs.pop("cls", None) + + _request = build_database_system_shape_resources_get_request( + location=location, + databasesystemshapename=databasesystemshapename, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.DatabaseSystemShape, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2026-04-01-preview", + params_added_on={ + "2026-04-01-preview": [ + "api_version", + "subscription_id", + "location", + "shape_attribute", + "zone", + "availability_domain", + "database_shape_family", + "database_edition", + "accept", + ] + }, + api_versions_list=["2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_by_location( + self, + location: str, + *, + shape_attribute: Optional[str] = None, + zone: Optional[str] = None, + availability_domain: Optional[str] = None, + database_shape_family: Optional[str] = None, + database_edition: Optional[str] = None, + **kwargs: Any + ) -> ItemPaged["_models.DatabaseSystemShape"]: + """List DatabaseSystemShape resources by SubscriptionLocationResource. + + :param location: The name of the Azure region. Required. + :type location: str + :keyword shape_attribute: Filters the result for the given Shape Attribute, such as + BLOCK_STORAGE or SMART_STORAGE. Default value is None. + :paramtype shape_attribute: str + :keyword zone: Filters the result for the given Azure Availability Zone. Default value is None. + :paramtype zone: str + :keyword availability_domain: If provided, filters the result by availability domain. Example: + GWjz:US-ASHBURN-AD-1. Default value is None. + :paramtype availability_domain: str + :keyword database_shape_family: If provided, filters the result by database shape family. + Example: VIRTUALMACHINE. Default value is None. + :paramtype database_shape_family: str + :keyword database_edition: If provided, filters the result by database edition. Default value + is None. + :paramtype database_edition: str + :return: An iterator like instance of DatabaseSystemShape + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DatabaseSystemShape] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.DatabaseSystemShape]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -16218,8 +21751,14 @@ def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ExascaleDbSt def prepare_request(next_link=None): if not next_link: - _request = build_exascale_db_storage_vaults_list_by_subscription_request( + _request = build_database_system_shape_resources_list_by_location_request( + location=location, subscription_id=self._config.subscription_id, + shape_attribute=shape_attribute, + zone=zone, + availability_domain=availability_domain, + database_shape_family=database_shape_family, + database_edition=database_edition, api_version=self._config.api_version, headers=_headers, params=_params, @@ -16242,7 +21781,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -16255,7 +21797,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ExascaleDbStorageVault], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.DatabaseSystemShape], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -16271,7 +21816,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -16279,14 +21827,14 @@ def get_next(next_link=None): return ItemPaged(get_next, extract_data) -class NetworkAnchorsOperations: +class GoldenGateConnectionsOperations: # pylint: disable=docstring-missing-param """ .. warning:: **DO NOT** instantiate this class directly. Instead, you should access the following operations through :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`network_anchors` attribute. + :attr:`golden_gate_connections` attribute. """ def __init__(self, *args, **kwargs) -> None: @@ -16298,28 +21846,21 @@ def __init__(self, *args, **kwargs) -> None: @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", - params_added_on={"2025-04-01-preview": ["api_version", "subscription_id", "accept"]}, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + method_added_on="2026-03-01-preview", + params_added_on={"2026-03-01-preview": ["api_version", "subscription_id", "accept"]}, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.NetworkAnchor"]: - """List NetworkAnchor resources by subscription ID. + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.GoldenGateConnection"]: + """List GoldenGateConnection resources by subscription ID. - :return: An iterator like instance of NetworkAnchor - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :return: An iterator like instance of GoldenGateConnection + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.NetworkAnchor]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.GoldenGateConnection]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -16332,7 +21873,7 @@ def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.NetworkAncho def prepare_request(next_link=None): if not next_link: - _request = build_network_anchors_list_by_subscription_request( + _request = build_golden_gate_connections_list_by_subscription_request( subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -16356,7 +21897,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -16369,7 +21913,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.NetworkAnchor], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.GoldenGateConnection], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -16385,7 +21932,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -16393,31 +21943,24 @@ def get_next(next_link=None): return ItemPaged(get_next, extract_data) @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "network_anchor_name", + "golden_gate_connection_name", "content_type", "accept", ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) def _create_or_update_initial( self, resource_group_name: str, - network_anchor_name: str, - resource: Union[_models.NetworkAnchor, JSON, IO[bytes]], + golden_gate_connection_name: str, + resource: Union[_models.GoldenGateConnection, _types.GoldenGateConnection, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -16441,9 +21984,9 @@ def _create_or_update_initial( else: _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_network_anchors_create_or_update_request( + _request = build_golden_gate_connections_create_or_update_request( resource_group_name=resource_group_name, - network_anchor_name=network_anchor_name, + golden_gate_connection_name=golden_gate_connection_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -16456,6 +21999,7 @@ def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -16469,7 +22013,10 @@ def _create_or_update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -16479,7 +22026,7 @@ def _create_or_update_initial( ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -16490,27 +22037,27 @@ def _create_or_update_initial( def begin_create_or_update( self, resource_group_name: str, - network_anchor_name: str, - resource: _models.NetworkAnchor, + golden_gate_connection_name: str, + resource: _models.GoldenGateConnection, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.NetworkAnchor]: - """Create a NetworkAnchor. + ) -> LROPoller[_models.GoldenGateConnection]: + """Create a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.NetworkAnchor + :type resource: ~azure.mgmt.oracledatabase.models.GoldenGateConnection :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :return: An instance of LROPoller that returns GoldenGateConnection. The GoldenGateConnection + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -16518,27 +22065,27 @@ def begin_create_or_update( def begin_create_or_update( self, resource_group_name: str, - network_anchor_name: str, - resource: JSON, + golden_gate_connection_name: str, + resource: _types.GoldenGateConnection, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.NetworkAnchor]: - """Create a NetworkAnchor. + ) -> LROPoller[_models.GoldenGateConnection]: + """Create a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str :param resource: Resource create parameters. Required. - :type resource: JSON + :type resource: ~azure.mgmt.oracledatabase.types.GoldenGateConnection :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :return: An instance of LROPoller that returns GoldenGateConnection. The GoldenGateConnection + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -16546,86 +22093,80 @@ def begin_create_or_update( def begin_create_or_update( self, resource_group_name: str, - network_anchor_name: str, + golden_gate_connection_name: str, resource: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.NetworkAnchor]: - """Create a NetworkAnchor. + ) -> LROPoller[_models.GoldenGateConnection]: + """Create a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str :param resource: Resource create parameters. Required. :type resource: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :return: An instance of LROPoller that returns GoldenGateConnection. The GoldenGateConnection + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "network_anchor_name", + "golden_gate_connection_name", "content_type", "accept", ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) def begin_create_or_update( self, resource_group_name: str, - network_anchor_name: str, - resource: Union[_models.NetworkAnchor, JSON, IO[bytes]], + golden_gate_connection_name: str, + resource: Union[_models.GoldenGateConnection, _types.GoldenGateConnection, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.NetworkAnchor]: - """Create a NetworkAnchor. + ) -> LROPoller[_models.GoldenGateConnection]: + """Create a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str - :param resource: Resource create parameters. Is one of the following types: NetworkAnchor, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.NetworkAnchor or JSON or IO[bytes] - :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param resource: Resource create parameters. Is either a GoldenGateConnection type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.GoldenGateConnection or + ~azure.mgmt.oracledatabase.types.GoldenGateConnection or IO[bytes] + :return: An instance of LROPoller that returns GoldenGateConnection. The GoldenGateConnection + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkAnchor] = kwargs.pop("cls", None) + cls: ClsType[_models.GoldenGateConnection] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, - network_anchor_name=network_anchor_name, + golden_gate_connection_name=golden_gate_connection_name, resource=resource, content_type=content_type, cls=lambda x, y, z: x, @@ -16638,7 +22179,7 @@ def begin_create_or_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.NetworkAnchor, response.json()) + deserialized = _deserialize(_models.GoldenGateConnection, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -16656,47 +22197,42 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.NetworkAnchor].from_continuation_token( + return LROPoller[_models.GoldenGateConnection].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.NetworkAnchor]( + return LROPoller[_models.GoldenGateConnection]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", - params_added_on={ - "2025-04-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "network_anchor_name", - "accept", - ] - }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def get(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) -> _models.NetworkAnchor: - """Get a NetworkAnchor. + def get( + self, resource_group_name: str, golden_gate_connection_name: str, **kwargs: Any + ) -> _models.GoldenGateConnection: + """Get a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str - :return: NetworkAnchor. The NetworkAnchor is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.NetworkAnchor + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :return: GoldenGateConnection. The GoldenGateConnection is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.GoldenGateConnection :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -16710,11 +22246,11 @@ def get(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.NetworkAnchor] = kwargs.pop("cls", None) + cls: ClsType[_models.GoldenGateConnection] = kwargs.pop("cls", None) - _request = build_network_anchors_get_request( + _request = build_golden_gate_connections_get_request( resource_group_name=resource_group_name, - network_anchor_name=network_anchor_name, + golden_gate_connection_name=golden_gate_connection_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -16725,6 +22261,7 @@ def get(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -16739,13 +22276,16 @@ def get(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.NetworkAnchor, response.json()) + deserialized = _deserialize(_models.GoldenGateConnection, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore @@ -16753,31 +22293,24 @@ def get(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) return deserialized # type: ignore @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "network_anchor_name", + "golden_gate_connection_name", "content_type", "accept", ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) def _update_initial( self, resource_group_name: str, - network_anchor_name: str, - properties: Union[_models.NetworkAnchorUpdate, JSON, IO[bytes]], + golden_gate_connection_name: str, + properties: Union[_models.GoldenGateConnectionUpdate, _types.GoldenGateConnectionUpdate, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -16801,9 +22334,9 @@ def _update_initial( else: _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_network_anchors_update_request( + _request = build_golden_gate_connections_update_request( resource_group_name=resource_group_name, - network_anchor_name=network_anchor_name, + golden_gate_connection_name=golden_gate_connection_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -16816,6 +22349,7 @@ def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -16829,7 +22363,10 @@ def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -16837,7 +22374,7 @@ def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -16848,27 +22385,27 @@ def _update_initial( def begin_update( self, resource_group_name: str, - network_anchor_name: str, - properties: _models.NetworkAnchorUpdate, + golden_gate_connection_name: str, + properties: _models.GoldenGateConnectionUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.NetworkAnchor]: - """Update a NetworkAnchor. + ) -> LROPoller[_models.GoldenGateConnection]: + """Update a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.NetworkAnchorUpdate + :type properties: ~azure.mgmt.oracledatabase.models.GoldenGateConnectionUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :return: An instance of LROPoller that returns GoldenGateConnection. The GoldenGateConnection + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -16876,27 +22413,27 @@ def begin_update( def begin_update( self, resource_group_name: str, - network_anchor_name: str, - properties: JSON, + golden_gate_connection_name: str, + properties: _types.GoldenGateConnectionUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.NetworkAnchor]: - """Update a NetworkAnchor. + ) -> LROPoller[_models.GoldenGateConnection]: + """Update a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str :param properties: The resource properties to be updated. Required. - :type properties: JSON + :type properties: ~azure.mgmt.oracledatabase.types.GoldenGateConnectionUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :return: An instance of LROPoller that returns GoldenGateConnection. The GoldenGateConnection + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ @@ -16904,86 +22441,80 @@ def begin_update( def begin_update( self, resource_group_name: str, - network_anchor_name: str, + golden_gate_connection_name: str, properties: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.NetworkAnchor]: - """Update a NetworkAnchor. + ) -> LROPoller[_models.GoldenGateConnection]: + """Update a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str :param properties: The resource properties to be updated. Required. :type properties: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :return: An instance of LROPoller that returns GoldenGateConnection. The GoldenGateConnection + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "network_anchor_name", + "golden_gate_connection_name", "content_type", "accept", ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) def begin_update( self, resource_group_name: str, - network_anchor_name: str, - properties: Union[_models.NetworkAnchorUpdate, JSON, IO[bytes]], + golden_gate_connection_name: str, + properties: Union[_models.GoldenGateConnectionUpdate, _types.GoldenGateConnectionUpdate, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.NetworkAnchor]: - """Update a NetworkAnchor. + ) -> LROPoller[_models.GoldenGateConnection]: + """Update a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str - :param properties: The resource properties to be updated. Is one of the following types: - NetworkAnchorUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.NetworkAnchorUpdate or JSON or IO[bytes] - :return: An instance of LROPoller that returns NetworkAnchor. The NetworkAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param properties: The resource properties to be updated. Is either a + GoldenGateConnectionUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.GoldenGateConnectionUpdate or + ~azure.mgmt.oracledatabase.types.GoldenGateConnectionUpdate or IO[bytes] + :return: An instance of LROPoller that returns GoldenGateConnection. The GoldenGateConnection + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkAnchor] = kwargs.pop("cls", None) + cls: ClsType[_models.GoldenGateConnection] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: raw_result = self._update_initial( resource_group_name=resource_group_name, - network_anchor_name=network_anchor_name, + golden_gate_connection_name=golden_gate_connection_name, properties=properties, content_type=content_type, cls=lambda x, y, z: x, @@ -16996,7 +22527,7 @@ def begin_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.NetworkAnchor, response.json()) + deserialized = _deserialize(_models.GoldenGateConnection, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -17014,31 +22545,31 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.NetworkAnchor].from_continuation_token( + return LROPoller[_models.GoldenGateConnection].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.NetworkAnchor]( + return LROPoller[_models.GoldenGateConnection]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "network_anchor_name"] + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def _delete_initial(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) -> Iterator[bytes]: + def _delete_initial( + self, resource_group_name: str, golden_gate_connection_name: str, **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -17052,9 +22583,9 @@ def _delete_initial(self, resource_group_name: str, network_anchor_name: str, ** cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_network_anchors_delete_request( + _request = build_golden_gate_connections_delete_request( resource_group_name=resource_group_name, - network_anchor_name=network_anchor_name, + golden_gate_connection_name=golden_gate_connection_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -17065,6 +22596,7 @@ def _delete_initial(self, resource_group_name: str, network_anchor_name: str, ** } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -17078,7 +22610,10 @@ def _delete_initial(self, resource_group_name: str, network_anchor_name: str, ** except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -17086,7 +22621,7 @@ def _delete_initial(self, resource_group_name: str, network_anchor_name: str, ** response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -17095,27 +22630,27 @@ def _delete_initial(self, resource_group_name: str, network_anchor_name: str, ** @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "network_anchor_name"] + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def begin_delete(self, resource_group_name: str, network_anchor_name: str, **kwargs: Any) -> LROPoller[None]: - """Delete a NetworkAnchor. + def begin_delete( + self, resource_group_name: str, golden_gate_connection_name: str, **kwargs: Any + ) -> LROPoller[None]: + """Delete a GoldenGateConnection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param network_anchor_name: The name of the NetworkAnchor. Required. - :type network_anchor_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str :return: An instance of LROPoller that returns None :rtype: ~azure.core.polling.LROPoller[None] :raises ~azure.core.exceptions.HttpResponseError: @@ -17130,7 +22665,7 @@ def begin_delete(self, resource_group_name: str, network_anchor_name: str, **kwa if cont_token is None: raw_result = self._delete_initial( resource_group_name=resource_group_name, - network_anchor_name=network_anchor_name, + golden_gate_connection_name=golden_gate_connection_name, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -17166,31 +22701,26 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", - params_added_on={"2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + method_added_on="2026-03-01-preview", + params_added_on={"2026-03-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.NetworkAnchor"]: - """List NetworkAnchor resources by resource group. + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> ItemPaged["_models.GoldenGateConnection"]: + """List GoldenGateConnection resources by resource group. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :return: An iterator like instance of NetworkAnchor - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.NetworkAnchor] + :return: An iterator like instance of GoldenGateConnection + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.GoldenGateConnection] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.NetworkAnchor]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.GoldenGateConnection]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -17203,7 +22733,7 @@ def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Ite def prepare_request(next_link=None): if not next_link: - _request = build_network_anchors_list_by_resource_group_request( + _request = build_golden_gate_connections_list_by_resource_group_request( resource_group_name=resource_group_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, @@ -17228,121 +22758,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - return _request - - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.NetworkAnchor], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - -class ResourceAnchorsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`resource_anchors` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - @api_version_validation( - method_added_on="2025-04-01-preview", - params_added_on={"2025-04-01-preview": ["api_version", "subscription_id", "accept"]}, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.ResourceAnchor"]: - """List ResourceAnchor resources by subscription ID. - - :return: An iterator like instance of ResourceAnchor - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ResourceAnchor] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.ResourceAnchor]] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_resource_anchors_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -17355,7 +22774,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ResourceAnchor], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.GoldenGateConnection], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -17371,7 +22793,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -17379,31 +22804,24 @@ def get_next(next_link=None): return ItemPaged(get_next, extract_data) @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "resource_anchor_name", + "golden_gate_connection_name", "content_type", "accept", ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def _create_or_update_initial( + def _assign_deployment_initial( self, resource_group_name: str, - resource_anchor_name: str, - resource: Union[_models.ResourceAnchor, JSON, IO[bytes]], + golden_gate_connection_name: str, + body: Union[_models.AssignUnassignDeployment, _types.AssignUnassignDeployment, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -17422,14 +22840,14 @@ def _create_or_update_initial( content_type = content_type or "application/json" _content = None - if isinstance(resource, (IOBase, bytes)): - _content = resource + if isinstance(body, (IOBase, bytes)): + _content = body else: - _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_resource_anchors_create_or_update_request( + _request = build_golden_gate_connections_assign_deployment_request( resource_group_name=resource_group_name, - resource_anchor_name=resource_anchor_name, + golden_gate_connection_name=golden_gate_connection_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -17442,6 +22860,7 @@ def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -17449,23 +22868,287 @@ def _create_or_update_initial( response = pipeline_response.http_response - if response.status_code not in [200, 201]: + if response.status_code not in [200, 202]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 201: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @overload + def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: _models.AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AssignedDeployment]: + """Assign a GoldenGate deployment to a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignDeployment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AssignedDeployment. The AssignedDeployment is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: _types.AssignUnassignDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AssignedDeployment]: + """Assign a GoldenGate deployment to a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AssignUnassignDeployment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AssignedDeployment. The AssignedDeployment is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AssignedDeployment]: + """Assign a GoldenGate deployment to a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AssignedDeployment. The AssignedDeployment is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def begin_assign_deployment( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: Union[_models.AssignUnassignDeployment, _types.AssignUnassignDeployment, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AssignedDeployment]: + """Assign a GoldenGate deployment to a connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Is either a AssignUnassignDeployment type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignDeployment or + ~azure.mgmt.oracledatabase.types.AssignUnassignDeployment or IO[bytes] + :return: An instance of LROPoller that returns AssignedDeployment. The AssignedDeployment is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AssignedDeployment] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._assign_deployment_initial( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + body=body, + content_type=content_type, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AssignedDeployment, response.json()) + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[_models.AssignedDeployment].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.AssignedDeployment]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "content_type", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def _unassign_deployment_initial( + self, + resource_group_name: str, + golden_gate_connection_name: str, + body: Union[_models.AssignUnassignDeployment, _types.AssignUnassignDeployment, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + _params = kwargs.pop("params", {}) or {} + + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_connections_unassign_deployment_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + subscription_id=self._config.subscription_id, + content_type=content_type, + api_version=self._config.api_version, + content=_content, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 202]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -17473,146 +23156,140 @@ def _create_or_update_initial( return deserialized # type: ignore @overload - def begin_create_or_update( + def begin_unassign_deployment( self, resource_group_name: str, - resource_anchor_name: str, - resource: _models.ResourceAnchor, + golden_gate_connection_name: str, + body: _models.AssignUnassignDeployment, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ResourceAnchor]: - """Create a ResourceAnchor. + ) -> LROPoller[_models.AssignedDeployment]: + """Unassign a GoldenGate deployment from a connection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.ResourceAnchor + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignDeployment :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :return: An instance of LROPoller that returns AssignedDeployment. The AssignedDeployment is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( + def begin_unassign_deployment( self, resource_group_name: str, - resource_anchor_name: str, - resource: JSON, + golden_gate_connection_name: str, + body: _types.AssignUnassignDeployment, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ResourceAnchor]: - """Create a ResourceAnchor. + ) -> LROPoller[_models.AssignedDeployment]: + """Unassign a GoldenGate deployment from a connection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :param resource: Resource create parameters. Required. - :type resource: JSON + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AssignUnassignDeployment :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :return: An instance of LROPoller that returns AssignedDeployment. The AssignedDeployment is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( + def begin_unassign_deployment( self, resource_group_name: str, - resource_anchor_name: str, - resource: IO[bytes], + golden_gate_connection_name: str, + body: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ResourceAnchor]: - """Create a ResourceAnchor. + ) -> LROPoller[_models.AssignedDeployment]: + """Unassign a GoldenGate deployment from a connection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :param resource: Resource create parameters. Required. - :type resource: IO[bytes] + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Required. + :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :return: An instance of LROPoller that returns AssignedDeployment. The AssignedDeployment is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "resource_anchor_name", + "golden_gate_connection_name", "content_type", "accept", ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def begin_create_or_update( + def begin_unassign_deployment( self, resource_group_name: str, - resource_anchor_name: str, - resource: Union[_models.ResourceAnchor, JSON, IO[bytes]], + golden_gate_connection_name: str, + body: Union[_models.AssignUnassignDeployment, _types.AssignUnassignDeployment, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.ResourceAnchor]: - """Create a ResourceAnchor. + ) -> LROPoller[_models.AssignedDeployment]: + """Unassign a GoldenGate deployment from a connection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :param resource: Resource create parameters. Is one of the following types: ResourceAnchor, - JSON, IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.ResourceAnchor or JSON or IO[bytes] - :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param body: The content of the action request. Is either a AssignUnassignDeployment type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignDeployment or + ~azure.mgmt.oracledatabase.types.AssignUnassignDeployment or IO[bytes] + :return: An instance of LROPoller that returns AssignedDeployment. The AssignedDeployment is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ResourceAnchor] = kwargs.pop("cls", None) + cls: ClsType[_models.AssignedDeployment] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._create_or_update_initial( + raw_result = self._unassign_deployment_initial( resource_group_name=resource_group_name, - resource_anchor_name=resource_anchor_name, - resource=resource, + golden_gate_connection_name=golden_gate_connection_name, + body=body, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -17624,7 +23301,7 @@ def begin_create_or_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.ResourceAnchor, response.json()) + deserialized = _deserialize(_models.AssignedDeployment, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -17642,47 +23319,160 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.ResourceAnchor].from_continuation_token( + return LROPoller[_models.AssignedDeployment].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.ResourceAnchor]( + return LROPoller[_models.AssignedDeployment]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "resource_anchor_name", + "golden_gate_connection_name", "accept", ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def get(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any) -> _models.ResourceAnchor: - """Get a ResourceAnchor. + def list_assigned_deployments_by_parent( + self, resource_group_name: str, golden_gate_connection_name: str, **kwargs: Any + ) -> ItemPaged["_models.AssignedDeployment"]: + """List assigned deployments by GoldenGate connection. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :return: ResourceAnchor. The ResourceAnchor is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.ResourceAnchor + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :return: An iterator like instance of AssignedDeployment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AssignedDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.AssignedDeployment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_golden_gate_connections_list_assigned_deployments_by_parent_request( + resource_group_name=resource_group_name, + golden_gate_connection_name=golden_gate_connection_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.AssignedDeployment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + return pipeline_response + + return ItemPaged(get_next, extract_data) + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_connection_name", + "assignment_id", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def get_assigned_deployment( + self, resource_group_name: str, golden_gate_connection_name: str, assignment_id: str, **kwargs: Any + ) -> _models.AssignedDeployment: + """Get assigned deployment by GoldenGate connection. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_connection_name: The name of the GoldenGateConnection. Required. + :type golden_gate_connection_name: str + :param assignment_id: Assigned Deployment assignment OCID. Required. + :type assignment_id: str + :return: AssignedDeployment. The AssignedDeployment is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AssignedDeployment :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -17696,11 +23486,12 @@ def get(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.ResourceAnchor] = kwargs.pop("cls", None) + cls: ClsType[_models.AssignedDeployment] = kwargs.pop("cls", None) - _request = build_resource_anchors_get_request( + _request = build_golden_gate_connections_get_assigned_deployment_request( resource_group_name=resource_group_name, - resource_anchor_name=resource_anchor_name, + golden_gate_connection_name=golden_gate_connection_name, + assignment_id=assignment_id, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -17711,6 +23502,7 @@ def get(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -17725,45 +23517,157 @@ def get(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.ResourceAnchor, response.json()) + deserialized = _deserialize(_models.AssignedDeployment, response.json()) + + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore + + return deserialized # type: ignore + + +class GoldenGateDeploymentsOperations: # pylint: disable=docstring-missing-param + """ + .. warning:: + **DO NOT** instantiate this class directly. + + Instead, you should access the following operations through + :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s + :attr:`golden_gate_deployments` attribute. + """ + + def __init__(self, *args, **kwargs) -> None: + input_args = list(args) + self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") + self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") + self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") + self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={"2026-03-01-preview": ["api_version", "subscription_id", "accept"]}, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.GoldenGateDeployment"]: + """List GoldenGateDeployment resources by subscription ID. + + :return: An iterator like instance of GoldenGateDeployment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.GoldenGateDeployment]] = kwargs.pop("cls", None) + + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + def prepare_request(next_link=None): + if not next_link: + + _request = build_golden_gate_deployments_list_by_subscription_request( + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + return _request + + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GoldenGateDeployment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) + + def get_next(next_link=None): + _request = prepare_request(next_link) + + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return pipeline_response - return deserialized # type: ignore + return ItemPaged(get_next, extract_data) @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "resource_anchor_name", + "golden_gate_deployment_name", "content_type", "accept", ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def _update_initial( + def _create_or_update_initial( self, resource_group_name: str, - resource_anchor_name: str, - properties: Union[_models.ResourceAnchorUpdate, JSON, IO[bytes]], + golden_gate_deployment_name: str, + resource: Union[_models.GoldenGateDeployment, _types.GoldenGateDeployment, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -17782,14 +23686,14 @@ def _update_initial( content_type = content_type or "application/json" _content = None - if isinstance(properties, (IOBase, bytes)): - _content = properties + if isinstance(resource, (IOBase, bytes)): + _content = resource else: - _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_resource_anchors_update_request( + _request = build_golden_gate_deployments_create_or_update_request( resource_group_name=resource_group_name, - resource_anchor_name=resource_anchor_name, + golden_gate_deployment_name=golden_gate_deployment_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -17802,6 +23706,7 @@ def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -17809,21 +23714,26 @@ def _update_initial( response = pipeline_response.http_response - if response.status_code not in [200, 202]: + if response.status_code not in [200, 201]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + if response.status_code == 201: + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -17831,292 +23741,141 @@ def _update_initial( return deserialized # type: ignore @overload - def begin_update( - self, - resource_group_name: str, - resource_anchor_name: str, - properties: _models.ResourceAnchorUpdate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ResourceAnchor]: - """Update a ResourceAnchor. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.ResourceAnchorUpdate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( + def begin_create_or_update( self, resource_group_name: str, - resource_anchor_name: str, - properties: JSON, + golden_gate_deployment_name: str, + resource: _models.GoldenGateDeployment, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.ResourceAnchor]: - """Update a ResourceAnchor. + ) -> LROPoller[_models.GoldenGateDeployment]: + """Create a GoldenGateDeployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :param properties: The resource properties to be updated. Required. - :type properties: JSON + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.models.GoldenGateDeployment :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - resource_anchor_name: str, - properties: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ResourceAnchor]: - """Update a ResourceAnchor. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :param properties: The resource properties to be updated. Required. - :type properties: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - @api_version_validation( - method_added_on="2025-04-01-preview", - params_added_on={ - "2025-04-01-preview": [ - "api_version", - "subscription_id", - "resource_group_name", - "resource_anchor_name", - "content_type", - "accept", - ] - }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def begin_update( - self, - resource_group_name: str, - resource_anchor_name: str, - properties: Union[_models.ResourceAnchorUpdate, JSON, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.ResourceAnchor]: - """Update a ResourceAnchor. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :param properties: The resource properties to be updated. Is one of the following types: - ResourceAnchorUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.ResourceAnchorUpdate or JSON or IO[bytes] - :return: An instance of LROPoller that returns ResourceAnchor. The ResourceAnchor is compatible - with MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.ResourceAnchor] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = kwargs.pop("params", {}) or {} - - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ResourceAnchor] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._update_initial( - resource_group_name=resource_group_name, - resource_anchor_name=resource_anchor_name, - properties=properties, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - response = pipeline_response.http_response - deserialized = _deserialize(_models.ResourceAnchor, response.json()) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - - if polling is True: - polling_method: PollingMethod = cast( - PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.ResourceAnchor].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.ResourceAnchor]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @api_version_validation( - method_added_on="2025-04-01-preview", - params_added_on={ - "2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "resource_anchor_name"] - }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], - ) - def _delete_initial(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_resource_anchors_delete_request( - resource_group_name=resource_group_name, - resource_anchor_name=resource_anchor_name, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns GoldenGateDeployment. The GoldenGateDeployment + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ - response_headers = {} - if response.status_code == 202: - response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) - response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + @overload + def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: _types.GoldenGateDeployment, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.GoldenGateDeployment]: + """Create a GoldenGateDeployment. - deserialized = response.iter_bytes() + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param resource: Resource create parameters. Required. + :type resource: ~azure.mgmt.oracledatabase.types.GoldenGateDeployment + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns GoldenGateDeployment. The GoldenGateDeployment + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ - if cls: - return cls(pipeline_response, deserialized, response_headers) # type: ignore + @overload + def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.GoldenGateDeployment]: + """Create a GoldenGateDeployment. - return deserialized # type: ignore + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param resource: Resource create parameters. Required. + :type resource: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns GoldenGateDeployment. The GoldenGateDeployment + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] + :raises ~azure.core.exceptions.HttpResponseError: + """ @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "resource_anchor_name"] + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] }, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def begin_delete(self, resource_group_name: str, resource_anchor_name: str, **kwargs: Any) -> LROPoller[None]: - """Delete a ResourceAnchor. + def begin_create_or_update( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + resource: Union[_models.GoldenGateDeployment, _types.GoldenGateDeployment, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.GoldenGateDeployment]: + """Create a GoldenGateDeployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param resource_anchor_name: The name of the ResourceAnchor. Required. - :type resource_anchor_name: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param resource: Resource create parameters. Is either a GoldenGateDeployment type or a + IO[bytes] type. Required. + :type resource: ~azure.mgmt.oracledatabase.models.GoldenGateDeployment or + ~azure.mgmt.oracledatabase.types.GoldenGateDeployment or IO[bytes] + :return: An instance of LROPoller that returns GoldenGateDeployment. The GoldenGateDeployment + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[None] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.GoldenGateDeployment] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._delete_initial( + raw_result = self._create_or_update_initial( resource_group_name=resource_group_name, - resource_anchor_name=resource_anchor_name, + golden_gate_deployment_name=golden_gate_deployment_name, + resource=resource, + content_type=content_type, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -18125,9 +23884,12 @@ def begin_delete(self, resource_group_name: str, resource_anchor_name: str, **kw raw_result.http_response.read() # type: ignore kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.GoldenGateDeployment, response.json()) if cls: - return cls(pipeline_response, None, {}) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized path_format_arguments = { "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), @@ -18142,42 +23904,44 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- else: polling_method = polling if cont_token: - return LROPoller[None].from_continuation_token( + return LROPoller[_models.GoldenGateDeployment].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + return LROPoller[_models.GoldenGateDeployment]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) @distributed_trace @api_version_validation( - method_added_on="2025-04-01-preview", - params_added_on={"2025-04-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, - api_versions_list=[ - "2025-04-01-preview", - "2025-06-01-preview", - "2025-07-01-preview", - "2025-08-01-preview", - "2025-08-15-preview", - "2025-09-01", - ], + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.ResourceAnchor"]: - """List ResourceAnchor resources by resource group. + def get( + self, resource_group_name: str, golden_gate_deployment_name: str, **kwargs: Any + ) -> _models.GoldenGateDeployment: + """Get a GoldenGateDeployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :return: An iterator like instance of ResourceAnchor - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.ResourceAnchor] + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :return: GoldenGateDeployment. The GoldenGateDeployment is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.GoldenGateDeployment :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.ResourceAnchor]] = kwargs.pop("cls", None) - error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -18186,196 +23950,74 @@ def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Ite } error_map.update(kwargs.pop("error_map", {}) or {}) - def prepare_request(next_link=None): - if not next_link: - - _request = build_resource_anchors_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - return _request - - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.ResourceAnchor], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - -class DbSystemsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`db_systems` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - @api_version_validation( - method_added_on="2025-07-01-preview", - params_added_on={"2025-07-01-preview": ["api_version", "subscription_id", "accept"]}, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], - ) - def list_by_subscription(self, **kwargs: Any) -> ItemPaged["_models.DbSystem"]: - """List DbSystem resources by subscription ID. - - :return: An iterator like instance of DbSystem - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbSystem] - :raises ~azure.core.exceptions.HttpResponseError: - """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.DbSystem]] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_db_systems_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + cls: ClsType[_models.GoldenGateDeployment] = kwargs.pop("cls", None) - return _request + _request = build_golden_gate_deployments_get_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbSystem], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) + _decompress = kwargs.pop("decompress", True) + _stream = kwargs.pop("stream", False) + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) - def get_next(next_link=None): - _request = prepare_request(next_link) + response = pipeline_response.http_response - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs + if response.status_code not in [200]: + if _stream: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, ) - response = pipeline_response.http_response + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + if _stream: + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + else: + deserialized = _deserialize(_models.GoldenGateDeployment, response.json()) - return pipeline_response + if cls: + return cls(pipeline_response, deserialized, {}) # type: ignore - return ItemPaged(get_next, extract_data) + return deserialized # type: ignore @api_version_validation( - method_added_on="2025-07-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-07-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "db_system_name", + "golden_gate_deployment_name", "content_type", "accept", ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def _create_or_update_initial( + def _update_initial( self, resource_group_name: str, - db_system_name: str, - resource: Union[_models.DbSystem, JSON, IO[bytes]], + golden_gate_deployment_name: str, + properties: Union[_models.GoldenGateDeploymentUpdate, _types.GoldenGateDeploymentUpdate, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -18394,14 +24036,14 @@ def _create_or_update_initial( content_type = content_type or "application/json" _content = None - if isinstance(resource, (IOBase, bytes)): - _content = resource + if isinstance(properties, (IOBase, bytes)): + _content = properties else: - _content = json.dumps(resource, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_db_systems_create_or_update_request( + _request = build_golden_gate_deployments_update_request( resource_group_name=resource_group_name, - db_system_name=db_system_name, + golden_gate_deployment_name=golden_gate_deployment_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -18414,6 +24056,7 @@ def _create_or_update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -18421,23 +24064,24 @@ def _create_or_update_initial( response = pipeline_response.http_response - if response.status_code not in [200, 201]: + if response.status_code not in [200, 202]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} - if response.status_code == 201: - response_headers["Azure-AsyncOperation"] = self._deserialize( - "str", response.headers.get("Azure-AsyncOperation") - ) + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -18445,139 +24089,140 @@ def _create_or_update_initial( return deserialized # type: ignore @overload - def begin_create_or_update( + def begin_update( self, resource_group_name: str, - db_system_name: str, - resource: _models.DbSystem, + golden_gate_deployment_name: str, + properties: _models.GoldenGateDeploymentUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.DbSystem]: - """Create a DbSystem. + ) -> LROPoller[_models.GoldenGateDeployment]: + """Update a GoldenGateDeployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :param resource: Resource create parameters. Required. - :type resource: ~azure.mgmt.oracledatabase.models.DbSystem + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.models.GoldenGateDeploymentUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :return: An instance of LROPoller that returns GoldenGateDeployment. The GoldenGateDeployment + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( + def begin_update( self, resource_group_name: str, - db_system_name: str, - resource: JSON, + golden_gate_deployment_name: str, + properties: _types.GoldenGateDeploymentUpdate, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.DbSystem]: - """Create a DbSystem. + ) -> LROPoller[_models.GoldenGateDeployment]: + """Update a GoldenGateDeployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :param resource: Resource create parameters. Required. - :type resource: JSON + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param properties: The resource properties to be updated. Required. + :type properties: ~azure.mgmt.oracledatabase.types.GoldenGateDeploymentUpdate :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :return: An instance of LROPoller that returns GoldenGateDeployment. The GoldenGateDeployment + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_create_or_update( + def begin_update( self, resource_group_name: str, - db_system_name: str, - resource: IO[bytes], + golden_gate_deployment_name: str, + properties: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.DbSystem]: - """Create a DbSystem. + ) -> LROPoller[_models.GoldenGateDeployment]: + """Update a GoldenGateDeployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :param resource: Resource create parameters. Required. - :type resource: IO[bytes] + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param properties: The resource properties to be updated. Required. + :type properties: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :return: An instance of LROPoller that returns GoldenGateDeployment. The GoldenGateDeployment + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace @api_version_validation( - method_added_on="2025-07-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-07-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "db_system_name", + "golden_gate_deployment_name", "content_type", "accept", ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def begin_create_or_update( + def begin_update( self, resource_group_name: str, - db_system_name: str, - resource: Union[_models.DbSystem, JSON, IO[bytes]], + golden_gate_deployment_name: str, + properties: Union[_models.GoldenGateDeploymentUpdate, _types.GoldenGateDeploymentUpdate, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.DbSystem]: - """Create a DbSystem. + ) -> LROPoller[_models.GoldenGateDeployment]: + """Update a GoldenGateDeployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :param resource: Resource create parameters. Is one of the following types: DbSystem, JSON, - IO[bytes] Required. - :type resource: ~azure.mgmt.oracledatabase.models.DbSystem or JSON or IO[bytes] - :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param properties: The resource properties to be updated. Is either a + GoldenGateDeploymentUpdate type or a IO[bytes] type. Required. + :type properties: ~azure.mgmt.oracledatabase.models.GoldenGateDeploymentUpdate or + ~azure.mgmt.oracledatabase.types.GoldenGateDeploymentUpdate or IO[bytes] + :return: An instance of LROPoller that returns GoldenGateDeployment. The GoldenGateDeployment + is compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DbSystem] = kwargs.pop("cls", None) + cls: ClsType[_models.GoldenGateDeployment] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._create_or_update_initial( + raw_result = self._update_initial( resource_group_name=resource_group_name, - db_system_name=db_system_name, - resource=resource, + golden_gate_deployment_name=golden_gate_deployment_name, + properties=properties, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -18589,7 +24234,7 @@ def begin_create_or_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.DbSystem, response.json()) + deserialized = _deserialize(_models.GoldenGateDeployment, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -18607,36 +24252,183 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.DbSystem].from_continuation_token( + return LROPoller[_models.GoldenGateDeployment].from_continuation_token( + polling_method=polling_method, + continuation_token=cont_token, + client=self._client, + deserialization_callback=get_long_running_output, + ) + return LROPoller[_models.GoldenGateDeployment]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) + + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def _delete_initial( + self, resource_group_name: str, golden_gate_deployment_name: str, **kwargs: Any + ) -> Iterator[bytes]: + error_map: MutableMapping = { + 401: ClientAuthenticationError, + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) + + _request = build_golden_gate_deployments_delete_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) + + _decompress = kwargs.pop("decompress", True) + _stream = True + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + + response = pipeline_response.http_response + + if response.status_code not in [202, 204]: + try: + response.read() # Load the body in memory and close the socket + except (StreamConsumedError, StreamClosedError): + pass + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) + + deserialized = response.iter_bytes() if _decompress else response.iter_raw() + + if cls: + return cls(pipeline_response, deserialized, response_headers) # type: ignore + + return deserialized # type: ignore + + @distributed_trace + @api_version_validation( + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], + ) + def begin_delete( + self, resource_group_name: str, golden_gate_deployment_name: str, **kwargs: Any + ) -> LROPoller[None]: + """Delete a GoldenGateDeployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :return: An instance of LROPoller that returns None + :rtype: ~azure.core.polling.LROPoller[None] + :raises ~azure.core.exceptions.HttpResponseError: + """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[None] = kwargs.pop("cls", None) + polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) + lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) + cont_token: Optional[str] = kwargs.pop("continuation_token", None) + if cont_token is None: + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + cls=lambda x, y, z: x, + headers=_headers, + params=_params, + **kwargs + ) + raw_result.http_response.read() # type: ignore + kwargs.pop("error_map", None) + + def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + if cls: + return cls(pipeline_response, None, {}) # type: ignore + + path_format_arguments = { + "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), + } + + if polling is True: + polling_method: PollingMethod = cast( + PollingMethod, ARMPolling(lro_delay, path_format_arguments=path_format_arguments, **kwargs) + ) + elif polling is False: + polling_method = cast(PollingMethod, NoPolling()) + else: + polling_method = polling + if cont_token: + return LROPoller[None].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.DbSystem]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) + return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore @distributed_trace @api_version_validation( - method_added_on="2025-07-01-preview", - params_added_on={ - "2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "db_system_name", "accept"] - }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + method_added_on="2026-03-01-preview", + params_added_on={"2026-03-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def get(self, resource_group_name: str, db_system_name: str, **kwargs: Any) -> _models.DbSystem: - """Get a DbSystem. + def list_by_resource_group( + self, resource_group_name: str, **kwargs: Any + ) -> ItemPaged["_models.GoldenGateDeployment"]: + """List GoldenGateDeployment resources by resource group. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :return: DbSystem. The DbSystem is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.DbSystem + :return: An iterator like instance of GoldenGateDeployment + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.GoldenGateDeployment] :raises ~azure.core.exceptions.HttpResponseError: """ + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[List[_models.GoldenGateDeployment]] = kwargs.pop("cls", None) + error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -18645,70 +24437,98 @@ def get(self, resource_group_name: str, db_system_name: str, **kwargs: Any) -> _ } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} + def prepare_request(next_link=None): + if not next_link: - cls: ClsType[_models.DbSystem] = kwargs.pop("cls", None) + _request = build_golden_gate_deployments_list_by_resource_group_request( + resource_group_name=resource_group_name, + subscription_id=self._config.subscription_id, + api_version=self._config.api_version, + headers=_headers, + params=_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - _request = build_db_systems_get_request( - resource_group_name=resource_group_name, - db_system_name=db_system_name, - subscription_id=self._config.subscription_id, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) + else: + # make call to next link with the client's api-version + _parsed_next_link = urllib.parse.urlparse(next_link) + _next_request_params = case_insensitive_dict( + { + key: [urllib.parse.quote(v) for v in value] + for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() + } + ) + _next_request_params["api-version"] = self._config.api_version + _request = HttpRequest( + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, + ) + path_format_arguments = { + "endpoint": self._serialize.url( + "self._config.base_url", self._config.base_url, "str", skip_quote=True + ), + } + _request.url = self._client.format_url(_request.url, **path_format_arguments) - _stream = kwargs.pop("stream", False) - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) + return _request - response = pipeline_response.http_response + def extract_data(pipeline_response): + deserialized = pipeline_response.http_response.json() + list_of_elem = _deserialize( + List[_models.GoldenGateDeployment], + deserialized.get("value", []), + ) + if cls: + list_of_elem = cls(list_of_elem) # type: ignore + return deserialized.get("nextLink") or None, iter(list_of_elem) - if response.status_code not in [200]: - if _stream: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + def get_next(next_link=None): + _request = prepare_request(next_link) - if _stream: - deserialized = response.iter_bytes() - else: - deserialized = _deserialize(_models.DbSystem, response.json()) + _stream = False + pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + response = pipeline_response.http_response - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) + raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - return deserialized # type: ignore + return pipeline_response + + return ItemPaged(get_next, extract_data) @api_version_validation( - method_added_on="2025-07-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-07-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "db_system_name", + "golden_gate_deployment_name", "content_type", "accept", ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def _update_initial( + def _assign_connection_initial( self, resource_group_name: str, - db_system_name: str, - properties: Union[_models.DbSystemUpdate, JSON, IO[bytes]], + golden_gate_deployment_name: str, + body: Union[_models.AssignUnassignConnection, _types.AssignUnassignConnection, IO[bytes]], **kwargs: Any ) -> Iterator[bytes]: error_map: MutableMapping = { @@ -18727,14 +24547,14 @@ def _update_initial( content_type = content_type or "application/json" _content = None - if isinstance(properties, (IOBase, bytes)): - _content = properties + if isinstance(body, (IOBase, bytes)): + _content = body else: - _content = json.dumps(properties, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore - _request = build_db_systems_update_request( + _request = build_golden_gate_deployments_assign_connection_request( resource_group_name=resource_group_name, - db_system_name=db_system_name, + golden_gate_deployment_name=golden_gate_deployment_name, subscription_id=self._config.subscription_id, content_type=content_type, api_version=self._config.api_version, @@ -18747,6 +24567,7 @@ def _update_initial( } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -18760,7 +24581,10 @@ def _update_initial( except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -18768,7 +24592,7 @@ def _update_initial( response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore @@ -18776,139 +24600,140 @@ def _update_initial( return deserialized # type: ignore @overload - def begin_update( + def begin_assign_connection( self, resource_group_name: str, - db_system_name: str, - properties: _models.DbSystemUpdate, + golden_gate_deployment_name: str, + body: _models.AssignUnassignConnection, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.DbSystem]: - """Update a DbSystem. + ) -> LROPoller[_models.AssignedConnection]: + """Assign a GoldenGate connection to a deployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :param properties: The resource properties to be updated. Required. - :type properties: ~azure.mgmt.oracledatabase.models.DbSystemUpdate + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignConnection :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :return: An instance of LROPoller that returns AssignedConnection. The AssignedConnection is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_update( + def begin_assign_connection( self, resource_group_name: str, - db_system_name: str, - properties: JSON, + golden_gate_deployment_name: str, + body: _types.AssignUnassignConnection, *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.DbSystem]: - """Update a DbSystem. + ) -> LROPoller[_models.AssignedConnection]: + """Assign a GoldenGate connection to a deployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :param properties: The resource properties to be updated. Required. - :type properties: JSON + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AssignUnassignConnection :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :return: An instance of LROPoller that returns AssignedConnection. The AssignedConnection is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] :raises ~azure.core.exceptions.HttpResponseError: """ @overload - def begin_update( + def begin_assign_connection( self, resource_group_name: str, - db_system_name: str, - properties: IO[bytes], + golden_gate_deployment_name: str, + body: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> LROPoller[_models.DbSystem]: - """Update a DbSystem. + ) -> LROPoller[_models.AssignedConnection]: + """Assign a GoldenGate connection to a deployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :param properties: The resource properties to be updated. Required. - :type properties: IO[bytes] + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: IO[bytes] :keyword content_type: Body Parameter content-type. Content type parameter for binary body. Default value is "application/json". :paramtype content_type: str - :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :return: An instance of LROPoller that returns AssignedConnection. The AssignedConnection is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] :raises ~azure.core.exceptions.HttpResponseError: """ @distributed_trace @api_version_validation( - method_added_on="2025-07-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-07-01-preview": [ + "2026-03-01-preview": [ "api_version", "subscription_id", "resource_group_name", - "db_system_name", + "golden_gate_deployment_name", "content_type", "accept", ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def begin_update( + def begin_assign_connection( self, resource_group_name: str, - db_system_name: str, - properties: Union[_models.DbSystemUpdate, JSON, IO[bytes]], + golden_gate_deployment_name: str, + body: Union[_models.AssignUnassignConnection, _types.AssignUnassignConnection, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.DbSystem]: - """Update a DbSystem. + ) -> LROPoller[_models.AssignedConnection]: + """Assign a GoldenGate connection to a deployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :param properties: The resource properties to be updated. Is one of the following types: - DbSystemUpdate, JSON, IO[bytes] Required. - :type properties: ~azure.mgmt.oracledatabase.models.DbSystemUpdate or JSON or IO[bytes] - :return: An instance of LROPoller that returns DbSystem. The DbSystem is compatible with - MutableMapping - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.DbSystem] + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Is either a AssignUnassignConnection type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignConnection or + ~azure.mgmt.oracledatabase.types.AssignUnassignConnection or IO[bytes] + :return: An instance of LROPoller that returns AssignedConnection. The AssignedConnection is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.DbSystem] = kwargs.pop("cls", None) + cls: ClsType[_models.AssignedConnection] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._update_initial( + raw_result = self._assign_connection_initial( resource_group_name=resource_group_name, - db_system_name=db_system_name, - properties=properties, + golden_gate_deployment_name=golden_gate_deployment_name, + body=body, content_type=content_type, cls=lambda x, y, z: x, headers=_headers, @@ -18920,7 +24745,7 @@ def begin_update( def get_long_running_output(pipeline_response): response = pipeline_response.http_response - deserialized = _deserialize(_models.DbSystem, response.json()) + deserialized = _deserialize(_models.AssignedConnection, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized @@ -18938,24 +24763,37 @@ def get_long_running_output(pipeline_response): else: polling_method = polling if cont_token: - return LROPoller[_models.DbSystem].from_continuation_token( + return LROPoller[_models.AssignedConnection].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[_models.DbSystem]( + return LROPoller[_models.AssignedConnection]( self._client, raw_result, get_long_running_output, polling_method # type: ignore ) @api_version_validation( - method_added_on="2025-07-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "db_system_name"] + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def _delete_initial(self, resource_group_name: str, db_system_name: str, **kwargs: Any) -> Iterator[bytes]: + def _unassign_connection_initial( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: Union[_models.AssignUnassignConnection, _types.AssignUnassignConnection, IO[bytes]], + **kwargs: Any + ) -> Iterator[bytes]: error_map: MutableMapping = { 401: ClientAuthenticationError, 404: ResourceNotFoundError, @@ -18964,16 +24802,26 @@ def _delete_initial(self, resource_group_name: str, db_system_name: str, **kwarg } error_map.update(kwargs.pop("error_map", {}) or {}) - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - _request = build_db_systems_delete_request( + content_type = content_type or "application/json" + _content = None + if isinstance(body, (IOBase, bytes)): + _content = body + else: + _content = json.dumps(body, cls=SdkJSONEncoder, exclude_readonly=True) # type: ignore + + _request = build_golden_gate_deployments_unassign_connection_request( resource_group_name=resource_group_name, - db_system_name=db_system_name, + golden_gate_deployment_name=golden_gate_deployment_name, subscription_id=self._config.subscription_id, + content_type=content_type, api_version=self._config.api_version, + content=_content, headers=_headers, params=_params, ) @@ -18982,6 +24830,7 @@ def _delete_initial(self, resource_group_name: str, db_system_name: str, **kwarg } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = True pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -18989,13 +24838,16 @@ def _delete_initial(self, resource_group_name: str, db_system_name: str, **kwarg response = pipeline_response.http_response - if response.status_code not in [202, 204]: + if response.status_code not in [200, 202]: try: response.read() # Load the body in memory and close the socket except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) response_headers = {} @@ -19003,44 +24855,149 @@ def _delete_initial(self, resource_group_name: str, db_system_name: str, **kwarg response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) response_headers["Retry-After"] = self._deserialize("int", response.headers.get("Retry-After")) - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() if cls: return cls(pipeline_response, deserialized, response_headers) # type: ignore - return deserialized # type: ignore + return deserialized # type: ignore + + @overload + def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: _models.AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AssignedConnection]: + """Unassign a GoldenGate connection from a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AssignedConnection. The AssignedConnection is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: _types.AssignUnassignConnection, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AssignedConnection]: + """Unassign a GoldenGate connection from a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: ~azure.mgmt.oracledatabase.types.AssignUnassignConnection + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AssignedConnection. The AssignedConnection is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ + + @overload + def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: IO[bytes], + *, + content_type: str = "application/json", + **kwargs: Any + ) -> LROPoller[_models.AssignedConnection]: + """Unassign a GoldenGate connection from a deployment. + + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Required. + :type body: IO[bytes] + :keyword content_type: Body Parameter content-type. Content type parameter for binary body. + Default value is "application/json". + :paramtype content_type: str + :return: An instance of LROPoller that returns AssignedConnection. The AssignedConnection is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] + :raises ~azure.core.exceptions.HttpResponseError: + """ @distributed_trace @api_version_validation( - method_added_on="2025-07-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "db_system_name"] + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "content_type", + "accept", + ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def begin_delete(self, resource_group_name: str, db_system_name: str, **kwargs: Any) -> LROPoller[None]: - """Delete a DbSystem. + def begin_unassign_connection( + self, + resource_group_name: str, + golden_gate_deployment_name: str, + body: Union[_models.AssignUnassignConnection, _types.AssignUnassignConnection, IO[bytes]], + **kwargs: Any + ) -> LROPoller[_models.AssignedConnection]: + """Unassign a GoldenGate connection from a deployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :param db_system_name: The name of the DbSystem. Required. - :type db_system_name: str - :return: An instance of LROPoller that returns None - :rtype: ~azure.core.polling.LROPoller[None] + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param body: The content of the action request. Is either a AssignUnassignConnection type or a + IO[bytes] type. Required. + :type body: ~azure.mgmt.oracledatabase.models.AssignUnassignConnection or + ~azure.mgmt.oracledatabase.types.AssignUnassignConnection or IO[bytes] + :return: An instance of LROPoller that returns AssignedConnection. The AssignedConnection is + compatible with MutableMapping + :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.oracledatabase.models.AssignedConnection] :raises ~azure.core.exceptions.HttpResponseError: """ - _headers = kwargs.pop("headers", {}) or {} + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = kwargs.pop("params", {}) or {} - cls: ClsType[None] = kwargs.pop("cls", None) + content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) + cls: ClsType[_models.AssignedConnection] = kwargs.pop("cls", None) polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) cont_token: Optional[str] = kwargs.pop("continuation_token", None) if cont_token is None: - raw_result = self._delete_initial( + raw_result = self._unassign_connection_initial( resource_group_name=resource_group_name, - db_system_name=db_system_name, + golden_gate_deployment_name=golden_gate_deployment_name, + body=body, + content_type=content_type, cls=lambda x, y, z: x, headers=_headers, params=_params, @@ -19049,9 +25006,12 @@ def begin_delete(self, resource_group_name: str, db_system_name: str, **kwargs: raw_result.http_response.read() # type: ignore kwargs.pop("error_map", None) - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements + def get_long_running_output(pipeline_response): + response = pipeline_response.http_response + deserialized = _deserialize(_models.AssignedConnection, response.json()) if cls: - return cls(pipeline_response, None, {}) # type: ignore + return cls(pipeline_response, deserialized, {}) # type: ignore + return deserialized path_format_arguments = { "endpoint": self._serialize.url("self._config.base_url", self._config.base_url, "str", skip_quote=True), @@ -19066,34 +25026,48 @@ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent- else: polling_method = polling if cont_token: - return LROPoller[None].from_continuation_token( + return LROPoller[_models.AssignedConnection].from_continuation_token( polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output, ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore + return LROPoller[_models.AssignedConnection]( + self._client, raw_result, get_long_running_output, polling_method # type: ignore + ) @distributed_trace @api_version_validation( - method_added_on="2025-07-01-preview", - params_added_on={"2025-07-01-preview": ["api_version", "subscription_id", "resource_group_name", "accept"]}, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + method_added_on="2026-03-01-preview", + params_added_on={ + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "accept", + ] + }, + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> ItemPaged["_models.DbSystem"]: - """List DbSystem resources by resource group. + def list_assigned_connections_by_parent( + self, resource_group_name: str, golden_gate_deployment_name: str, **kwargs: Any + ) -> ItemPaged["_models.AssignedConnection"]: + """List assigned connections by GoldenGate deployment. :param resource_group_name: The name of the resource group. The name is case insensitive. Required. :type resource_group_name: str - :return: An iterator like instance of DbSystem - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbSystem] + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :return: An iterator like instance of AssignedConnection + :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.AssignedConnection] :raises ~azure.core.exceptions.HttpResponseError: """ _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[List[_models.DbSystem]] = kwargs.pop("cls", None) + cls: ClsType[List[_models.AssignedConnection]] = kwargs.pop("cls", None) error_map: MutableMapping = { 401: ClientAuthenticationError, @@ -19106,8 +25080,9 @@ def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Ite def prepare_request(next_link=None): if not next_link: - _request = build_db_systems_list_by_resource_group_request( + _request = build_golden_gate_deployments_list_assigned_connections_by_parent_request( resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -19131,7 +25106,10 @@ def prepare_request(next_link=None): ) _next_request_params["api-version"] = self._config.api_version _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params + "GET", + urllib.parse.urljoin(next_link, _parsed_next_link.path), + headers=_headers, + params=_next_request_params, ) path_format_arguments = { "endpoint": self._serialize.url( @@ -19144,7 +25122,10 @@ def prepare_request(next_link=None): def extract_data(pipeline_response): deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbSystem], deserialized.get("value", [])) + list_of_elem = _deserialize( + List[_models.AssignedConnection], + deserialized.get("value", []), + ) if cls: list_of_elem = cls(list_of_elem) # type: ignore return deserialized.get("nextLink") or None, iter(list_of_elem) @@ -19160,48 +25141,45 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response return ItemPaged(get_next, extract_data) - -class DbVersionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.oracledatabase.OracleDatabaseMgmtClient`'s - :attr:`db_versions` attribute. - """ - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: OracleDatabaseMgmtClientConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - @distributed_trace @api_version_validation( - method_added_on="2025-07-01-preview", + method_added_on="2026-03-01-preview", params_added_on={ - "2025-07-01-preview": ["api_version", "subscription_id", "location", "dbversionsname", "accept"] + "2026-03-01-preview": [ + "api_version", + "subscription_id", + "resource_group_name", + "golden_gate_deployment_name", + "assignment_id", + "accept", + ] }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], + api_versions_list=["2026-03-01-preview", "2026-04-01-preview", "2026-05-01-preview", "2026-06-01"], ) - def get(self, location: str, dbversionsname: str, **kwargs: Any) -> _models.DbVersion: - """Get a DbVersion. + def get_assigned_connection( + self, resource_group_name: str, golden_gate_deployment_name: str, assignment_id: str, **kwargs: Any + ) -> _models.AssignedConnection: + """Get assigned connection by GoldenGate deployment. - :param location: The name of the Azure region. Required. - :type location: str - :param dbversionsname: DbVersion name. Required. - :type dbversionsname: str - :return: DbVersion. The DbVersion is compatible with MutableMapping - :rtype: ~azure.mgmt.oracledatabase.models.DbVersion + :param resource_group_name: The name of the resource group. The name is case insensitive. + Required. + :type resource_group_name: str + :param golden_gate_deployment_name: The name of the GoldenGateDeployment. Required. + :type golden_gate_deployment_name: str + :param assignment_id: Assigned Connection assignment OCID. Required. + :type assignment_id: str + :return: AssignedConnection. The AssignedConnection is compatible with MutableMapping + :rtype: ~azure.mgmt.oracledatabase.models.AssignedConnection :raises ~azure.core.exceptions.HttpResponseError: """ error_map: MutableMapping = { @@ -19215,11 +25193,12 @@ def get(self, location: str, dbversionsname: str, **kwargs: Any) -> _models.DbVe _headers = kwargs.pop("headers", {}) or {} _params = kwargs.pop("params", {}) or {} - cls: ClsType[_models.DbVersion] = kwargs.pop("cls", None) + cls: ClsType[_models.AssignedConnection] = kwargs.pop("cls", None) - _request = build_db_versions_get_request( - location=location, - dbversionsname=dbversionsname, + _request = build_golden_gate_deployments_get_assigned_connection_request( + resource_group_name=resource_group_name, + golden_gate_deployment_name=golden_gate_deployment_name, + assignment_id=assignment_id, subscription_id=self._config.subscription_id, api_version=self._config.api_version, headers=_headers, @@ -19230,6 +25209,7 @@ def get(self, location: str, dbversionsname: str, **kwargs: Any) -> _models.DbVe } _request.url = self._client.format_url(_request.url, **path_format_arguments) + _decompress = kwargs.pop("decompress", True) _stream = kwargs.pop("stream", False) pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access _request, stream=_stream, **kwargs @@ -19244,159 +25224,18 @@ def get(self, location: str, dbversionsname: str, **kwargs: Any) -> _models.DbVe except (StreamConsumedError, StreamClosedError): pass map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) + error = _failsafe_deserialize( + _models.ErrorResponse, + response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) if _stream: - deserialized = response.iter_bytes() + deserialized = response.iter_bytes() if _decompress else response.iter_raw() else: - deserialized = _deserialize(_models.DbVersion, response.json()) + deserialized = _deserialize(_models.AssignedConnection, response.json()) if cls: return cls(pipeline_response, deserialized, {}) # type: ignore return deserialized # type: ignore - - @distributed_trace - @api_version_validation( - method_added_on="2025-07-01-preview", - params_added_on={ - "2025-07-01-preview": [ - "api_version", - "subscription_id", - "location", - "db_system_shape", - "db_system_id", - "storage_management", - "is_upgrade_supported", - "is_database_software_image_supported", - "shape_family", - "accept", - ] - }, - api_versions_list=["2025-07-01-preview", "2025-08-01-preview", "2025-08-15-preview", "2025-09-01"], - ) - def list_by_location( - self, - location: str, - *, - db_system_shape: Optional[Union[str, _models.BaseDbSystemShapes]] = None, - db_system_id: Optional[str] = None, - storage_management: Optional[Union[str, _models.StorageManagementType]] = None, - is_upgrade_supported: Optional[bool] = None, - is_database_software_image_supported: Optional[bool] = None, - shape_family: Optional[Union[str, _models.ShapeFamilyType]] = None, - **kwargs: Any - ) -> ItemPaged["_models.DbVersion"]: - """List DbVersion resources by SubscriptionLocationResource. - - :param location: The name of the Azure region. Required. - :type location: str - :keyword db_system_shape: If provided, filters the results to the set of database versions - which are supported for the given shape. e.g., VM.Standard.E5.Flex. "VM.Standard.x86" Default - value is None. - :paramtype db_system_shape: str or ~azure.mgmt.oracledatabase.models.BaseDbSystemShapes - :keyword db_system_id: The DB system AzureId. If provided, filters the results to the set of - database versions which are supported for the DB system. Default value is None. - :paramtype db_system_id: str - :keyword storage_management: The DB system storage management option. Used to list database - versions available for that storage manager. Valid values are ASM and LVM. "LVM" Default value - is None. - :paramtype storage_management: str or ~azure.mgmt.oracledatabase.models.StorageManagementType - :keyword is_upgrade_supported: If true, filters the results to the set of database versions - which are supported for Upgrade. Default value is None. - :paramtype is_upgrade_supported: bool - :keyword is_database_software_image_supported: If true, filters the results to the set of - Oracle Database versions that are supported for the database software images. Default value is - None. - :paramtype is_database_software_image_supported: bool - :keyword shape_family: If provided, filters the results to the set of database versions which - are supported for the given shape family. Known values are: "EXADATA", "EXADB_XS", - "SINGLENODE", and "VIRTUALMACHINE". Default value is None. - :paramtype shape_family: str or ~azure.mgmt.oracledatabase.models.ShapeFamilyType - :return: An iterator like instance of DbVersion - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.oracledatabase.models.DbVersion] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[List[_models.DbVersion]] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_db_versions_list_by_location_request( - location=location, - subscription_id=self._config.subscription_id, - db_system_shape=db_system_shape, - db_system_id=db_system_id, - storage_management=storage_management, - is_upgrade_supported=is_upgrade_supported, - is_database_software_image_supported=is_database_software_image_supported, - shape_family=shape_family, - api_version=self._config.api_version, - headers=_headers, - params=_params, - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._config.api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - path_format_arguments = { - "endpoint": self._serialize.url( - "self._config.base_url", self._config.base_url, "str", skip_quote=True - ), - } - _request.url = self._client.format_url(_request.url, **path_format_arguments) - - return _request - - def extract_data(pipeline_response): - deserialized = pipeline_response.http_response.json() - list_of_elem = _deserialize(List[_models.DbVersion], deserialized.get("value", [])) - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.get("nextLink") or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = _failsafe_deserialize(_models.ErrorResponse, response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/_patch.py index 8bcb627aa475..b6400f50d7ce 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/_patch.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/operations/_patch.py @@ -7,6 +7,7 @@ Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize """ + from typing import List __all__: List[str] = [] # Add all objects you want publicly available to users at this package level diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/types.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/types.py new file mode 100644 index 000000000000..b0af7481941b --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/azure/mgmt/oracledatabase/types.py @@ -0,0 +1,5915 @@ +# pylint: disable=line-too-long,useless-suppression,too-many-lines +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from typing import Literal, TYPE_CHECKING, Union +from typing_extensions import Required, TypedDict + +from .models._enums import ConnectionType, DataBaseType, DbSystemSourceType, SourceType + +if TYPE_CHECKING: + from .models import ( + AddSubscriptionOperationState, + AutonomousDatabaseBackupLifecycleState, + AutonomousDatabaseBackupType, + AutonomousDatabaseLifecycleActionEnum, + AutonomousDatabaseLifecycleState, + AutonomousMaintenanceScheduleType, + AzureResourceProvisioningState, + BackupDestinationType, + CategoryType, + CloneType, + CloudAccountProvisioningState, + CloudExadataInfrastructureLifecycleState, + CloudVmClusterLifecycleState, + ComputeModel, + ConnectionLifecycleState, + ConnectionType, + ConsumerGroup, + CreatedByType, + CredentialType, + DataSafeStatusType, + DatabaseEditionType, + DayOfWeekName, + DbNodeActionEnum, + DbSystemDatabaseEditionType, + DbSystemLifecycleState, + DeploymentLifecycleState, + DeploymentType, + DisasterRecoveryType, + DiskRedundancy, + DiskRedundancyType, + ExadataVmClusterStorageManagementType, + ExadbVmClusterLifecycleState, + ExascaleDbStorageVaultLifecycleState, + FrequencyType, + GenerateType, + GridImageType, + HostFormatType, + Intent, + IormLifecycleState, + KafkaConnectionTechnologyType, + LicenseModel, + MicrosoftFabricConnectionTechnologyType, + MonthName, + Objective, + OpenModeType, + OperationsInsightsStatusType, + OracleConnectionTechnologyType, + OracleSubscriptionProvisioningState, + PatchingMode, + PermissionLevelType, + Preference, + ProtocolType, + ProximityPlacementGroupEntityType, + RefreshableModelType, + RefreshableStatusType, + RepeatCadenceType, + RoleType, + RoutingMethod, + SessionMode, + SessionModeType, + SetupType, + ShapeAttribute, + SourceType, + StorageManagementType, + StorageVolumePerformanceMode, + SyntaxFormatType, + TlsAuthenticationType, + VirtualNetworkAddressLifecycleState, + WorkloadType, + ) + + +class AddRemoveDbNode(TypedDict, total=False): + """Add/Remove (Virtual Machine) DbNode model. + + :ivar dbServers: Db servers ocids. Required. + :vartype dbServers: list[str] + """ + + dbServers: Required[list[str]] + """Db servers ocids. Required.""" + + +class AllConnectionStringType(TypedDict, total=False): + """The connection string profile to allow clients to group, filter and select connection string + values based on structured metadata. + + :ivar high: The High database service provides the highest level of resources to each SQL + statement resulting in the highest performance, but supports the fewest number of concurrent + SQL statements. + :vartype high: str + :ivar low: The Low database service provides the least level of resources to each SQL + statement, but supports the most number of concurrent SQL statements. + :vartype low: str + :ivar medium: The Medium database service provides a lower level of resources to each SQL + statement potentially resulting a lower level of performance, but supports more concurrent SQL + statements. + :vartype medium: str + """ + + high: str + """The High database service provides the highest level of resources to each SQL statement + resulting in the highest performance, but supports the fewest number of concurrent SQL + statements.""" + low: str + """The Low database service provides the least level of resources to each SQL statement, but + supports the most number of concurrent SQL statements.""" + medium: str + """The Medium database service provides a lower level of resources to each SQL statement + potentially resulting a lower level of performance, but supports more concurrent SQL + statements.""" + + +class ApexDetailsType(TypedDict, total=False): + """Information about Oracle APEX Application Development. + + :ivar apexVersion: The Oracle APEX Application Development version. + :vartype apexVersion: str + :ivar ordsVersion: The Oracle REST Data Services (ORDS) version. + :vartype ordsVersion: str + """ + + apexVersion: str + """The Oracle APEX Application Development version.""" + ordsVersion: str + """The Oracle REST Data Services (ORDS) version.""" + + +class Resource(TypedDict, total=False): + """Resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + """ + + id: str + """Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.""" + name: str + """The name of the resource.""" + type: str + """The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or + \"Microsoft.Storage/storageAccounts\".""" + systemData: "SystemData" + """Azure Resource Manager metadata containing createdBy and modifiedBy information.""" + + +class ProxyResource(Resource): + """Proxy Resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + """ + + +class AssignUnassignConnection(TypedDict, total=False): + """The payload for assigning or unassigning a connection on a deployment. + + :ivar connectionId: The Azure resource ID of the connection to assign or unassign. Required. + :vartype connectionId: str + """ + + connectionId: Required[str] + """The Azure resource ID of the connection to assign or unassign. Required.""" + + +class AssignUnassignDeployment(TypedDict, total=False): + """The payload for assigning or unassigning a deployment on a connection. + + :ivar deploymentId: The Azure resource ID of the deployment to assign or unassign. Required. + :vartype deploymentId: str + """ + + deploymentId: Required[str] + """The Azure resource ID of the deployment to assign or unassign. Required.""" + + +class TrackedResource(Resource): + """Tracked Resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + """ + + tags: dict[str, str] + """Resource tags.""" + location: Required[str] + """The geo-location where the resource lives. Required.""" + + +class AutonomousDatabase(TrackedResource): + """Autonomous Database resource model. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "AutonomousDatabaseBaseProperties" + """ + + properties: "AutonomousDatabaseBaseProperties" + """The resource-specific properties for this resource.""" + + +class AutonomousDatabaseBackup(ProxyResource): + """AutonomousDatabaseBackup resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "AutonomousDatabaseBackupProperties" + """ + + properties: "AutonomousDatabaseBackupProperties" + """The resource-specific properties for this resource.""" + + +class AutonomousDatabaseBackupProperties(TypedDict, total=False): + """AutonomousDatabaseBackup resource model. + + :ivar autonomousDatabaseOcid: The OCID of the Autonomous Database. + :vartype autonomousDatabaseOcid: str + :ivar databaseSizeInTbs: The size of the database in terabytes at the time the backup was + taken. + :vartype databaseSizeInTbs: float + :ivar dbVersion: A valid Oracle Database version for Autonomous Database. + :vartype dbVersion: str + :ivar displayName: The user-friendly name for the backup. The name does not have to be unique. + :vartype displayName: str + :ivar ocid: The OCID of the Autonomous Database backup. + :vartype ocid: str + :ivar isAutomatic: Indicates whether the backup is user-initiated or automatic. + :vartype isAutomatic: bool + :ivar isRestorable: Indicates whether the backup can be used to restore the associated + Autonomous Database. + :vartype isRestorable: bool + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar lifecycleState: The current state of the backup. Known values are: "Creating", "Active", + "Deleting", "Failed", and "Updating". + :vartype lifecycleState: Union[str, "AutonomousDatabaseBackupLifecycleState"] + :ivar retentionPeriodInDays: Retention period, in days. + :vartype retentionPeriodInDays: int + :ivar sizeInTbs: The backup size in terabytes (TB). + :vartype sizeInTbs: float + :ivar timeAvailableTil: Timestamp until when the backup will be available. + :vartype timeAvailableTil: str + :ivar timeStarted: The date and time the backup started. + :vartype timeStarted: str + :ivar timeEnded: The date and time the backup completed. + :vartype timeEnded: str + :ivar backupType: The type of backup. Known values are: "Incremental", "Full", and "LongTerm". + :vartype backupType: Union[str, "AutonomousDatabaseBackupType"] + :ivar provisioningState: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar backupDestination: The destination where this backup is stored. Known values are: "OCI" + and "AZURE". + :vartype backupDestination: Union[str, "BackupDestinationType"] + """ + + autonomousDatabaseOcid: str + """The OCID of the Autonomous Database.""" + databaseSizeInTbs: float + """The size of the database in terabytes at the time the backup was taken.""" + dbVersion: str + """A valid Oracle Database version for Autonomous Database.""" + displayName: str + """The user-friendly name for the backup. The name does not have to be unique.""" + ocid: str + """The OCID of the Autonomous Database backup.""" + isAutomatic: bool + """Indicates whether the backup is user-initiated or automatic.""" + isRestorable: bool + """Indicates whether the backup can be used to restore the associated Autonomous Database.""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + lifecycleState: Union[str, "AutonomousDatabaseBackupLifecycleState"] + """The current state of the backup. Known values are: \"Creating\", \"Active\", \"Deleting\", + \"Failed\", and \"Updating\".""" + retentionPeriodInDays: int + """Retention period, in days.""" + sizeInTbs: float + """The backup size in terabytes (TB).""" + timeAvailableTil: str + """Timestamp until when the backup will be available.""" + timeStarted: str + """The date and time the backup started.""" + timeEnded: str + """The date and time the backup completed.""" + backupType: Union[str, "AutonomousDatabaseBackupType"] + """The type of backup. Known values are: \"Incremental\", \"Full\", and \"LongTerm\".""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + backupDestination: Union[str, "BackupDestinationType"] + """The destination where this backup is stored. Known values are: \"OCI\" and \"AZURE\".""" + + +class AutonomousDatabaseBackupUpdate(TypedDict, total=False): + """The type used for update operations of the AutonomousDatabaseBackup. + + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "AutonomousDatabaseBackupUpdateProperties" + """ + + properties: "AutonomousDatabaseBackupUpdateProperties" + """The resource-specific properties for this resource.""" + + +class AutonomousDatabaseBackupUpdateProperties(TypedDict, total=False): + """The updatable properties of the AutonomousDatabaseBackup. + + :ivar retentionPeriodInDays: Retention period, in days. + :vartype retentionPeriodInDays: int + """ + + retentionPeriodInDays: int + """Retention period, in days.""" + + +class AutonomousDatabaseCloneProperties(TypedDict, total=False): + """Autonomous Database clone resource model. + + :ivar adminPassword: Admin password. + :vartype adminPassword: str + :ivar autonomousMaintenanceScheduleType: The maintenance schedule type of the Autonomous + Database Serverless. Known values are: "Early" and "Regular". + :vartype autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + :ivar characterSet: The character set for the autonomous database. + :vartype characterSet: str + :ivar computeCount: The compute amount (CPUs) available to the database. + :vartype computeCount: float + :ivar computeModel: The compute model of the Autonomous Database. Known values are: "ECPU" and + "OCPU". + :vartype computeModel: Union[str, "ComputeModel"] + :ivar cpuCoreCount: The number of CPU cores to be made available to the database. + :vartype cpuCoreCount: int + :ivar customerContacts: Customer Contacts. + :vartype customerContacts: list["CustomerContact"] + :ivar dataStorageSizeInTbs: The quantity of data in the database, in terabytes. + :vartype dataStorageSizeInTbs: int + :ivar dataStorageSizeInGbs: The size, in gigabytes, of the data volume that will be created and + attached to the database. + :vartype dataStorageSizeInGbs: int + :ivar dbVersion: A valid Oracle Database version for Autonomous Database. + :vartype dbVersion: str + :ivar dbWorkload: The Autonomous Database workload type. Known values are: "OLTP", "DW", "AJD", + "APEX", and "LH". + :vartype dbWorkload: Union[str, "WorkloadType"] + :ivar displayName: The user-friendly name for the Autonomous Database. + :vartype displayName: str + :ivar isAutoScalingEnabled: Indicates if auto scaling is enabled for the Autonomous Database + CPU core count. + :vartype isAutoScalingEnabled: bool + :ivar isAutoScalingForStorageEnabled: Indicates if auto scaling is enabled for the Autonomous + Database storage. + :vartype isAutoScalingForStorageEnabled: bool + :ivar peerDbIds: The list of Azure resource IDs of standby databases located in Autonomous Data + Guard remote regions that are associated with the source database. Note that for Autonomous + Database Serverless instances, standby databases located in the same region as the source + primary database do not have Azure IDs. + :vartype peerDbIds: list[str] + :ivar peerDbId: The Azure resource ID of the Disaster Recovery peer database, which is located + in a different region from the current peer database. + :vartype peerDbId: str + :ivar isLocalDataGuardEnabled: Indicates whether the Autonomous Database has local or called + in-region Data Guard enabled. + :vartype isLocalDataGuardEnabled: bool + :ivar isRemoteDataGuardEnabled: Indicates whether the Autonomous Database has Cross Region Data + Guard enabled. + :vartype isRemoteDataGuardEnabled: bool + :ivar localDisasterRecoveryType: Indicates the local disaster recovery (DR) type of the + Autonomous Database Serverless instance.Autonomous Data Guard (ADG) DR type provides business + critical DR with a faster recovery time objective (RTO) during failover or + switchover.Backup-based DR type provides lower cost DR with a slower RTO during failover or + switchover. Known values are: "Adg" and "BackupBased". + :vartype localDisasterRecoveryType: Union[str, "DisasterRecoveryType"] + :ivar timeDisasterRecoveryRoleChanged: The date and time the Disaster Recovery role was + switched for the standby Autonomous Database. + :vartype timeDisasterRecoveryRoleChanged: str + :ivar remoteDisasterRecoveryConfiguration: Indicates remote disaster recovery configuration. + :vartype remoteDisasterRecoveryConfiguration: "DisasterRecoveryConfigurationDetails" + :ivar localStandbyDb: Local Autonomous Disaster Recovery standby database details. + :vartype localStandbyDb: "AutonomousDatabaseStandbySummary" + :ivar failedDataRecoveryInSeconds: Indicates the number of seconds of data loss for a Data + Guard failover. + :vartype failedDataRecoveryInSeconds: int + :ivar isMtlsConnectionRequired: Specifies if the Autonomous Database requires mTLS connections. + :vartype isMtlsConnectionRequired: bool + :ivar isPreviewVersionWithServiceTermsAccepted: Specifies if the Autonomous Database preview + version is being provisioned. + :vartype isPreviewVersionWithServiceTermsAccepted: bool + :ivar licenseModel: The Oracle license model that applies to the Oracle Autonomous Database. + The default is LICENSE_INCLUDED. Known values are: "LicenseIncluded" and "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar ncharacterSet: The character set for the Autonomous Database. + :vartype ncharacterSet: str + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar provisioningState: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: Views lifecycleState. Known values are: "Provisioning", "Available", + "Stopping", "Stopped", "Starting", "Terminating", "Terminated", "Unavailable", + "RestoreInProgress", "RestoreFailed", "BackupInProgress", "ScaleInProgress", + "AvailableNeedsAttention", "Updating", "MaintenanceInProgress", "Restarting", "Recreating", + "RoleChangeInProgress", "Upgrading", "Inaccessible", and "Standby". + :vartype lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + :ivar scheduledOperationsList: The list of scheduled operations. + :vartype scheduledOperationsList: list["ScheduledOperationsType"] + :ivar privateEndpointIp: The private endpoint Ip address for the resource. + :vartype privateEndpointIp: str + :ivar privateEndpointLabel: The resource's private endpoint label. + :vartype privateEndpointLabel: str + :ivar ociUrl: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype ociUrl: str + :ivar subnetId: Client subnet. + :vartype subnetId: str + :ivar vnetId: VNET for network connectivity. + :vartype vnetId: str + :ivar timeCreated: The date and time that the database was created. + :vartype timeCreated: str + :ivar timeMaintenanceBegin: The date and time when maintenance will begin. + :vartype timeMaintenanceBegin: str + :ivar timeMaintenanceEnd: The date and time when maintenance will end. + :vartype timeMaintenanceEnd: str + :ivar actualUsedDataStorageSizeInTbs: The current amount of storage in use for user and system + data, in terabytes (TB). + :vartype actualUsedDataStorageSizeInTbs: float + :ivar allocatedStorageSizeInTbs: The amount of storage currently allocated for the database + tables and billed for, rounded up. + :vartype allocatedStorageSizeInTbs: float + :ivar apexDetails: Information about Oracle APEX Application Development. + :vartype apexDetails: "ApexDetailsType" + :ivar availableUpgradeVersions: List of Oracle Database versions available for a database + upgrade. If there are no version upgrades available, this list is empty. + :vartype availableUpgradeVersions: list[str] + :ivar connectionStrings: The connection string used to connect to the Autonomous Database. + :vartype connectionStrings: "ConnectionStringType" + :ivar connectionUrls: The URLs for accessing Oracle Application Express (APEX) and SQL + Developer Web with a browser from a Compute instance within your VCN or that has a direct + connection to your VCN. + :vartype connectionUrls: "ConnectionUrlType" + :ivar dataSafeStatus: Status of the Data Safe registration for this Autonomous Database. Known + values are: "Registering", "Registered", "Deregistering", "NotRegistered", and "Failed". + :vartype dataSafeStatus: Union[str, "DataSafeStatusType"] + :ivar databaseEdition: The Oracle Database Edition that applies to the Autonomous databases. + Known values are: "StandardEdition" and "EnterpriseEdition". + :vartype databaseEdition: Union[str, "DatabaseEditionType"] + :ivar autonomousDatabaseId: Autonomous Database ID. + :vartype autonomousDatabaseId: str + :ivar inMemoryAreaInGbs: The area assigned to In-Memory tables in Autonomous Database. + :vartype inMemoryAreaInGbs: int + :ivar nextLongTermBackupTimeStamp: The date and time when the next long-term backup would be + created. + :vartype nextLongTermBackupTimeStamp: str + :ivar longTermBackupSchedule: Details for the long-term backup schedule. + :vartype longTermBackupSchedule: "LongTermBackUpScheduleDetails" + :ivar isPreview: Indicates if the Autonomous Database version is a preview version. + :vartype isPreview: bool + :ivar localAdgAutoFailoverMaxDataLossLimit: Parameter that allows users to select an acceptable + maximum data loss limit in seconds, up to which Automatic Failover will be triggered when + necessary for a Local Autonomous Data Guard. + :vartype localAdgAutoFailoverMaxDataLossLimit: int + :ivar memoryPerOracleComputeUnitInGbs: The amount of memory (in GBs) enabled per ECPU or OCPU. + :vartype memoryPerOracleComputeUnitInGbs: int + :ivar openMode: Indicates the Autonomous Database mode. Known values are: "ReadOnly" and + "ReadWrite". + :vartype openMode: Union[str, "OpenModeType"] + :ivar operationsInsightsStatus: Status of Operations Insights for this Autonomous Database. + Known values are: "Enabling", "Enabled", "Disabling", "NotEnabled", "FailedEnabling", and + "FailedDisabling". + :vartype operationsInsightsStatus: Union[str, "OperationsInsightsStatusType"] + :ivar permissionLevel: The Autonomous Database permission level. Known values are: "Restricted" + and "Unrestricted". + :vartype permissionLevel: Union[str, "PermissionLevelType"] + :ivar privateEndpoint: The private endpoint for the resource. + :vartype privateEndpoint: str + :ivar provisionableCpus: An array of CPU values that an Autonomous Database can be scaled to. + :vartype provisionableCpus: list[int] + :ivar role: The Data Guard role of the Autonomous Container Database or Autonomous Database, if + Autonomous Data Guard is enabled. Known values are: "Primary", "Standby", "DisabledStandby", + "BackupCopy", and "SnapshotStandby". + :vartype role: Union[str, "RoleType"] + :ivar serviceConsoleUrl: The URL of the Service Console for the Autonomous Database. + :vartype serviceConsoleUrl: str + :ivar sqlWebDeveloperUrl: The SQL Web Developer URL for the Oracle Autonomous Database. + :vartype sqlWebDeveloperUrl: str + :ivar supportedRegionsToCloneTo: The list of regions that support the creation of an Autonomous + Database clone or an Autonomous Data Guard standby database. + :vartype supportedRegionsToCloneTo: list[str] + :ivar timeDataGuardRoleChanged: The date and time the Autonomous Data Guard role was switched + for the Autonomous Database. + :vartype timeDataGuardRoleChanged: str + :ivar timeDeletionOfFreeAutonomousDatabase: The date and time the Always Free database will be + automatically deleted because of inactivity. + :vartype timeDeletionOfFreeAutonomousDatabase: str + :ivar timeLocalDataGuardEnabled: The date and time that Autonomous Data Guard was enabled for + an Autonomous Database where the standby was provisioned in the same region as the primary + database. + :vartype timeLocalDataGuardEnabled: str + :ivar timeOfLastFailover: The timestamp of the last failover operation. + :vartype timeOfLastFailover: str + :ivar timeOfLastRefresh: The date and time when last refresh happened. + :vartype timeOfLastRefresh: str + :ivar timeOfLastRefreshPoint: The refresh point timestamp (UTC). + :vartype timeOfLastRefreshPoint: str + :ivar timeOfLastSwitchover: The timestamp of the last switchover operation for the Autonomous + Database. + :vartype timeOfLastSwitchover: str + :ivar timeReclamationOfFreeAutonomousDatabase: The date and time the Always Free database will + be stopped because of inactivity. + :vartype timeReclamationOfFreeAutonomousDatabase: str + :ivar usedDataStorageSizeInGbs: The storage space consumed by Autonomous Database in GBs. + :vartype usedDataStorageSizeInGbs: int + :ivar usedDataStorageSizeInTbs: The amount of storage that has been used, in terabytes. + :vartype usedDataStorageSizeInTbs: int + :ivar ocid: Database ocid. + :vartype ocid: str + :ivar backupRetentionPeriodInDays: Retention period, in days, for long-term backups. + :vartype backupRetentionPeriodInDays: int + :ivar whitelistedIps: The client IP access control list (ACL). This is an array of CIDR + notations and/or IP addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25']. + :vartype whitelistedIps: list[str] + :ivar isScheduleAzUpdateToEarliest: Update AZ at the earliest available opportunity. + :vartype isScheduleAzUpdateToEarliest: bool + :ivar timeScheduledAzUpdate: The date and time when the Autonomous Database availability zone + is to be updated. + :vartype timeScheduledAzUpdate: str + :ivar zone: The logical zone where the Autonomous Database is provisioned. + :vartype zone: str + :ivar backupDestination: Backup destination for auto and long-term backups. Existing backups + stay in their original destination when this value changes. Known values are: "OCI" and + "AZURE". + :vartype backupDestination: Union[str, "BackupDestinationType"] + :ivar resourceAnchorId: Azure Resource Anchor ID. + :vartype resourceAnchorId: str + :ivar networkAnchorId: Azure Network Anchor ID. + :vartype networkAnchorId: str + :ivar dataBaseType: Database type to be created. Required. Clone DB. + :vartype dataBaseType: Literal[DataBaseType.CLONE] + :ivar source: The source of the database. Known values are: "None", "Database", "BackupFromId", + "BackupFromTimestamp", "CloneToRefreshable", "CrossRegionDataguard", and + "CrossRegionDisasterRecovery". + :vartype source: Union[str, "SourceType"] + :ivar sourceId: The Azure resource ID of the Autonomous Database that was cloned to create the + current Autonomous Database. Required. + :vartype sourceId: str + :ivar cloneType: The Autonomous Database clone type. Required. Known values are: "Full" and + "Metadata". + :vartype cloneType: Union[str, "CloneType"] + :ivar isReconnectCloneEnabled: Indicates if the refreshable clone can be reconnected to its + source database. + :vartype isReconnectCloneEnabled: bool + :ivar isRefreshableClone: Indicates if the Autonomous Database is a refreshable clone. + :vartype isRefreshableClone: bool + :ivar refreshableModel: The refresh mode of the clone. Known values are: "Automatic" and + "Manual". + :vartype refreshableModel: Union[str, "RefreshableModelType"] + :ivar refreshableStatus: The refresh status of the clone. Known values are: "Refreshing" and + "NotRefreshing". + :vartype refreshableStatus: Union[str, "RefreshableStatusType"] + :ivar timeUntilReconnectCloneEnabled: The time and date as an RFC3339 formatted string, e.g., + 2022-01-01T12:00:00.000Z, to set the limit for a refreshable clone to be reconnected to its + source database. + :vartype timeUntilReconnectCloneEnabled: str + """ + + adminPassword: str + """Admin password.""" + autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + """The maintenance schedule type of the Autonomous Database Serverless. Known values are: + \"Early\" and \"Regular\".""" + characterSet: str + """The character set for the autonomous database.""" + computeCount: float + """The compute amount (CPUs) available to the database.""" + computeModel: Union[str, "ComputeModel"] + """The compute model of the Autonomous Database. Known values are: \"ECPU\" and \"OCPU\".""" + cpuCoreCount: int + """The number of CPU cores to be made available to the database.""" + customerContacts: list["CustomerContact"] + """Customer Contacts.""" + dataStorageSizeInTbs: int + """The quantity of data in the database, in terabytes.""" + dataStorageSizeInGbs: int + """The size, in gigabytes, of the data volume that will be created and attached to the database.""" + dbVersion: str + """A valid Oracle Database version for Autonomous Database.""" + dbWorkload: Union[str, "WorkloadType"] + """The Autonomous Database workload type. Known values are: \"OLTP\", \"DW\", \"AJD\", \"APEX\", + and \"LH\".""" + displayName: str + """The user-friendly name for the Autonomous Database.""" + isAutoScalingEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database CPU core count.""" + isAutoScalingForStorageEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database storage.""" + peerDbIds: list[str] + """The list of Azure resource IDs of standby databases located in Autonomous Data Guard remote + regions that are associated with the source database. Note that for Autonomous Database + Serverless instances, standby databases located in the same region as the source primary + database do not have Azure IDs.""" + peerDbId: str + """The Azure resource ID of the Disaster Recovery peer database, which is located in a different + region from the current peer database.""" + isLocalDataGuardEnabled: bool + """Indicates whether the Autonomous Database has local or called in-region Data Guard enabled.""" + isRemoteDataGuardEnabled: bool + """Indicates whether the Autonomous Database has Cross Region Data Guard enabled.""" + localDisasterRecoveryType: Union[str, "DisasterRecoveryType"] + """Indicates the local disaster recovery (DR) type of the Autonomous Database Serverless + instance.Autonomous Data Guard (ADG) DR type provides business critical DR with a faster + recovery time objective (RTO) during failover or switchover.Backup-based DR type provides lower + cost DR with a slower RTO during failover or switchover. Known values are: \"Adg\" and + \"BackupBased\".""" + timeDisasterRecoveryRoleChanged: str + """The date and time the Disaster Recovery role was switched for the standby Autonomous Database.""" + remoteDisasterRecoveryConfiguration: "DisasterRecoveryConfigurationDetails" + """Indicates remote disaster recovery configuration.""" + localStandbyDb: "AutonomousDatabaseStandbySummary" + """Local Autonomous Disaster Recovery standby database details.""" + failedDataRecoveryInSeconds: int + """Indicates the number of seconds of data loss for a Data Guard failover.""" + isMtlsConnectionRequired: bool + """Specifies if the Autonomous Database requires mTLS connections.""" + isPreviewVersionWithServiceTermsAccepted: bool + """Specifies if the Autonomous Database preview version is being provisioned.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to the Oracle Autonomous Database. The default is + LICENSE_INCLUDED. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + ncharacterSet: str + """The character set for the Autonomous Database.""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + """Views lifecycleState. Known values are: \"Provisioning\", \"Available\", \"Stopping\", + \"Stopped\", \"Starting\", \"Terminating\", \"Terminated\", \"Unavailable\", + \"RestoreInProgress\", \"RestoreFailed\", \"BackupInProgress\", \"ScaleInProgress\", + \"AvailableNeedsAttention\", \"Updating\", \"MaintenanceInProgress\", \"Restarting\", + \"Recreating\", \"RoleChangeInProgress\", \"Upgrading\", \"Inaccessible\", and \"Standby\".""" + scheduledOperationsList: list["ScheduledOperationsType"] + """The list of scheduled operations.""" + privateEndpointIp: str + """The private endpoint Ip address for the resource.""" + privateEndpointLabel: str + """The resource's private endpoint label.""" + ociUrl: str + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + subnetId: str + """Client subnet.""" + vnetId: str + """VNET for network connectivity.""" + timeCreated: str + """The date and time that the database was created.""" + timeMaintenanceBegin: str + """The date and time when maintenance will begin.""" + timeMaintenanceEnd: str + """The date and time when maintenance will end.""" + actualUsedDataStorageSizeInTbs: float + """The current amount of storage in use for user and system data, in terabytes (TB).""" + allocatedStorageSizeInTbs: float + """The amount of storage currently allocated for the database tables and billed for, rounded up.""" + apexDetails: "ApexDetailsType" + """Information about Oracle APEX Application Development.""" + availableUpgradeVersions: list[str] + """List of Oracle Database versions available for a database upgrade. If there are no version + upgrades available, this list is empty.""" + connectionStrings: "ConnectionStringType" + """The connection string used to connect to the Autonomous Database.""" + connectionUrls: "ConnectionUrlType" + """The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser + from a Compute instance within your VCN or that has a direct connection to your VCN.""" + dataSafeStatus: Union[str, "DataSafeStatusType"] + """Status of the Data Safe registration for this Autonomous Database. Known values are: + \"Registering\", \"Registered\", \"Deregistering\", \"NotRegistered\", and \"Failed\".""" + databaseEdition: Union[str, "DatabaseEditionType"] + """The Oracle Database Edition that applies to the Autonomous databases. Known values are: + \"StandardEdition\" and \"EnterpriseEdition\".""" + autonomousDatabaseId: str + """Autonomous Database ID.""" + inMemoryAreaInGbs: int + """The area assigned to In-Memory tables in Autonomous Database.""" + nextLongTermBackupTimeStamp: str + """The date and time when the next long-term backup would be created.""" + longTermBackupSchedule: "LongTermBackUpScheduleDetails" + """Details for the long-term backup schedule.""" + isPreview: bool + """Indicates if the Autonomous Database version is a preview version.""" + localAdgAutoFailoverMaxDataLossLimit: int + """Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to + which Automatic Failover will be triggered when necessary for a Local Autonomous Data Guard.""" + memoryPerOracleComputeUnitInGbs: int + """The amount of memory (in GBs) enabled per ECPU or OCPU.""" + openMode: Union[str, "OpenModeType"] + """Indicates the Autonomous Database mode. Known values are: \"ReadOnly\" and \"ReadWrite\".""" + operationsInsightsStatus: Union[str, "OperationsInsightsStatusType"] + """Status of Operations Insights for this Autonomous Database. Known values are: \"Enabling\", + \"Enabled\", \"Disabling\", \"NotEnabled\", \"FailedEnabling\", and \"FailedDisabling\".""" + permissionLevel: Union[str, "PermissionLevelType"] + """The Autonomous Database permission level. Known values are: \"Restricted\" and + \"Unrestricted\".""" + privateEndpoint: str + """The private endpoint for the resource.""" + provisionableCpus: list[int] + """An array of CPU values that an Autonomous Database can be scaled to.""" + role: Union[str, "RoleType"] + """The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous + Data Guard is enabled. Known values are: \"Primary\", \"Standby\", \"DisabledStandby\", + \"BackupCopy\", and \"SnapshotStandby\".""" + serviceConsoleUrl: str + """The URL of the Service Console for the Autonomous Database.""" + sqlWebDeveloperUrl: str + """The SQL Web Developer URL for the Oracle Autonomous Database.""" + supportedRegionsToCloneTo: list[str] + """The list of regions that support the creation of an Autonomous Database clone or an Autonomous + Data Guard standby database.""" + timeDataGuardRoleChanged: str + """The date and time the Autonomous Data Guard role was switched for the Autonomous Database.""" + timeDeletionOfFreeAutonomousDatabase: str + """The date and time the Always Free database will be automatically deleted because of inactivity.""" + timeLocalDataGuardEnabled: str + """The date and time that Autonomous Data Guard was enabled for an Autonomous Database where the + standby was provisioned in the same region as the primary database.""" + timeOfLastFailover: str + """The timestamp of the last failover operation.""" + timeOfLastRefresh: str + """The date and time when last refresh happened.""" + timeOfLastRefreshPoint: str + """The refresh point timestamp (UTC).""" + timeOfLastSwitchover: str + """The timestamp of the last switchover operation for the Autonomous Database.""" + timeReclamationOfFreeAutonomousDatabase: str + """The date and time the Always Free database will be stopped because of inactivity.""" + usedDataStorageSizeInGbs: int + """The storage space consumed by Autonomous Database in GBs.""" + usedDataStorageSizeInTbs: int + """The amount of storage that has been used, in terabytes.""" + ocid: str + """Database ocid.""" + backupRetentionPeriodInDays: int + """Retention period, in days, for long-term backups.""" + whitelistedIps: list[str] + """The client IP access control list (ACL). This is an array of CIDR notations and/or IP + addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25'].""" + isScheduleAzUpdateToEarliest: bool + """Update AZ at the earliest available opportunity.""" + timeScheduledAzUpdate: str + """The date and time when the Autonomous Database availability zone is to be updated.""" + zone: str + """The logical zone where the Autonomous Database is provisioned.""" + backupDestination: Union[str, "BackupDestinationType"] + """Backup destination for auto and long-term backups. Existing backups stay in their original + destination when this value changes. Known values are: \"OCI\" and \"AZURE\".""" + resourceAnchorId: str + """Azure Resource Anchor ID.""" + networkAnchorId: str + """Azure Network Anchor ID.""" + dataBaseType: Required[Literal[DataBaseType.CLONE]] + """Database type to be created. Required. Clone DB.""" + source: Union[str, "SourceType"] + """The source of the database. Known values are: \"None\", \"Database\", \"BackupFromId\", + \"BackupFromTimestamp\", \"CloneToRefreshable\", \"CrossRegionDataguard\", and + \"CrossRegionDisasterRecovery\".""" + sourceId: Required[str] + """The Azure resource ID of the Autonomous Database that was cloned to create the current + Autonomous Database. Required.""" + cloneType: Required[Union[str, "CloneType"]] + """The Autonomous Database clone type. Required. Known values are: \"Full\" and \"Metadata\".""" + isReconnectCloneEnabled: bool + """Indicates if the refreshable clone can be reconnected to its source database.""" + isRefreshableClone: bool + """Indicates if the Autonomous Database is a refreshable clone.""" + refreshableModel: Union[str, "RefreshableModelType"] + """The refresh mode of the clone. Known values are: \"Automatic\" and \"Manual\".""" + refreshableStatus: Union[str, "RefreshableStatusType"] + """The refresh status of the clone. Known values are: \"Refreshing\" and \"NotRefreshing\".""" + timeUntilReconnectCloneEnabled: str + """The time and date as an RFC3339 formatted string, e.g., 2022-01-01T12:00:00.000Z, to set the + limit for a refreshable clone to be reconnected to its source database.""" + + +class AutonomousDatabaseCrossRegionDisasterRecoveryProperties(TypedDict, total=False): # pylint: disable=name-too-long + """Autonomous Database Cross Region Disaster Recovery resource model. + + :ivar adminPassword: Admin password. + :vartype adminPassword: str + :ivar autonomousMaintenanceScheduleType: The maintenance schedule type of the Autonomous + Database Serverless. Known values are: "Early" and "Regular". + :vartype autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + :ivar characterSet: The character set for the autonomous database. + :vartype characterSet: str + :ivar computeCount: The compute amount (CPUs) available to the database. + :vartype computeCount: float + :ivar computeModel: The compute model of the Autonomous Database. Known values are: "ECPU" and + "OCPU". + :vartype computeModel: Union[str, "ComputeModel"] + :ivar cpuCoreCount: The number of CPU cores to be made available to the database. + :vartype cpuCoreCount: int + :ivar customerContacts: Customer Contacts. + :vartype customerContacts: list["CustomerContact"] + :ivar dataStorageSizeInTbs: The quantity of data in the database, in terabytes. + :vartype dataStorageSizeInTbs: int + :ivar dataStorageSizeInGbs: The size, in gigabytes, of the data volume that will be created and + attached to the database. + :vartype dataStorageSizeInGbs: int + :ivar dbVersion: A valid Oracle Database version for Autonomous Database. + :vartype dbVersion: str + :ivar dbWorkload: The Autonomous Database workload type. Known values are: "OLTP", "DW", "AJD", + "APEX", and "LH". + :vartype dbWorkload: Union[str, "WorkloadType"] + :ivar displayName: The user-friendly name for the Autonomous Database. + :vartype displayName: str + :ivar isAutoScalingEnabled: Indicates if auto scaling is enabled for the Autonomous Database + CPU core count. + :vartype isAutoScalingEnabled: bool + :ivar isAutoScalingForStorageEnabled: Indicates if auto scaling is enabled for the Autonomous + Database storage. + :vartype isAutoScalingForStorageEnabled: bool + :ivar peerDbIds: The list of Azure resource IDs of standby databases located in Autonomous Data + Guard remote regions that are associated with the source database. Note that for Autonomous + Database Serverless instances, standby databases located in the same region as the source + primary database do not have Azure IDs. + :vartype peerDbIds: list[str] + :ivar peerDbId: The Azure resource ID of the Disaster Recovery peer database, which is located + in a different region from the current peer database. + :vartype peerDbId: str + :ivar isLocalDataGuardEnabled: Indicates whether the Autonomous Database has local or called + in-region Data Guard enabled. + :vartype isLocalDataGuardEnabled: bool + :ivar isRemoteDataGuardEnabled: Indicates whether the Autonomous Database has Cross Region Data + Guard enabled. + :vartype isRemoteDataGuardEnabled: bool + :ivar localDisasterRecoveryType: Indicates the local disaster recovery (DR) type of the + Autonomous Database Serverless instance.Autonomous Data Guard (ADG) DR type provides business + critical DR with a faster recovery time objective (RTO) during failover or + switchover.Backup-based DR type provides lower cost DR with a slower RTO during failover or + switchover. Known values are: "Adg" and "BackupBased". + :vartype localDisasterRecoveryType: Union[str, "DisasterRecoveryType"] + :ivar timeDisasterRecoveryRoleChanged: The date and time the Disaster Recovery role was + switched for the standby Autonomous Database. + :vartype timeDisasterRecoveryRoleChanged: str + :ivar remoteDisasterRecoveryConfiguration: Indicates remote disaster recovery configuration. + :vartype remoteDisasterRecoveryConfiguration: "DisasterRecoveryConfigurationDetails" + :ivar localStandbyDb: Local Autonomous Disaster Recovery standby database details. + :vartype localStandbyDb: "AutonomousDatabaseStandbySummary" + :ivar failedDataRecoveryInSeconds: Indicates the number of seconds of data loss for a Data + Guard failover. + :vartype failedDataRecoveryInSeconds: int + :ivar isMtlsConnectionRequired: Specifies if the Autonomous Database requires mTLS connections. + :vartype isMtlsConnectionRequired: bool + :ivar isPreviewVersionWithServiceTermsAccepted: Specifies if the Autonomous Database preview + version is being provisioned. + :vartype isPreviewVersionWithServiceTermsAccepted: bool + :ivar licenseModel: The Oracle license model that applies to the Oracle Autonomous Database. + The default is LICENSE_INCLUDED. Known values are: "LicenseIncluded" and "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar ncharacterSet: The character set for the Autonomous Database. + :vartype ncharacterSet: str + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar provisioningState: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: Views lifecycleState. Known values are: "Provisioning", "Available", + "Stopping", "Stopped", "Starting", "Terminating", "Terminated", "Unavailable", + "RestoreInProgress", "RestoreFailed", "BackupInProgress", "ScaleInProgress", + "AvailableNeedsAttention", "Updating", "MaintenanceInProgress", "Restarting", "Recreating", + "RoleChangeInProgress", "Upgrading", "Inaccessible", and "Standby". + :vartype lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + :ivar scheduledOperationsList: The list of scheduled operations. + :vartype scheduledOperationsList: list["ScheduledOperationsType"] + :ivar privateEndpointIp: The private endpoint Ip address for the resource. + :vartype privateEndpointIp: str + :ivar privateEndpointLabel: The resource's private endpoint label. + :vartype privateEndpointLabel: str + :ivar ociUrl: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype ociUrl: str + :ivar subnetId: Client subnet. + :vartype subnetId: str + :ivar vnetId: VNET for network connectivity. + :vartype vnetId: str + :ivar timeCreated: The date and time that the database was created. + :vartype timeCreated: str + :ivar timeMaintenanceBegin: The date and time when maintenance will begin. + :vartype timeMaintenanceBegin: str + :ivar timeMaintenanceEnd: The date and time when maintenance will end. + :vartype timeMaintenanceEnd: str + :ivar actualUsedDataStorageSizeInTbs: The current amount of storage in use for user and system + data, in terabytes (TB). + :vartype actualUsedDataStorageSizeInTbs: float + :ivar allocatedStorageSizeInTbs: The amount of storage currently allocated for the database + tables and billed for, rounded up. + :vartype allocatedStorageSizeInTbs: float + :ivar apexDetails: Information about Oracle APEX Application Development. + :vartype apexDetails: "ApexDetailsType" + :ivar availableUpgradeVersions: List of Oracle Database versions available for a database + upgrade. If there are no version upgrades available, this list is empty. + :vartype availableUpgradeVersions: list[str] + :ivar connectionStrings: The connection string used to connect to the Autonomous Database. + :vartype connectionStrings: "ConnectionStringType" + :ivar connectionUrls: The URLs for accessing Oracle Application Express (APEX) and SQL + Developer Web with a browser from a Compute instance within your VCN or that has a direct + connection to your VCN. + :vartype connectionUrls: "ConnectionUrlType" + :ivar dataSafeStatus: Status of the Data Safe registration for this Autonomous Database. Known + values are: "Registering", "Registered", "Deregistering", "NotRegistered", and "Failed". + :vartype dataSafeStatus: Union[str, "DataSafeStatusType"] + :ivar databaseEdition: The Oracle Database Edition that applies to the Autonomous databases. + Known values are: "StandardEdition" and "EnterpriseEdition". + :vartype databaseEdition: Union[str, "DatabaseEditionType"] + :ivar autonomousDatabaseId: Autonomous Database ID. + :vartype autonomousDatabaseId: str + :ivar inMemoryAreaInGbs: The area assigned to In-Memory tables in Autonomous Database. + :vartype inMemoryAreaInGbs: int + :ivar nextLongTermBackupTimeStamp: The date and time when the next long-term backup would be + created. + :vartype nextLongTermBackupTimeStamp: str + :ivar longTermBackupSchedule: Details for the long-term backup schedule. + :vartype longTermBackupSchedule: "LongTermBackUpScheduleDetails" + :ivar isPreview: Indicates if the Autonomous Database version is a preview version. + :vartype isPreview: bool + :ivar localAdgAutoFailoverMaxDataLossLimit: Parameter that allows users to select an acceptable + maximum data loss limit in seconds, up to which Automatic Failover will be triggered when + necessary for a Local Autonomous Data Guard. + :vartype localAdgAutoFailoverMaxDataLossLimit: int + :ivar memoryPerOracleComputeUnitInGbs: The amount of memory (in GBs) enabled per ECPU or OCPU. + :vartype memoryPerOracleComputeUnitInGbs: int + :ivar openMode: Indicates the Autonomous Database mode. Known values are: "ReadOnly" and + "ReadWrite". + :vartype openMode: Union[str, "OpenModeType"] + :ivar operationsInsightsStatus: Status of Operations Insights for this Autonomous Database. + Known values are: "Enabling", "Enabled", "Disabling", "NotEnabled", "FailedEnabling", and + "FailedDisabling". + :vartype operationsInsightsStatus: Union[str, "OperationsInsightsStatusType"] + :ivar permissionLevel: The Autonomous Database permission level. Known values are: "Restricted" + and "Unrestricted". + :vartype permissionLevel: Union[str, "PermissionLevelType"] + :ivar privateEndpoint: The private endpoint for the resource. + :vartype privateEndpoint: str + :ivar provisionableCpus: An array of CPU values that an Autonomous Database can be scaled to. + :vartype provisionableCpus: list[int] + :ivar role: The Data Guard role of the Autonomous Container Database or Autonomous Database, if + Autonomous Data Guard is enabled. Known values are: "Primary", "Standby", "DisabledStandby", + "BackupCopy", and "SnapshotStandby". + :vartype role: Union[str, "RoleType"] + :ivar serviceConsoleUrl: The URL of the Service Console for the Autonomous Database. + :vartype serviceConsoleUrl: str + :ivar sqlWebDeveloperUrl: The SQL Web Developer URL for the Oracle Autonomous Database. + :vartype sqlWebDeveloperUrl: str + :ivar supportedRegionsToCloneTo: The list of regions that support the creation of an Autonomous + Database clone or an Autonomous Data Guard standby database. + :vartype supportedRegionsToCloneTo: list[str] + :ivar timeDataGuardRoleChanged: The date and time the Autonomous Data Guard role was switched + for the Autonomous Database. + :vartype timeDataGuardRoleChanged: str + :ivar timeDeletionOfFreeAutonomousDatabase: The date and time the Always Free database will be + automatically deleted because of inactivity. + :vartype timeDeletionOfFreeAutonomousDatabase: str + :ivar timeLocalDataGuardEnabled: The date and time that Autonomous Data Guard was enabled for + an Autonomous Database where the standby was provisioned in the same region as the primary + database. + :vartype timeLocalDataGuardEnabled: str + :ivar timeOfLastFailover: The timestamp of the last failover operation. + :vartype timeOfLastFailover: str + :ivar timeOfLastRefresh: The date and time when last refresh happened. + :vartype timeOfLastRefresh: str + :ivar timeOfLastRefreshPoint: The refresh point timestamp (UTC). + :vartype timeOfLastRefreshPoint: str + :ivar timeOfLastSwitchover: The timestamp of the last switchover operation for the Autonomous + Database. + :vartype timeOfLastSwitchover: str + :ivar timeReclamationOfFreeAutonomousDatabase: The date and time the Always Free database will + be stopped because of inactivity. + :vartype timeReclamationOfFreeAutonomousDatabase: str + :ivar usedDataStorageSizeInGbs: The storage space consumed by Autonomous Database in GBs. + :vartype usedDataStorageSizeInGbs: int + :ivar usedDataStorageSizeInTbs: The amount of storage that has been used, in terabytes. + :vartype usedDataStorageSizeInTbs: int + :ivar ocid: Database ocid. + :vartype ocid: str + :ivar backupRetentionPeriodInDays: Retention period, in days, for long-term backups. + :vartype backupRetentionPeriodInDays: int + :ivar whitelistedIps: The client IP access control list (ACL). This is an array of CIDR + notations and/or IP addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25']. + :vartype whitelistedIps: list[str] + :ivar isScheduleAzUpdateToEarliest: Update AZ at the earliest available opportunity. + :vartype isScheduleAzUpdateToEarliest: bool + :ivar timeScheduledAzUpdate: The date and time when the Autonomous Database availability zone + is to be updated. + :vartype timeScheduledAzUpdate: str + :ivar zone: The logical zone where the Autonomous Database is provisioned. + :vartype zone: str + :ivar backupDestination: Backup destination for auto and long-term backups. Existing backups + stay in their original destination when this value changes. Known values are: "OCI" and + "AZURE". + :vartype backupDestination: Union[str, "BackupDestinationType"] + :ivar resourceAnchorId: Azure Resource Anchor ID. + :vartype resourceAnchorId: str + :ivar networkAnchorId: Azure Network Anchor ID. + :vartype networkAnchorId: str + :ivar dataBaseType: Database type to be created. Required. Cross Region Disaster Recovery. + :vartype dataBaseType: Literal[DataBaseType.CROSS_REGION_DISASTER_RECOVERY] + :ivar source: The source of the database. Required. cross region disaster recovery source. + :vartype source: Literal[SourceType.CROSS_REGION_DISASTER_RECOVERY] + :ivar sourceId: The Azure ID of the source Autonomous Database that will be used to create a + new peer database for the DR association. Required. + :vartype sourceId: str + :ivar sourceLocation: The name of the region where source Autonomous Database exists. + :vartype sourceLocation: str + :ivar sourceOcid: The source database ocid. + :vartype sourceOcid: str + :ivar remoteDisasterRecoveryType: Indicates the cross-region disaster recovery (DR) type of the + standby Autonomous Database Serverless instance. Autonomous Data Guard (ADG) DR type provides + business critical DR with a faster recovery time objective (RTO) during failover or switchover. + Backup-based DR type provides lower cost DR with a slower RTO during failover or switchover. + Required. Known values are: "Adg" and "BackupBased". + :vartype remoteDisasterRecoveryType: Union[str, "DisasterRecoveryType"] + :ivar isReplicateAutomaticBackups: If true, 7 days worth of backups are replicated across + regions for Cross-Region ADB or Backup-Based DR between Primary and Standby. If false, the + backups taken on the Primary are not replicated to the Standby database. + :vartype isReplicateAutomaticBackups: bool + """ + + adminPassword: str + """Admin password.""" + autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + """The maintenance schedule type of the Autonomous Database Serverless. Known values are: + \"Early\" and \"Regular\".""" + characterSet: str + """The character set for the autonomous database.""" + computeCount: float + """The compute amount (CPUs) available to the database.""" + computeModel: Union[str, "ComputeModel"] + """The compute model of the Autonomous Database. Known values are: \"ECPU\" and \"OCPU\".""" + cpuCoreCount: int + """The number of CPU cores to be made available to the database.""" + customerContacts: list["CustomerContact"] + """Customer Contacts.""" + dataStorageSizeInTbs: int + """The quantity of data in the database, in terabytes.""" + dataStorageSizeInGbs: int + """The size, in gigabytes, of the data volume that will be created and attached to the database.""" + dbVersion: str + """A valid Oracle Database version for Autonomous Database.""" + dbWorkload: Union[str, "WorkloadType"] + """The Autonomous Database workload type. Known values are: \"OLTP\", \"DW\", \"AJD\", \"APEX\", + and \"LH\".""" + displayName: str + """The user-friendly name for the Autonomous Database.""" + isAutoScalingEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database CPU core count.""" + isAutoScalingForStorageEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database storage.""" + peerDbIds: list[str] + """The list of Azure resource IDs of standby databases located in Autonomous Data Guard remote + regions that are associated with the source database. Note that for Autonomous Database + Serverless instances, standby databases located in the same region as the source primary + database do not have Azure IDs.""" + peerDbId: str + """The Azure resource ID of the Disaster Recovery peer database, which is located in a different + region from the current peer database.""" + isLocalDataGuardEnabled: bool + """Indicates whether the Autonomous Database has local or called in-region Data Guard enabled.""" + isRemoteDataGuardEnabled: bool + """Indicates whether the Autonomous Database has Cross Region Data Guard enabled.""" + localDisasterRecoveryType: Union[str, "DisasterRecoveryType"] + """Indicates the local disaster recovery (DR) type of the Autonomous Database Serverless + instance.Autonomous Data Guard (ADG) DR type provides business critical DR with a faster + recovery time objective (RTO) during failover or switchover.Backup-based DR type provides lower + cost DR with a slower RTO during failover or switchover. Known values are: \"Adg\" and + \"BackupBased\".""" + timeDisasterRecoveryRoleChanged: str + """The date and time the Disaster Recovery role was switched for the standby Autonomous Database.""" + remoteDisasterRecoveryConfiguration: "DisasterRecoveryConfigurationDetails" + """Indicates remote disaster recovery configuration.""" + localStandbyDb: "AutonomousDatabaseStandbySummary" + """Local Autonomous Disaster Recovery standby database details.""" + failedDataRecoveryInSeconds: int + """Indicates the number of seconds of data loss for a Data Guard failover.""" + isMtlsConnectionRequired: bool + """Specifies if the Autonomous Database requires mTLS connections.""" + isPreviewVersionWithServiceTermsAccepted: bool + """Specifies if the Autonomous Database preview version is being provisioned.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to the Oracle Autonomous Database. The default is + LICENSE_INCLUDED. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + ncharacterSet: str + """The character set for the Autonomous Database.""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + """Views lifecycleState. Known values are: \"Provisioning\", \"Available\", \"Stopping\", + \"Stopped\", \"Starting\", \"Terminating\", \"Terminated\", \"Unavailable\", + \"RestoreInProgress\", \"RestoreFailed\", \"BackupInProgress\", \"ScaleInProgress\", + \"AvailableNeedsAttention\", \"Updating\", \"MaintenanceInProgress\", \"Restarting\", + \"Recreating\", \"RoleChangeInProgress\", \"Upgrading\", \"Inaccessible\", and \"Standby\".""" + scheduledOperationsList: list["ScheduledOperationsType"] + """The list of scheduled operations.""" + privateEndpointIp: str + """The private endpoint Ip address for the resource.""" + privateEndpointLabel: str + """The resource's private endpoint label.""" + ociUrl: str + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + subnetId: str + """Client subnet.""" + vnetId: str + """VNET for network connectivity.""" + timeCreated: str + """The date and time that the database was created.""" + timeMaintenanceBegin: str + """The date and time when maintenance will begin.""" + timeMaintenanceEnd: str + """The date and time when maintenance will end.""" + actualUsedDataStorageSizeInTbs: float + """The current amount of storage in use for user and system data, in terabytes (TB).""" + allocatedStorageSizeInTbs: float + """The amount of storage currently allocated for the database tables and billed for, rounded up.""" + apexDetails: "ApexDetailsType" + """Information about Oracle APEX Application Development.""" + availableUpgradeVersions: list[str] + """List of Oracle Database versions available for a database upgrade. If there are no version + upgrades available, this list is empty.""" + connectionStrings: "ConnectionStringType" + """The connection string used to connect to the Autonomous Database.""" + connectionUrls: "ConnectionUrlType" + """The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser + from a Compute instance within your VCN or that has a direct connection to your VCN.""" + dataSafeStatus: Union[str, "DataSafeStatusType"] + """Status of the Data Safe registration for this Autonomous Database. Known values are: + \"Registering\", \"Registered\", \"Deregistering\", \"NotRegistered\", and \"Failed\".""" + databaseEdition: Union[str, "DatabaseEditionType"] + """The Oracle Database Edition that applies to the Autonomous databases. Known values are: + \"StandardEdition\" and \"EnterpriseEdition\".""" + autonomousDatabaseId: str + """Autonomous Database ID.""" + inMemoryAreaInGbs: int + """The area assigned to In-Memory tables in Autonomous Database.""" + nextLongTermBackupTimeStamp: str + """The date and time when the next long-term backup would be created.""" + longTermBackupSchedule: "LongTermBackUpScheduleDetails" + """Details for the long-term backup schedule.""" + isPreview: bool + """Indicates if the Autonomous Database version is a preview version.""" + localAdgAutoFailoverMaxDataLossLimit: int + """Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to + which Automatic Failover will be triggered when necessary for a Local Autonomous Data Guard.""" + memoryPerOracleComputeUnitInGbs: int + """The amount of memory (in GBs) enabled per ECPU or OCPU.""" + openMode: Union[str, "OpenModeType"] + """Indicates the Autonomous Database mode. Known values are: \"ReadOnly\" and \"ReadWrite\".""" + operationsInsightsStatus: Union[str, "OperationsInsightsStatusType"] + """Status of Operations Insights for this Autonomous Database. Known values are: \"Enabling\", + \"Enabled\", \"Disabling\", \"NotEnabled\", \"FailedEnabling\", and \"FailedDisabling\".""" + permissionLevel: Union[str, "PermissionLevelType"] + """The Autonomous Database permission level. Known values are: \"Restricted\" and + \"Unrestricted\".""" + privateEndpoint: str + """The private endpoint for the resource.""" + provisionableCpus: list[int] + """An array of CPU values that an Autonomous Database can be scaled to.""" + role: Union[str, "RoleType"] + """The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous + Data Guard is enabled. Known values are: \"Primary\", \"Standby\", \"DisabledStandby\", + \"BackupCopy\", and \"SnapshotStandby\".""" + serviceConsoleUrl: str + """The URL of the Service Console for the Autonomous Database.""" + sqlWebDeveloperUrl: str + """The SQL Web Developer URL for the Oracle Autonomous Database.""" + supportedRegionsToCloneTo: list[str] + """The list of regions that support the creation of an Autonomous Database clone or an Autonomous + Data Guard standby database.""" + timeDataGuardRoleChanged: str + """The date and time the Autonomous Data Guard role was switched for the Autonomous Database.""" + timeDeletionOfFreeAutonomousDatabase: str + """The date and time the Always Free database will be automatically deleted because of inactivity.""" + timeLocalDataGuardEnabled: str + """The date and time that Autonomous Data Guard was enabled for an Autonomous Database where the + standby was provisioned in the same region as the primary database.""" + timeOfLastFailover: str + """The timestamp of the last failover operation.""" + timeOfLastRefresh: str + """The date and time when last refresh happened.""" + timeOfLastRefreshPoint: str + """The refresh point timestamp (UTC).""" + timeOfLastSwitchover: str + """The timestamp of the last switchover operation for the Autonomous Database.""" + timeReclamationOfFreeAutonomousDatabase: str + """The date and time the Always Free database will be stopped because of inactivity.""" + usedDataStorageSizeInGbs: int + """The storage space consumed by Autonomous Database in GBs.""" + usedDataStorageSizeInTbs: int + """The amount of storage that has been used, in terabytes.""" + ocid: str + """Database ocid.""" + backupRetentionPeriodInDays: int + """Retention period, in days, for long-term backups.""" + whitelistedIps: list[str] + """The client IP access control list (ACL). This is an array of CIDR notations and/or IP + addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25'].""" + isScheduleAzUpdateToEarliest: bool + """Update AZ at the earliest available opportunity.""" + timeScheduledAzUpdate: str + """The date and time when the Autonomous Database availability zone is to be updated.""" + zone: str + """The logical zone where the Autonomous Database is provisioned.""" + backupDestination: Union[str, "BackupDestinationType"] + """Backup destination for auto and long-term backups. Existing backups stay in their original + destination when this value changes. Known values are: \"OCI\" and \"AZURE\".""" + resourceAnchorId: str + """Azure Resource Anchor ID.""" + networkAnchorId: str + """Azure Network Anchor ID.""" + dataBaseType: Required[Literal[DataBaseType.CROSS_REGION_DISASTER_RECOVERY]] + """Database type to be created. Required. Cross Region Disaster Recovery.""" + source: Required[Literal[SourceType.CROSS_REGION_DISASTER_RECOVERY]] + """The source of the database. Required. cross region disaster recovery source.""" + sourceId: Required[str] + """The Azure ID of the source Autonomous Database that will be used to create a new peer database + for the DR association. Required.""" + sourceLocation: str + """The name of the region where source Autonomous Database exists.""" + sourceOcid: str + """The source database ocid.""" + remoteDisasterRecoveryType: Required[Union[str, "DisasterRecoveryType"]] + """Indicates the cross-region disaster recovery (DR) type of the standby Autonomous Database + Serverless instance. Autonomous Data Guard (ADG) DR type provides business critical DR with a + faster recovery time objective (RTO) during failover or switchover. Backup-based DR type + provides lower cost DR with a slower RTO during failover or switchover. Required. Known values + are: \"Adg\" and \"BackupBased\".""" + isReplicateAutomaticBackups: bool + """If true, 7 days worth of backups are replicated across regions for Cross-Region ADB or + Backup-Based DR between Primary and Standby. If false, the backups taken on the Primary are not + replicated to the Standby database.""" + + +class AutonomousDatabaseFromBackupTimestampProperties(TypedDict, total=False): # pylint: disable=name-too-long + """Autonomous Database From Backup Timestamp resource model. + + :ivar adminPassword: Admin password. + :vartype adminPassword: str + :ivar autonomousMaintenanceScheduleType: The maintenance schedule type of the Autonomous + Database Serverless. Known values are: "Early" and "Regular". + :vartype autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + :ivar characterSet: The character set for the autonomous database. + :vartype characterSet: str + :ivar computeCount: The compute amount (CPUs) available to the database. + :vartype computeCount: float + :ivar computeModel: The compute model of the Autonomous Database. Known values are: "ECPU" and + "OCPU". + :vartype computeModel: Union[str, "ComputeModel"] + :ivar cpuCoreCount: The number of CPU cores to be made available to the database. + :vartype cpuCoreCount: int + :ivar customerContacts: Customer Contacts. + :vartype customerContacts: list["CustomerContact"] + :ivar dataStorageSizeInTbs: The quantity of data in the database, in terabytes. + :vartype dataStorageSizeInTbs: int + :ivar dataStorageSizeInGbs: The size, in gigabytes, of the data volume that will be created and + attached to the database. + :vartype dataStorageSizeInGbs: int + :ivar dbVersion: A valid Oracle Database version for Autonomous Database. + :vartype dbVersion: str + :ivar dbWorkload: The Autonomous Database workload type. Known values are: "OLTP", "DW", "AJD", + "APEX", and "LH". + :vartype dbWorkload: Union[str, "WorkloadType"] + :ivar displayName: The user-friendly name for the Autonomous Database. + :vartype displayName: str + :ivar isAutoScalingEnabled: Indicates if auto scaling is enabled for the Autonomous Database + CPU core count. + :vartype isAutoScalingEnabled: bool + :ivar isAutoScalingForStorageEnabled: Indicates if auto scaling is enabled for the Autonomous + Database storage. + :vartype isAutoScalingForStorageEnabled: bool + :ivar peerDbIds: The list of Azure resource IDs of standby databases located in Autonomous Data + Guard remote regions that are associated with the source database. Note that for Autonomous + Database Serverless instances, standby databases located in the same region as the source + primary database do not have Azure IDs. + :vartype peerDbIds: list[str] + :ivar peerDbId: The Azure resource ID of the Disaster Recovery peer database, which is located + in a different region from the current peer database. + :vartype peerDbId: str + :ivar isLocalDataGuardEnabled: Indicates whether the Autonomous Database has local or called + in-region Data Guard enabled. + :vartype isLocalDataGuardEnabled: bool + :ivar isRemoteDataGuardEnabled: Indicates whether the Autonomous Database has Cross Region Data + Guard enabled. + :vartype isRemoteDataGuardEnabled: bool + :ivar localDisasterRecoveryType: Indicates the local disaster recovery (DR) type of the + Autonomous Database Serverless instance.Autonomous Data Guard (ADG) DR type provides business + critical DR with a faster recovery time objective (RTO) during failover or + switchover.Backup-based DR type provides lower cost DR with a slower RTO during failover or + switchover. Known values are: "Adg" and "BackupBased". + :vartype localDisasterRecoveryType: Union[str, "DisasterRecoveryType"] + :ivar timeDisasterRecoveryRoleChanged: The date and time the Disaster Recovery role was + switched for the standby Autonomous Database. + :vartype timeDisasterRecoveryRoleChanged: str + :ivar remoteDisasterRecoveryConfiguration: Indicates remote disaster recovery configuration. + :vartype remoteDisasterRecoveryConfiguration: "DisasterRecoveryConfigurationDetails" + :ivar localStandbyDb: Local Autonomous Disaster Recovery standby database details. + :vartype localStandbyDb: "AutonomousDatabaseStandbySummary" + :ivar failedDataRecoveryInSeconds: Indicates the number of seconds of data loss for a Data + Guard failover. + :vartype failedDataRecoveryInSeconds: int + :ivar isMtlsConnectionRequired: Specifies if the Autonomous Database requires mTLS connections. + :vartype isMtlsConnectionRequired: bool + :ivar isPreviewVersionWithServiceTermsAccepted: Specifies if the Autonomous Database preview + version is being provisioned. + :vartype isPreviewVersionWithServiceTermsAccepted: bool + :ivar licenseModel: The Oracle license model that applies to the Oracle Autonomous Database. + The default is LICENSE_INCLUDED. Known values are: "LicenseIncluded" and "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar ncharacterSet: The character set for the Autonomous Database. + :vartype ncharacterSet: str + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar provisioningState: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: Views lifecycleState. Known values are: "Provisioning", "Available", + "Stopping", "Stopped", "Starting", "Terminating", "Terminated", "Unavailable", + "RestoreInProgress", "RestoreFailed", "BackupInProgress", "ScaleInProgress", + "AvailableNeedsAttention", "Updating", "MaintenanceInProgress", "Restarting", "Recreating", + "RoleChangeInProgress", "Upgrading", "Inaccessible", and "Standby". + :vartype lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + :ivar scheduledOperationsList: The list of scheduled operations. + :vartype scheduledOperationsList: list["ScheduledOperationsType"] + :ivar privateEndpointIp: The private endpoint Ip address for the resource. + :vartype privateEndpointIp: str + :ivar privateEndpointLabel: The resource's private endpoint label. + :vartype privateEndpointLabel: str + :ivar ociUrl: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype ociUrl: str + :ivar subnetId: Client subnet. + :vartype subnetId: str + :ivar vnetId: VNET for network connectivity. + :vartype vnetId: str + :ivar timeCreated: The date and time that the database was created. + :vartype timeCreated: str + :ivar timeMaintenanceBegin: The date and time when maintenance will begin. + :vartype timeMaintenanceBegin: str + :ivar timeMaintenanceEnd: The date and time when maintenance will end. + :vartype timeMaintenanceEnd: str + :ivar actualUsedDataStorageSizeInTbs: The current amount of storage in use for user and system + data, in terabytes (TB). + :vartype actualUsedDataStorageSizeInTbs: float + :ivar allocatedStorageSizeInTbs: The amount of storage currently allocated for the database + tables and billed for, rounded up. + :vartype allocatedStorageSizeInTbs: float + :ivar apexDetails: Information about Oracle APEX Application Development. + :vartype apexDetails: "ApexDetailsType" + :ivar availableUpgradeVersions: List of Oracle Database versions available for a database + upgrade. If there are no version upgrades available, this list is empty. + :vartype availableUpgradeVersions: list[str] + :ivar connectionStrings: The connection string used to connect to the Autonomous Database. + :vartype connectionStrings: "ConnectionStringType" + :ivar connectionUrls: The URLs for accessing Oracle Application Express (APEX) and SQL + Developer Web with a browser from a Compute instance within your VCN or that has a direct + connection to your VCN. + :vartype connectionUrls: "ConnectionUrlType" + :ivar dataSafeStatus: Status of the Data Safe registration for this Autonomous Database. Known + values are: "Registering", "Registered", "Deregistering", "NotRegistered", and "Failed". + :vartype dataSafeStatus: Union[str, "DataSafeStatusType"] + :ivar databaseEdition: The Oracle Database Edition that applies to the Autonomous databases. + Known values are: "StandardEdition" and "EnterpriseEdition". + :vartype databaseEdition: Union[str, "DatabaseEditionType"] + :ivar autonomousDatabaseId: Autonomous Database ID. + :vartype autonomousDatabaseId: str + :ivar inMemoryAreaInGbs: The area assigned to In-Memory tables in Autonomous Database. + :vartype inMemoryAreaInGbs: int + :ivar nextLongTermBackupTimeStamp: The date and time when the next long-term backup would be + created. + :vartype nextLongTermBackupTimeStamp: str + :ivar longTermBackupSchedule: Details for the long-term backup schedule. + :vartype longTermBackupSchedule: "LongTermBackUpScheduleDetails" + :ivar isPreview: Indicates if the Autonomous Database version is a preview version. + :vartype isPreview: bool + :ivar localAdgAutoFailoverMaxDataLossLimit: Parameter that allows users to select an acceptable + maximum data loss limit in seconds, up to which Automatic Failover will be triggered when + necessary for a Local Autonomous Data Guard. + :vartype localAdgAutoFailoverMaxDataLossLimit: int + :ivar memoryPerOracleComputeUnitInGbs: The amount of memory (in GBs) enabled per ECPU or OCPU. + :vartype memoryPerOracleComputeUnitInGbs: int + :ivar openMode: Indicates the Autonomous Database mode. Known values are: "ReadOnly" and + "ReadWrite". + :vartype openMode: Union[str, "OpenModeType"] + :ivar operationsInsightsStatus: Status of Operations Insights for this Autonomous Database. + Known values are: "Enabling", "Enabled", "Disabling", "NotEnabled", "FailedEnabling", and + "FailedDisabling". + :vartype operationsInsightsStatus: Union[str, "OperationsInsightsStatusType"] + :ivar permissionLevel: The Autonomous Database permission level. Known values are: "Restricted" + and "Unrestricted". + :vartype permissionLevel: Union[str, "PermissionLevelType"] + :ivar privateEndpoint: The private endpoint for the resource. + :vartype privateEndpoint: str + :ivar provisionableCpus: An array of CPU values that an Autonomous Database can be scaled to. + :vartype provisionableCpus: list[int] + :ivar role: The Data Guard role of the Autonomous Container Database or Autonomous Database, if + Autonomous Data Guard is enabled. Known values are: "Primary", "Standby", "DisabledStandby", + "BackupCopy", and "SnapshotStandby". + :vartype role: Union[str, "RoleType"] + :ivar serviceConsoleUrl: The URL of the Service Console for the Autonomous Database. + :vartype serviceConsoleUrl: str + :ivar sqlWebDeveloperUrl: The SQL Web Developer URL for the Oracle Autonomous Database. + :vartype sqlWebDeveloperUrl: str + :ivar supportedRegionsToCloneTo: The list of regions that support the creation of an Autonomous + Database clone or an Autonomous Data Guard standby database. + :vartype supportedRegionsToCloneTo: list[str] + :ivar timeDataGuardRoleChanged: The date and time the Autonomous Data Guard role was switched + for the Autonomous Database. + :vartype timeDataGuardRoleChanged: str + :ivar timeDeletionOfFreeAutonomousDatabase: The date and time the Always Free database will be + automatically deleted because of inactivity. + :vartype timeDeletionOfFreeAutonomousDatabase: str + :ivar timeLocalDataGuardEnabled: The date and time that Autonomous Data Guard was enabled for + an Autonomous Database where the standby was provisioned in the same region as the primary + database. + :vartype timeLocalDataGuardEnabled: str + :ivar timeOfLastFailover: The timestamp of the last failover operation. + :vartype timeOfLastFailover: str + :ivar timeOfLastRefresh: The date and time when last refresh happened. + :vartype timeOfLastRefresh: str + :ivar timeOfLastRefreshPoint: The refresh point timestamp (UTC). + :vartype timeOfLastRefreshPoint: str + :ivar timeOfLastSwitchover: The timestamp of the last switchover operation for the Autonomous + Database. + :vartype timeOfLastSwitchover: str + :ivar timeReclamationOfFreeAutonomousDatabase: The date and time the Always Free database will + be stopped because of inactivity. + :vartype timeReclamationOfFreeAutonomousDatabase: str + :ivar usedDataStorageSizeInGbs: The storage space consumed by Autonomous Database in GBs. + :vartype usedDataStorageSizeInGbs: int + :ivar usedDataStorageSizeInTbs: The amount of storage that has been used, in terabytes. + :vartype usedDataStorageSizeInTbs: int + :ivar ocid: Database ocid. + :vartype ocid: str + :ivar backupRetentionPeriodInDays: Retention period, in days, for long-term backups. + :vartype backupRetentionPeriodInDays: int + :ivar whitelistedIps: The client IP access control list (ACL). This is an array of CIDR + notations and/or IP addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25']. + :vartype whitelistedIps: list[str] + :ivar isScheduleAzUpdateToEarliest: Update AZ at the earliest available opportunity. + :vartype isScheduleAzUpdateToEarliest: bool + :ivar timeScheduledAzUpdate: The date and time when the Autonomous Database availability zone + is to be updated. + :vartype timeScheduledAzUpdate: str + :ivar zone: The logical zone where the Autonomous Database is provisioned. + :vartype zone: str + :ivar backupDestination: Backup destination for auto and long-term backups. Existing backups + stay in their original destination when this value changes. Known values are: "OCI" and + "AZURE". + :vartype backupDestination: Union[str, "BackupDestinationType"] + :ivar resourceAnchorId: Azure Resource Anchor ID. + :vartype resourceAnchorId: str + :ivar networkAnchorId: Azure Network Anchor ID. + :vartype networkAnchorId: str + :ivar dataBaseType: Database type to be created. Required. Clone DB from backup timestamp. + :vartype dataBaseType: Literal[DataBaseType.CLONE_FROM_BACKUP_TIMESTAMP] + :ivar source: The source of the database. Required. Backup from timestamp source. + :vartype source: Literal[SourceType.BACKUP_FROM_TIMESTAMP] + :ivar sourceId: The ID of the source Autonomous Database that you will clone to create a new + Autonomous Database. Required. + :vartype sourceId: str + :ivar cloneType: The Autonomous Database clone type. Required. Known values are: "Full" and + "Metadata". + :vartype cloneType: Union[str, "CloneType"] + :ivar timestamp: The timestamp specified for the point-in-time clone of the source Autonomous + Database. The timestamp must be in the past. + :vartype timestamp: str + :ivar useLatestAvailableBackupTimeStamp: Clone from latest available backup timestamp. + :vartype useLatestAvailableBackupTimeStamp: bool + """ + + adminPassword: str + """Admin password.""" + autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + """The maintenance schedule type of the Autonomous Database Serverless. Known values are: + \"Early\" and \"Regular\".""" + characterSet: str + """The character set for the autonomous database.""" + computeCount: float + """The compute amount (CPUs) available to the database.""" + computeModel: Union[str, "ComputeModel"] + """The compute model of the Autonomous Database. Known values are: \"ECPU\" and \"OCPU\".""" + cpuCoreCount: int + """The number of CPU cores to be made available to the database.""" + customerContacts: list["CustomerContact"] + """Customer Contacts.""" + dataStorageSizeInTbs: int + """The quantity of data in the database, in terabytes.""" + dataStorageSizeInGbs: int + """The size, in gigabytes, of the data volume that will be created and attached to the database.""" + dbVersion: str + """A valid Oracle Database version for Autonomous Database.""" + dbWorkload: Union[str, "WorkloadType"] + """The Autonomous Database workload type. Known values are: \"OLTP\", \"DW\", \"AJD\", \"APEX\", + and \"LH\".""" + displayName: str + """The user-friendly name for the Autonomous Database.""" + isAutoScalingEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database CPU core count.""" + isAutoScalingForStorageEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database storage.""" + peerDbIds: list[str] + """The list of Azure resource IDs of standby databases located in Autonomous Data Guard remote + regions that are associated with the source database. Note that for Autonomous Database + Serverless instances, standby databases located in the same region as the source primary + database do not have Azure IDs.""" + peerDbId: str + """The Azure resource ID of the Disaster Recovery peer database, which is located in a different + region from the current peer database.""" + isLocalDataGuardEnabled: bool + """Indicates whether the Autonomous Database has local or called in-region Data Guard enabled.""" + isRemoteDataGuardEnabled: bool + """Indicates whether the Autonomous Database has Cross Region Data Guard enabled.""" + localDisasterRecoveryType: Union[str, "DisasterRecoveryType"] + """Indicates the local disaster recovery (DR) type of the Autonomous Database Serverless + instance.Autonomous Data Guard (ADG) DR type provides business critical DR with a faster + recovery time objective (RTO) during failover or switchover.Backup-based DR type provides lower + cost DR with a slower RTO during failover or switchover. Known values are: \"Adg\" and + \"BackupBased\".""" + timeDisasterRecoveryRoleChanged: str + """The date and time the Disaster Recovery role was switched for the standby Autonomous Database.""" + remoteDisasterRecoveryConfiguration: "DisasterRecoveryConfigurationDetails" + """Indicates remote disaster recovery configuration.""" + localStandbyDb: "AutonomousDatabaseStandbySummary" + """Local Autonomous Disaster Recovery standby database details.""" + failedDataRecoveryInSeconds: int + """Indicates the number of seconds of data loss for a Data Guard failover.""" + isMtlsConnectionRequired: bool + """Specifies if the Autonomous Database requires mTLS connections.""" + isPreviewVersionWithServiceTermsAccepted: bool + """Specifies if the Autonomous Database preview version is being provisioned.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to the Oracle Autonomous Database. The default is + LICENSE_INCLUDED. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + ncharacterSet: str + """The character set for the Autonomous Database.""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + """Views lifecycleState. Known values are: \"Provisioning\", \"Available\", \"Stopping\", + \"Stopped\", \"Starting\", \"Terminating\", \"Terminated\", \"Unavailable\", + \"RestoreInProgress\", \"RestoreFailed\", \"BackupInProgress\", \"ScaleInProgress\", + \"AvailableNeedsAttention\", \"Updating\", \"MaintenanceInProgress\", \"Restarting\", + \"Recreating\", \"RoleChangeInProgress\", \"Upgrading\", \"Inaccessible\", and \"Standby\".""" + scheduledOperationsList: list["ScheduledOperationsType"] + """The list of scheduled operations.""" + privateEndpointIp: str + """The private endpoint Ip address for the resource.""" + privateEndpointLabel: str + """The resource's private endpoint label.""" + ociUrl: str + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + subnetId: str + """Client subnet.""" + vnetId: str + """VNET for network connectivity.""" + timeCreated: str + """The date and time that the database was created.""" + timeMaintenanceBegin: str + """The date and time when maintenance will begin.""" + timeMaintenanceEnd: str + """The date and time when maintenance will end.""" + actualUsedDataStorageSizeInTbs: float + """The current amount of storage in use for user and system data, in terabytes (TB).""" + allocatedStorageSizeInTbs: float + """The amount of storage currently allocated for the database tables and billed for, rounded up.""" + apexDetails: "ApexDetailsType" + """Information about Oracle APEX Application Development.""" + availableUpgradeVersions: list[str] + """List of Oracle Database versions available for a database upgrade. If there are no version + upgrades available, this list is empty.""" + connectionStrings: "ConnectionStringType" + """The connection string used to connect to the Autonomous Database.""" + connectionUrls: "ConnectionUrlType" + """The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser + from a Compute instance within your VCN or that has a direct connection to your VCN.""" + dataSafeStatus: Union[str, "DataSafeStatusType"] + """Status of the Data Safe registration for this Autonomous Database. Known values are: + \"Registering\", \"Registered\", \"Deregistering\", \"NotRegistered\", and \"Failed\".""" + databaseEdition: Union[str, "DatabaseEditionType"] + """The Oracle Database Edition that applies to the Autonomous databases. Known values are: + \"StandardEdition\" and \"EnterpriseEdition\".""" + autonomousDatabaseId: str + """Autonomous Database ID.""" + inMemoryAreaInGbs: int + """The area assigned to In-Memory tables in Autonomous Database.""" + nextLongTermBackupTimeStamp: str + """The date and time when the next long-term backup would be created.""" + longTermBackupSchedule: "LongTermBackUpScheduleDetails" + """Details for the long-term backup schedule.""" + isPreview: bool + """Indicates if the Autonomous Database version is a preview version.""" + localAdgAutoFailoverMaxDataLossLimit: int + """Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to + which Automatic Failover will be triggered when necessary for a Local Autonomous Data Guard.""" + memoryPerOracleComputeUnitInGbs: int + """The amount of memory (in GBs) enabled per ECPU or OCPU.""" + openMode: Union[str, "OpenModeType"] + """Indicates the Autonomous Database mode. Known values are: \"ReadOnly\" and \"ReadWrite\".""" + operationsInsightsStatus: Union[str, "OperationsInsightsStatusType"] + """Status of Operations Insights for this Autonomous Database. Known values are: \"Enabling\", + \"Enabled\", \"Disabling\", \"NotEnabled\", \"FailedEnabling\", and \"FailedDisabling\".""" + permissionLevel: Union[str, "PermissionLevelType"] + """The Autonomous Database permission level. Known values are: \"Restricted\" and + \"Unrestricted\".""" + privateEndpoint: str + """The private endpoint for the resource.""" + provisionableCpus: list[int] + """An array of CPU values that an Autonomous Database can be scaled to.""" + role: Union[str, "RoleType"] + """The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous + Data Guard is enabled. Known values are: \"Primary\", \"Standby\", \"DisabledStandby\", + \"BackupCopy\", and \"SnapshotStandby\".""" + serviceConsoleUrl: str + """The URL of the Service Console for the Autonomous Database.""" + sqlWebDeveloperUrl: str + """The SQL Web Developer URL for the Oracle Autonomous Database.""" + supportedRegionsToCloneTo: list[str] + """The list of regions that support the creation of an Autonomous Database clone or an Autonomous + Data Guard standby database.""" + timeDataGuardRoleChanged: str + """The date and time the Autonomous Data Guard role was switched for the Autonomous Database.""" + timeDeletionOfFreeAutonomousDatabase: str + """The date and time the Always Free database will be automatically deleted because of inactivity.""" + timeLocalDataGuardEnabled: str + """The date and time that Autonomous Data Guard was enabled for an Autonomous Database where the + standby was provisioned in the same region as the primary database.""" + timeOfLastFailover: str + """The timestamp of the last failover operation.""" + timeOfLastRefresh: str + """The date and time when last refresh happened.""" + timeOfLastRefreshPoint: str + """The refresh point timestamp (UTC).""" + timeOfLastSwitchover: str + """The timestamp of the last switchover operation for the Autonomous Database.""" + timeReclamationOfFreeAutonomousDatabase: str + """The date and time the Always Free database will be stopped because of inactivity.""" + usedDataStorageSizeInGbs: int + """The storage space consumed by Autonomous Database in GBs.""" + usedDataStorageSizeInTbs: int + """The amount of storage that has been used, in terabytes.""" + ocid: str + """Database ocid.""" + backupRetentionPeriodInDays: int + """Retention period, in days, for long-term backups.""" + whitelistedIps: list[str] + """The client IP access control list (ACL). This is an array of CIDR notations and/or IP + addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25'].""" + isScheduleAzUpdateToEarliest: bool + """Update AZ at the earliest available opportunity.""" + timeScheduledAzUpdate: str + """The date and time when the Autonomous Database availability zone is to be updated.""" + zone: str + """The logical zone where the Autonomous Database is provisioned.""" + backupDestination: Union[str, "BackupDestinationType"] + """Backup destination for auto and long-term backups. Existing backups stay in their original + destination when this value changes. Known values are: \"OCI\" and \"AZURE\".""" + resourceAnchorId: str + """Azure Resource Anchor ID.""" + networkAnchorId: str + """Azure Network Anchor ID.""" + dataBaseType: Required[Literal[DataBaseType.CLONE_FROM_BACKUP_TIMESTAMP]] + """Database type to be created. Required. Clone DB from backup timestamp.""" + source: Required[Literal[SourceType.BACKUP_FROM_TIMESTAMP]] + """The source of the database. Required. Backup from timestamp source.""" + sourceId: Required[str] + """The ID of the source Autonomous Database that you will clone to create a new Autonomous + Database. Required.""" + cloneType: Required[Union[str, "CloneType"]] + """The Autonomous Database clone type. Required. Known values are: \"Full\" and \"Metadata\".""" + timestamp: str + """The timestamp specified for the point-in-time clone of the source Autonomous Database. The + timestamp must be in the past.""" + useLatestAvailableBackupTimeStamp: bool + """Clone from latest available backup timestamp.""" + + +class AutonomousDatabaseLifecycleAction(TypedDict, total=False): + """Autonomous Database Action Object. + + :ivar action: Autonomous Database lifecycle action. Required. Known values are: "Start", + "Stop", and "Restart". + :vartype action: Union[str, "AutonomousDatabaseLifecycleActionEnum"] + """ + + action: Required[Union[str, "AutonomousDatabaseLifecycleActionEnum"]] + """Autonomous Database lifecycle action. Required. Known values are: \"Start\", \"Stop\", and + \"Restart\".""" + + +class AutonomousDatabaseProperties(TypedDict, total=False): + """Autonomous Database resource model. + + :ivar adminPassword: Admin password. + :vartype adminPassword: str + :ivar autonomousMaintenanceScheduleType: The maintenance schedule type of the Autonomous + Database Serverless. Known values are: "Early" and "Regular". + :vartype autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + :ivar characterSet: The character set for the autonomous database. + :vartype characterSet: str + :ivar computeCount: The compute amount (CPUs) available to the database. + :vartype computeCount: float + :ivar computeModel: The compute model of the Autonomous Database. Known values are: "ECPU" and + "OCPU". + :vartype computeModel: Union[str, "ComputeModel"] + :ivar cpuCoreCount: The number of CPU cores to be made available to the database. + :vartype cpuCoreCount: int + :ivar customerContacts: Customer Contacts. + :vartype customerContacts: list["CustomerContact"] + :ivar dataStorageSizeInTbs: The quantity of data in the database, in terabytes. + :vartype dataStorageSizeInTbs: int + :ivar dataStorageSizeInGbs: The size, in gigabytes, of the data volume that will be created and + attached to the database. + :vartype dataStorageSizeInGbs: int + :ivar dbVersion: A valid Oracle Database version for Autonomous Database. + :vartype dbVersion: str + :ivar dbWorkload: The Autonomous Database workload type. Known values are: "OLTP", "DW", "AJD", + "APEX", and "LH". + :vartype dbWorkload: Union[str, "WorkloadType"] + :ivar displayName: The user-friendly name for the Autonomous Database. + :vartype displayName: str + :ivar isAutoScalingEnabled: Indicates if auto scaling is enabled for the Autonomous Database + CPU core count. + :vartype isAutoScalingEnabled: bool + :ivar isAutoScalingForStorageEnabled: Indicates if auto scaling is enabled for the Autonomous + Database storage. + :vartype isAutoScalingForStorageEnabled: bool + :ivar peerDbIds: The list of Azure resource IDs of standby databases located in Autonomous Data + Guard remote regions that are associated with the source database. Note that for Autonomous + Database Serverless instances, standby databases located in the same region as the source + primary database do not have Azure IDs. + :vartype peerDbIds: list[str] + :ivar peerDbId: The Azure resource ID of the Disaster Recovery peer database, which is located + in a different region from the current peer database. + :vartype peerDbId: str + :ivar isLocalDataGuardEnabled: Indicates whether the Autonomous Database has local or called + in-region Data Guard enabled. + :vartype isLocalDataGuardEnabled: bool + :ivar isRemoteDataGuardEnabled: Indicates whether the Autonomous Database has Cross Region Data + Guard enabled. + :vartype isRemoteDataGuardEnabled: bool + :ivar localDisasterRecoveryType: Indicates the local disaster recovery (DR) type of the + Autonomous Database Serverless instance.Autonomous Data Guard (ADG) DR type provides business + critical DR with a faster recovery time objective (RTO) during failover or + switchover.Backup-based DR type provides lower cost DR with a slower RTO during failover or + switchover. Known values are: "Adg" and "BackupBased". + :vartype localDisasterRecoveryType: Union[str, "DisasterRecoveryType"] + :ivar timeDisasterRecoveryRoleChanged: The date and time the Disaster Recovery role was + switched for the standby Autonomous Database. + :vartype timeDisasterRecoveryRoleChanged: str + :ivar remoteDisasterRecoveryConfiguration: Indicates remote disaster recovery configuration. + :vartype remoteDisasterRecoveryConfiguration: "DisasterRecoveryConfigurationDetails" + :ivar localStandbyDb: Local Autonomous Disaster Recovery standby database details. + :vartype localStandbyDb: "AutonomousDatabaseStandbySummary" + :ivar failedDataRecoveryInSeconds: Indicates the number of seconds of data loss for a Data + Guard failover. + :vartype failedDataRecoveryInSeconds: int + :ivar isMtlsConnectionRequired: Specifies if the Autonomous Database requires mTLS connections. + :vartype isMtlsConnectionRequired: bool + :ivar isPreviewVersionWithServiceTermsAccepted: Specifies if the Autonomous Database preview + version is being provisioned. + :vartype isPreviewVersionWithServiceTermsAccepted: bool + :ivar licenseModel: The Oracle license model that applies to the Oracle Autonomous Database. + The default is LICENSE_INCLUDED. Known values are: "LicenseIncluded" and "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar ncharacterSet: The character set for the Autonomous Database. + :vartype ncharacterSet: str + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar provisioningState: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: Views lifecycleState. Known values are: "Provisioning", "Available", + "Stopping", "Stopped", "Starting", "Terminating", "Terminated", "Unavailable", + "RestoreInProgress", "RestoreFailed", "BackupInProgress", "ScaleInProgress", + "AvailableNeedsAttention", "Updating", "MaintenanceInProgress", "Restarting", "Recreating", + "RoleChangeInProgress", "Upgrading", "Inaccessible", and "Standby". + :vartype lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + :ivar scheduledOperationsList: The list of scheduled operations. + :vartype scheduledOperationsList: list["ScheduledOperationsType"] + :ivar privateEndpointIp: The private endpoint Ip address for the resource. + :vartype privateEndpointIp: str + :ivar privateEndpointLabel: The resource's private endpoint label. + :vartype privateEndpointLabel: str + :ivar ociUrl: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype ociUrl: str + :ivar subnetId: Client subnet. + :vartype subnetId: str + :ivar vnetId: VNET for network connectivity. + :vartype vnetId: str + :ivar timeCreated: The date and time that the database was created. + :vartype timeCreated: str + :ivar timeMaintenanceBegin: The date and time when maintenance will begin. + :vartype timeMaintenanceBegin: str + :ivar timeMaintenanceEnd: The date and time when maintenance will end. + :vartype timeMaintenanceEnd: str + :ivar actualUsedDataStorageSizeInTbs: The current amount of storage in use for user and system + data, in terabytes (TB). + :vartype actualUsedDataStorageSizeInTbs: float + :ivar allocatedStorageSizeInTbs: The amount of storage currently allocated for the database + tables and billed for, rounded up. + :vartype allocatedStorageSizeInTbs: float + :ivar apexDetails: Information about Oracle APEX Application Development. + :vartype apexDetails: "ApexDetailsType" + :ivar availableUpgradeVersions: List of Oracle Database versions available for a database + upgrade. If there are no version upgrades available, this list is empty. + :vartype availableUpgradeVersions: list[str] + :ivar connectionStrings: The connection string used to connect to the Autonomous Database. + :vartype connectionStrings: "ConnectionStringType" + :ivar connectionUrls: The URLs for accessing Oracle Application Express (APEX) and SQL + Developer Web with a browser from a Compute instance within your VCN or that has a direct + connection to your VCN. + :vartype connectionUrls: "ConnectionUrlType" + :ivar dataSafeStatus: Status of the Data Safe registration for this Autonomous Database. Known + values are: "Registering", "Registered", "Deregistering", "NotRegistered", and "Failed". + :vartype dataSafeStatus: Union[str, "DataSafeStatusType"] + :ivar databaseEdition: The Oracle Database Edition that applies to the Autonomous databases. + Known values are: "StandardEdition" and "EnterpriseEdition". + :vartype databaseEdition: Union[str, "DatabaseEditionType"] + :ivar autonomousDatabaseId: Autonomous Database ID. + :vartype autonomousDatabaseId: str + :ivar inMemoryAreaInGbs: The area assigned to In-Memory tables in Autonomous Database. + :vartype inMemoryAreaInGbs: int + :ivar nextLongTermBackupTimeStamp: The date and time when the next long-term backup would be + created. + :vartype nextLongTermBackupTimeStamp: str + :ivar longTermBackupSchedule: Details for the long-term backup schedule. + :vartype longTermBackupSchedule: "LongTermBackUpScheduleDetails" + :ivar isPreview: Indicates if the Autonomous Database version is a preview version. + :vartype isPreview: bool + :ivar localAdgAutoFailoverMaxDataLossLimit: Parameter that allows users to select an acceptable + maximum data loss limit in seconds, up to which Automatic Failover will be triggered when + necessary for a Local Autonomous Data Guard. + :vartype localAdgAutoFailoverMaxDataLossLimit: int + :ivar memoryPerOracleComputeUnitInGbs: The amount of memory (in GBs) enabled per ECPU or OCPU. + :vartype memoryPerOracleComputeUnitInGbs: int + :ivar openMode: Indicates the Autonomous Database mode. Known values are: "ReadOnly" and + "ReadWrite". + :vartype openMode: Union[str, "OpenModeType"] + :ivar operationsInsightsStatus: Status of Operations Insights for this Autonomous Database. + Known values are: "Enabling", "Enabled", "Disabling", "NotEnabled", "FailedEnabling", and + "FailedDisabling". + :vartype operationsInsightsStatus: Union[str, "OperationsInsightsStatusType"] + :ivar permissionLevel: The Autonomous Database permission level. Known values are: "Restricted" + and "Unrestricted". + :vartype permissionLevel: Union[str, "PermissionLevelType"] + :ivar privateEndpoint: The private endpoint for the resource. + :vartype privateEndpoint: str + :ivar provisionableCpus: An array of CPU values that an Autonomous Database can be scaled to. + :vartype provisionableCpus: list[int] + :ivar role: The Data Guard role of the Autonomous Container Database or Autonomous Database, if + Autonomous Data Guard is enabled. Known values are: "Primary", "Standby", "DisabledStandby", + "BackupCopy", and "SnapshotStandby". + :vartype role: Union[str, "RoleType"] + :ivar serviceConsoleUrl: The URL of the Service Console for the Autonomous Database. + :vartype serviceConsoleUrl: str + :ivar sqlWebDeveloperUrl: The SQL Web Developer URL for the Oracle Autonomous Database. + :vartype sqlWebDeveloperUrl: str + :ivar supportedRegionsToCloneTo: The list of regions that support the creation of an Autonomous + Database clone or an Autonomous Data Guard standby database. + :vartype supportedRegionsToCloneTo: list[str] + :ivar timeDataGuardRoleChanged: The date and time the Autonomous Data Guard role was switched + for the Autonomous Database. + :vartype timeDataGuardRoleChanged: str + :ivar timeDeletionOfFreeAutonomousDatabase: The date and time the Always Free database will be + automatically deleted because of inactivity. + :vartype timeDeletionOfFreeAutonomousDatabase: str + :ivar timeLocalDataGuardEnabled: The date and time that Autonomous Data Guard was enabled for + an Autonomous Database where the standby was provisioned in the same region as the primary + database. + :vartype timeLocalDataGuardEnabled: str + :ivar timeOfLastFailover: The timestamp of the last failover operation. + :vartype timeOfLastFailover: str + :ivar timeOfLastRefresh: The date and time when last refresh happened. + :vartype timeOfLastRefresh: str + :ivar timeOfLastRefreshPoint: The refresh point timestamp (UTC). + :vartype timeOfLastRefreshPoint: str + :ivar timeOfLastSwitchover: The timestamp of the last switchover operation for the Autonomous + Database. + :vartype timeOfLastSwitchover: str + :ivar timeReclamationOfFreeAutonomousDatabase: The date and time the Always Free database will + be stopped because of inactivity. + :vartype timeReclamationOfFreeAutonomousDatabase: str + :ivar usedDataStorageSizeInGbs: The storage space consumed by Autonomous Database in GBs. + :vartype usedDataStorageSizeInGbs: int + :ivar usedDataStorageSizeInTbs: The amount of storage that has been used, in terabytes. + :vartype usedDataStorageSizeInTbs: int + :ivar ocid: Database ocid. + :vartype ocid: str + :ivar backupRetentionPeriodInDays: Retention period, in days, for long-term backups. + :vartype backupRetentionPeriodInDays: int + :ivar whitelistedIps: The client IP access control list (ACL). This is an array of CIDR + notations and/or IP addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25']. + :vartype whitelistedIps: list[str] + :ivar isScheduleAzUpdateToEarliest: Update AZ at the earliest available opportunity. + :vartype isScheduleAzUpdateToEarliest: bool + :ivar timeScheduledAzUpdate: The date and time when the Autonomous Database availability zone + is to be updated. + :vartype timeScheduledAzUpdate: str + :ivar zone: The logical zone where the Autonomous Database is provisioned. + :vartype zone: str + :ivar backupDestination: Backup destination for auto and long-term backups. Existing backups + stay in their original destination when this value changes. Known values are: "OCI" and + "AZURE". + :vartype backupDestination: Union[str, "BackupDestinationType"] + :ivar resourceAnchorId: Azure Resource Anchor ID. + :vartype resourceAnchorId: str + :ivar networkAnchorId: Azure Network Anchor ID. + :vartype networkAnchorId: str + :ivar dataBaseType: Database type to be created. Required. Regular DB. + :vartype dataBaseType: Literal[DataBaseType.REGULAR] + """ + + adminPassword: str + """Admin password.""" + autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + """The maintenance schedule type of the Autonomous Database Serverless. Known values are: + \"Early\" and \"Regular\".""" + characterSet: str + """The character set for the autonomous database.""" + computeCount: float + """The compute amount (CPUs) available to the database.""" + computeModel: Union[str, "ComputeModel"] + """The compute model of the Autonomous Database. Known values are: \"ECPU\" and \"OCPU\".""" + cpuCoreCount: int + """The number of CPU cores to be made available to the database.""" + customerContacts: list["CustomerContact"] + """Customer Contacts.""" + dataStorageSizeInTbs: int + """The quantity of data in the database, in terabytes.""" + dataStorageSizeInGbs: int + """The size, in gigabytes, of the data volume that will be created and attached to the database.""" + dbVersion: str + """A valid Oracle Database version for Autonomous Database.""" + dbWorkload: Union[str, "WorkloadType"] + """The Autonomous Database workload type. Known values are: \"OLTP\", \"DW\", \"AJD\", \"APEX\", + and \"LH\".""" + displayName: str + """The user-friendly name for the Autonomous Database.""" + isAutoScalingEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database CPU core count.""" + isAutoScalingForStorageEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database storage.""" + peerDbIds: list[str] + """The list of Azure resource IDs of standby databases located in Autonomous Data Guard remote + regions that are associated with the source database. Note that for Autonomous Database + Serverless instances, standby databases located in the same region as the source primary + database do not have Azure IDs.""" + peerDbId: str + """The Azure resource ID of the Disaster Recovery peer database, which is located in a different + region from the current peer database.""" + isLocalDataGuardEnabled: bool + """Indicates whether the Autonomous Database has local or called in-region Data Guard enabled.""" + isRemoteDataGuardEnabled: bool + """Indicates whether the Autonomous Database has Cross Region Data Guard enabled.""" + localDisasterRecoveryType: Union[str, "DisasterRecoveryType"] + """Indicates the local disaster recovery (DR) type of the Autonomous Database Serverless + instance.Autonomous Data Guard (ADG) DR type provides business critical DR with a faster + recovery time objective (RTO) during failover or switchover.Backup-based DR type provides lower + cost DR with a slower RTO during failover or switchover. Known values are: \"Adg\" and + \"BackupBased\".""" + timeDisasterRecoveryRoleChanged: str + """The date and time the Disaster Recovery role was switched for the standby Autonomous Database.""" + remoteDisasterRecoveryConfiguration: "DisasterRecoveryConfigurationDetails" + """Indicates remote disaster recovery configuration.""" + localStandbyDb: "AutonomousDatabaseStandbySummary" + """Local Autonomous Disaster Recovery standby database details.""" + failedDataRecoveryInSeconds: int + """Indicates the number of seconds of data loss for a Data Guard failover.""" + isMtlsConnectionRequired: bool + """Specifies if the Autonomous Database requires mTLS connections.""" + isPreviewVersionWithServiceTermsAccepted: bool + """Specifies if the Autonomous Database preview version is being provisioned.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to the Oracle Autonomous Database. The default is + LICENSE_INCLUDED. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + ncharacterSet: str + """The character set for the Autonomous Database.""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + """Views lifecycleState. Known values are: \"Provisioning\", \"Available\", \"Stopping\", + \"Stopped\", \"Starting\", \"Terminating\", \"Terminated\", \"Unavailable\", + \"RestoreInProgress\", \"RestoreFailed\", \"BackupInProgress\", \"ScaleInProgress\", + \"AvailableNeedsAttention\", \"Updating\", \"MaintenanceInProgress\", \"Restarting\", + \"Recreating\", \"RoleChangeInProgress\", \"Upgrading\", \"Inaccessible\", and \"Standby\".""" + scheduledOperationsList: list["ScheduledOperationsType"] + """The list of scheduled operations.""" + privateEndpointIp: str + """The private endpoint Ip address for the resource.""" + privateEndpointLabel: str + """The resource's private endpoint label.""" + ociUrl: str + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + subnetId: str + """Client subnet.""" + vnetId: str + """VNET for network connectivity.""" + timeCreated: str + """The date and time that the database was created.""" + timeMaintenanceBegin: str + """The date and time when maintenance will begin.""" + timeMaintenanceEnd: str + """The date and time when maintenance will end.""" + actualUsedDataStorageSizeInTbs: float + """The current amount of storage in use for user and system data, in terabytes (TB).""" + allocatedStorageSizeInTbs: float + """The amount of storage currently allocated for the database tables and billed for, rounded up.""" + apexDetails: "ApexDetailsType" + """Information about Oracle APEX Application Development.""" + availableUpgradeVersions: list[str] + """List of Oracle Database versions available for a database upgrade. If there are no version + upgrades available, this list is empty.""" + connectionStrings: "ConnectionStringType" + """The connection string used to connect to the Autonomous Database.""" + connectionUrls: "ConnectionUrlType" + """The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser + from a Compute instance within your VCN or that has a direct connection to your VCN.""" + dataSafeStatus: Union[str, "DataSafeStatusType"] + """Status of the Data Safe registration for this Autonomous Database. Known values are: + \"Registering\", \"Registered\", \"Deregistering\", \"NotRegistered\", and \"Failed\".""" + databaseEdition: Union[str, "DatabaseEditionType"] + """The Oracle Database Edition that applies to the Autonomous databases. Known values are: + \"StandardEdition\" and \"EnterpriseEdition\".""" + autonomousDatabaseId: str + """Autonomous Database ID.""" + inMemoryAreaInGbs: int + """The area assigned to In-Memory tables in Autonomous Database.""" + nextLongTermBackupTimeStamp: str + """The date and time when the next long-term backup would be created.""" + longTermBackupSchedule: "LongTermBackUpScheduleDetails" + """Details for the long-term backup schedule.""" + isPreview: bool + """Indicates if the Autonomous Database version is a preview version.""" + localAdgAutoFailoverMaxDataLossLimit: int + """Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to + which Automatic Failover will be triggered when necessary for a Local Autonomous Data Guard.""" + memoryPerOracleComputeUnitInGbs: int + """The amount of memory (in GBs) enabled per ECPU or OCPU.""" + openMode: Union[str, "OpenModeType"] + """Indicates the Autonomous Database mode. Known values are: \"ReadOnly\" and \"ReadWrite\".""" + operationsInsightsStatus: Union[str, "OperationsInsightsStatusType"] + """Status of Operations Insights for this Autonomous Database. Known values are: \"Enabling\", + \"Enabled\", \"Disabling\", \"NotEnabled\", \"FailedEnabling\", and \"FailedDisabling\".""" + permissionLevel: Union[str, "PermissionLevelType"] + """The Autonomous Database permission level. Known values are: \"Restricted\" and + \"Unrestricted\".""" + privateEndpoint: str + """The private endpoint for the resource.""" + provisionableCpus: list[int] + """An array of CPU values that an Autonomous Database can be scaled to.""" + role: Union[str, "RoleType"] + """The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous + Data Guard is enabled. Known values are: \"Primary\", \"Standby\", \"DisabledStandby\", + \"BackupCopy\", and \"SnapshotStandby\".""" + serviceConsoleUrl: str + """The URL of the Service Console for the Autonomous Database.""" + sqlWebDeveloperUrl: str + """The SQL Web Developer URL for the Oracle Autonomous Database.""" + supportedRegionsToCloneTo: list[str] + """The list of regions that support the creation of an Autonomous Database clone or an Autonomous + Data Guard standby database.""" + timeDataGuardRoleChanged: str + """The date and time the Autonomous Data Guard role was switched for the Autonomous Database.""" + timeDeletionOfFreeAutonomousDatabase: str + """The date and time the Always Free database will be automatically deleted because of inactivity.""" + timeLocalDataGuardEnabled: str + """The date and time that Autonomous Data Guard was enabled for an Autonomous Database where the + standby was provisioned in the same region as the primary database.""" + timeOfLastFailover: str + """The timestamp of the last failover operation.""" + timeOfLastRefresh: str + """The date and time when last refresh happened.""" + timeOfLastRefreshPoint: str + """The refresh point timestamp (UTC).""" + timeOfLastSwitchover: str + """The timestamp of the last switchover operation for the Autonomous Database.""" + timeReclamationOfFreeAutonomousDatabase: str + """The date and time the Always Free database will be stopped because of inactivity.""" + usedDataStorageSizeInGbs: int + """The storage space consumed by Autonomous Database in GBs.""" + usedDataStorageSizeInTbs: int + """The amount of storage that has been used, in terabytes.""" + ocid: str + """Database ocid.""" + backupRetentionPeriodInDays: int + """Retention period, in days, for long-term backups.""" + whitelistedIps: list[str] + """The client IP access control list (ACL). This is an array of CIDR notations and/or IP + addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25'].""" + isScheduleAzUpdateToEarliest: bool + """Update AZ at the earliest available opportunity.""" + timeScheduledAzUpdate: str + """The date and time when the Autonomous Database availability zone is to be updated.""" + zone: str + """The logical zone where the Autonomous Database is provisioned.""" + backupDestination: Union[str, "BackupDestinationType"] + """Backup destination for auto and long-term backups. Existing backups stay in their original + destination when this value changes. Known values are: \"OCI\" and \"AZURE\".""" + resourceAnchorId: str + """Azure Resource Anchor ID.""" + networkAnchorId: str + """Azure Network Anchor ID.""" + dataBaseType: Required[Literal[DataBaseType.REGULAR]] + """Database type to be created. Required. Regular DB.""" + + +class AutonomousDatabaseStandbySummary(TypedDict, total=False): + """Autonomous Disaster Recovery standby database details. + + :ivar lagTimeInSeconds: The amount of time, in seconds, that the data of the standby database + lags the data of the primary database. Can be used to determine the potential data loss in the + event of a failover. + :vartype lagTimeInSeconds: int + :ivar lifecycleState: The current state of the Autonomous Database. Known values are: + "Provisioning", "Available", "Stopping", "Stopped", "Starting", "Terminating", "Terminated", + "Unavailable", "RestoreInProgress", "RestoreFailed", "BackupInProgress", "ScaleInProgress", + "AvailableNeedsAttention", "Updating", "MaintenanceInProgress", "Restarting", "Recreating", + "RoleChangeInProgress", "Upgrading", "Inaccessible", and "Standby". + :vartype lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar timeDataGuardRoleChanged: The date and time the Autonomous Data Guard role was switched + for the standby Autonomous Database. + :vartype timeDataGuardRoleChanged: str + :ivar timeDisasterRecoveryRoleChanged: The date and time the Disaster Recovery role was + switched for the standby Autonomous Database. + :vartype timeDisasterRecoveryRoleChanged: str + """ + + lagTimeInSeconds: int + """The amount of time, in seconds, that the data of the standby database lags the data of the + primary database. Can be used to determine the potential data loss in the event of a failover.""" + lifecycleState: Union[str, "AutonomousDatabaseLifecycleState"] + """The current state of the Autonomous Database. Known values are: \"Provisioning\", + \"Available\", \"Stopping\", \"Stopped\", \"Starting\", \"Terminating\", \"Terminated\", + \"Unavailable\", \"RestoreInProgress\", \"RestoreFailed\", \"BackupInProgress\", + \"ScaleInProgress\", \"AvailableNeedsAttention\", \"Updating\", \"MaintenanceInProgress\", + \"Restarting\", \"Recreating\", \"RoleChangeInProgress\", \"Upgrading\", \"Inaccessible\", and + \"Standby\".""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + timeDataGuardRoleChanged: str + """The date and time the Autonomous Data Guard role was switched for the standby Autonomous + Database.""" + timeDisasterRecoveryRoleChanged: str + """The date and time the Disaster Recovery role was switched for the standby Autonomous Database.""" + + +class AutonomousDatabaseUpdate(TypedDict, total=False): + """The type used for update operations of the AutonomousDatabase. + + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "AutonomousDatabaseUpdateProperties" + """ + + tags: dict[str, str] + """Resource tags.""" + properties: "AutonomousDatabaseUpdateProperties" + """The resource-specific properties for this resource.""" + + +class AutonomousDatabaseUpdateProperties(TypedDict, total=False): + """The updatable properties of the AutonomousDatabase. + + :ivar adminPassword: Admin password. + :vartype adminPassword: str + :ivar autonomousMaintenanceScheduleType: The maintenance schedule type of the Autonomous + Database Serverless. Known values are: "Early" and "Regular". + :vartype autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + :ivar computeCount: The compute amount (CPUs) available to the database. + :vartype computeCount: float + :ivar cpuCoreCount: The number of CPU cores to be made available to the database. + :vartype cpuCoreCount: int + :ivar customerContacts: Customer Contacts. + :vartype customerContacts: list["CustomerContact"] + :ivar dataStorageSizeInTbs: The quantity of data in the database, in terabytes. + :vartype dataStorageSizeInTbs: int + :ivar dataStorageSizeInGbs: The size, in gigabytes, of the data volume that will be created and + attached to the database. + :vartype dataStorageSizeInGbs: int + :ivar displayName: The user-friendly name for the Autonomous Database. + :vartype displayName: str + :ivar isAutoScalingEnabled: Indicates if auto scaling is enabled for the Autonomous Database + CPU core count. + :vartype isAutoScalingEnabled: bool + :ivar isAutoScalingForStorageEnabled: Indicates if auto scaling is enabled for the Autonomous + Database storage. + :vartype isAutoScalingForStorageEnabled: bool + :ivar peerDbId: The Azure resource ID of the Disaster Recovery peer database, which is located + in a different region from the current peer database. + :vartype peerDbId: str + :ivar isLocalDataGuardEnabled: Indicates whether the Autonomous Database has local or called + in-region Data Guard enabled. + :vartype isLocalDataGuardEnabled: bool + :ivar isMtlsConnectionRequired: Specifies if the Autonomous Database requires mTLS connections. + :vartype isMtlsConnectionRequired: bool + :ivar licenseModel: The Oracle license model that applies to the Oracle Autonomous Database. + The default is LICENSE_INCLUDED. Known values are: "LicenseIncluded" and "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar scheduledOperationsList: The list of scheduled operations. + :vartype scheduledOperationsList: list["ScheduledOperationsTypeUpdate"] + :ivar databaseEdition: The Oracle Database Edition that applies to the Autonomous databases. + Known values are: "StandardEdition" and "EnterpriseEdition". + :vartype databaseEdition: Union[str, "DatabaseEditionType"] + :ivar longTermBackupSchedule: Details for the long-term backup schedule. + :vartype longTermBackupSchedule: "LongTermBackUpScheduleDetails" + :ivar localAdgAutoFailoverMaxDataLossLimit: Parameter that allows users to select an acceptable + maximum data loss limit in seconds, up to which Automatic Failover will be triggered when + necessary for a Local Autonomous Data Guard. + :vartype localAdgAutoFailoverMaxDataLossLimit: int + :ivar openMode: Indicates the Autonomous Database mode. Known values are: "ReadOnly" and + "ReadWrite". + :vartype openMode: Union[str, "OpenModeType"] + :ivar permissionLevel: The Autonomous Database permission level. Known values are: "Restricted" + and "Unrestricted". + :vartype permissionLevel: Union[str, "PermissionLevelType"] + :ivar role: The Data Guard role of the Autonomous Container Database or Autonomous Database, if + Autonomous Data Guard is enabled. Known values are: "Primary", "Standby", "DisabledStandby", + "BackupCopy", and "SnapshotStandby". + :vartype role: Union[str, "RoleType"] + :ivar backupRetentionPeriodInDays: Retention period, in days, for long-term backups. + :vartype backupRetentionPeriodInDays: int + :ivar whitelistedIps: The client IP access control list (ACL). This is an array of CIDR + notations and/or IP addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25']. + :vartype whitelistedIps: list[str] + """ + + adminPassword: str + """Admin password.""" + autonomousMaintenanceScheduleType: Union[str, "AutonomousMaintenanceScheduleType"] + """The maintenance schedule type of the Autonomous Database Serverless. Known values are: + \"Early\" and \"Regular\".""" + computeCount: float + """The compute amount (CPUs) available to the database.""" + cpuCoreCount: int + """The number of CPU cores to be made available to the database.""" + customerContacts: list["CustomerContact"] + """Customer Contacts.""" + dataStorageSizeInTbs: int + """The quantity of data in the database, in terabytes.""" + dataStorageSizeInGbs: int + """The size, in gigabytes, of the data volume that will be created and attached to the database.""" + displayName: str + """The user-friendly name for the Autonomous Database.""" + isAutoScalingEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database CPU core count.""" + isAutoScalingForStorageEnabled: bool + """Indicates if auto scaling is enabled for the Autonomous Database storage.""" + peerDbId: str + """The Azure resource ID of the Disaster Recovery peer database, which is located in a different + region from the current peer database.""" + isLocalDataGuardEnabled: bool + """Indicates whether the Autonomous Database has local or called in-region Data Guard enabled.""" + isMtlsConnectionRequired: bool + """Specifies if the Autonomous Database requires mTLS connections.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to the Oracle Autonomous Database. The default is + LICENSE_INCLUDED. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + scheduledOperationsList: list["ScheduledOperationsTypeUpdate"] + """The list of scheduled operations.""" + databaseEdition: Union[str, "DatabaseEditionType"] + """The Oracle Database Edition that applies to the Autonomous databases. Known values are: + \"StandardEdition\" and \"EnterpriseEdition\".""" + longTermBackupSchedule: "LongTermBackUpScheduleDetails" + """Details for the long-term backup schedule.""" + localAdgAutoFailoverMaxDataLossLimit: int + """Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to + which Automatic Failover will be triggered when necessary for a Local Autonomous Data Guard.""" + openMode: Union[str, "OpenModeType"] + """Indicates the Autonomous Database mode. Known values are: \"ReadOnly\" and \"ReadWrite\".""" + permissionLevel: Union[str, "PermissionLevelType"] + """The Autonomous Database permission level. Known values are: \"Restricted\" and + \"Unrestricted\".""" + role: Union[str, "RoleType"] + """The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous + Data Guard is enabled. Known values are: \"Primary\", \"Standby\", \"DisabledStandby\", + \"BackupCopy\", and \"SnapshotStandby\".""" + backupRetentionPeriodInDays: int + """Retention period, in days, for long-term backups.""" + whitelistedIps: list[str] + """The client IP access control list (ACL). This is an array of CIDR notations and/or IP + addresses. Values should be separate strings, separated by commas. Example: + ['1.1.1.1','1.1.1.0/24','1.1.2.25'].""" + + +class AzureSubscriptions(TypedDict, total=False): + """Azure Subscriptions model. + + :ivar azureSubscriptionIds: Azure Subscription Ids to be updated. Required. + :vartype azureSubscriptionIds: list[str] + """ + + azureSubscriptionIds: Required[list[str]] + """Azure Subscription Ids to be updated. Required.""" + + +class BackupScheduleType(TypedDict, total=False): + """Backup schedule type. + + :ivar bucketName: Bucket name. + :vartype bucketName: str + :ivar compartmentId: Compartment ID. + :vartype compartmentId: str + :ivar frequencyBackupScheduled: Backup schedule frequency. Known values are: "Daily", "Weekly", + and "Monthly". + :vartype frequencyBackupScheduled: Union[str, "FrequencyType"] + :ivar isMetadataOnly: Indicates whether the backup contains metadata only. + :vartype isMetadataOnly: bool + :ivar namespaceName: Namespace. + :vartype namespaceName: str + :ivar timeBackupScheduled: Scheduled backup time. + :vartype timeBackupScheduled: str + """ + + bucketName: str + """Bucket name.""" + compartmentId: str + """Compartment ID.""" + frequencyBackupScheduled: Union[str, "FrequencyType"] + """Backup schedule frequency. Known values are: \"Daily\", \"Weekly\", and \"Monthly\".""" + isMetadataOnly: bool + """Indicates whether the backup contains metadata only.""" + namespaceName: str + """Namespace.""" + timeBackupScheduled: str + """Scheduled backup time.""" + + +class CloudExadataInfrastructure(TrackedResource): + """CloudExadataInfrastructure resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "CloudExadataInfrastructureProperties" + :ivar zones: CloudExadataInfrastructure zones. Required. + :vartype zones: list[str] + """ + + properties: "CloudExadataInfrastructureProperties" + """The resource-specific properties for this resource.""" + zones: Required[list[str]] + """CloudExadataInfrastructure zones. Required.""" + + +class CloudExadataInfrastructureProperties(TypedDict, total=False): + """CloudExadataInfrastructure resource model. + + :ivar definedFileSystemConfiguration: Defined file system configurations. + :vartype definedFileSystemConfiguration: list["DefinedFileSystemConfiguration"] + :ivar ocid: Exadata infra ocid. + :vartype ocid: str + :ivar resourceAnchorId: Azure Resource Anchor ID. + :vartype resourceAnchorId: str + :ivar computeCount: The number of compute servers for the cloud Exadata infrastructure. + :vartype computeCount: int + :ivar storageCount: The number of storage servers for the cloud Exadata infrastructure. + :vartype storageCount: int + :ivar totalStorageSizeInGbs: The total storage allocated to the cloud Exadata infrastructure + resource, in gigabytes (GB). + :vartype totalStorageSizeInGbs: int + :ivar availableStorageSizeInGbs: The available storage can be allocated to the cloud Exadata + infrastructure resource, in gigabytes (GB). + :vartype availableStorageSizeInGbs: int + :ivar timeCreated: The date and time the cloud Exadata infrastructure resource was created. + :vartype timeCreated: str + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar maintenanceWindow: maintenanceWindow property. + :vartype maintenanceWindow: "MaintenanceWindow" + :ivar estimatedPatchingTime: The estimated total time required in minutes for all patching + operations (database server, storage server, and network switch patching). + :vartype estimatedPatchingTime: "EstimatedPatchingTime" + :ivar customerContacts: The list of customer email addresses that receive information from + Oracle about the specified OCI Database service resource. Oracle uses these email addresses to + send notifications about planned and unplanned software maintenance updates, information about + system hardware, and other information needed by administrators. Up to 10 email addresses can + be added to the customer contacts for a cloud Exadata infrastructure instance. + :vartype customerContacts: list["CustomerContact"] + :ivar provisioningState: CloudExadataInfrastructure provisioning state. Known values are: + "Succeeded", "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: CloudExadataInfrastructure lifecycle state. Known values are: + "Provisioning", "Available", "Updating", "Terminating", "Terminated", "MaintenanceInProgress", + and "Failed". + :vartype lifecycleState: Union[str, "CloudExadataInfrastructureLifecycleState"] + :ivar shape: The model name of the cloud Exadata infrastructure resource. Required. + :vartype shape: str + :ivar proximityPlacementGroup: Proximity placement group settings. + :vartype proximityPlacementGroup: "ProximityPlacementGroup" + :ivar ociUrl: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype ociUrl: str + :ivar cpuCount: The total number of CPU cores allocated. + :vartype cpuCount: int + :ivar maxCpuCount: The total number of CPU cores available. + :vartype maxCpuCount: int + :ivar memorySizeInGbs: The memory allocated in GBs. + :vartype memorySizeInGbs: int + :ivar maxMemoryInGbs: The total memory available in GBs. + :vartype maxMemoryInGbs: int + :ivar dbNodeStorageSizeInGbs: The local node storage to be allocated in GBs. + :vartype dbNodeStorageSizeInGbs: int + :ivar maxDbNodeStorageSizeInGbs: The total local node storage available in GBs. + :vartype maxDbNodeStorageSizeInGbs: int + :ivar dataStorageSizeInTbs: The quantity of data in the database, in terabytes. + :vartype dataStorageSizeInTbs: float + :ivar maxDataStorageInTbs: The total available DATA disk group size. + :vartype maxDataStorageInTbs: float + :ivar dbServerVersion: The software version of the database servers (dom0) in the Exadata + infrastructure. + :vartype dbServerVersion: str + :ivar storageServerVersion: The software version of the storage servers (cells) in the Exadata + infrastructure. + :vartype storageServerVersion: str + :ivar activatedStorageCount: The requested number of additional storage servers activated for + the Exadata infrastructure. + :vartype activatedStorageCount: int + :ivar additionalStorageCount: The requested number of additional storage servers for the + Exadata infrastructure. + :vartype additionalStorageCount: int + :ivar displayName: The name for the Exadata infrastructure. Required. + :vartype displayName: str + :ivar lastMaintenanceRunId: The OCID of the last maintenance run. + :vartype lastMaintenanceRunId: str + :ivar nextMaintenanceRunId: The OCID of the next maintenance run. + :vartype nextMaintenanceRunId: str + :ivar monthlyDbServerVersion: Monthly Db Server version. + :vartype monthlyDbServerVersion: str + :ivar monthlyStorageServerVersion: Monthly Storage Server version. + :vartype monthlyStorageServerVersion: str + :ivar databaseServerType: The database server model type of the cloud Exadata infrastructure + resource. + :vartype databaseServerType: str + :ivar storageServerType: The storage server model type of the cloud Exadata infrastructure + resource. + :vartype storageServerType: str + :ivar computeModel: The compute model of the Exadata Infrastructure. Known values are: "ECPU" + and "OCPU". + :vartype computeModel: Union[str, "ComputeModel"] + :ivar exascaleConfig: The exascale config details for the cloud Exadata infrastructure. + :vartype exascaleConfig: "ExascaleConfigDetails" + """ + + definedFileSystemConfiguration: list["DefinedFileSystemConfiguration"] + """Defined file system configurations.""" + ocid: str + """Exadata infra ocid.""" + resourceAnchorId: str + """Azure Resource Anchor ID.""" + computeCount: int + """The number of compute servers for the cloud Exadata infrastructure.""" + storageCount: int + """The number of storage servers for the cloud Exadata infrastructure.""" + totalStorageSizeInGbs: int + """The total storage allocated to the cloud Exadata infrastructure resource, in gigabytes (GB).""" + availableStorageSizeInGbs: int + """The available storage can be allocated to the cloud Exadata infrastructure resource, in + gigabytes (GB).""" + timeCreated: str + """The date and time the cloud Exadata infrastructure resource was created.""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + maintenanceWindow: "MaintenanceWindow" + """maintenanceWindow property.""" + estimatedPatchingTime: "EstimatedPatchingTime" + """The estimated total time required in minutes for all patching operations (database server, + storage server, and network switch patching).""" + customerContacts: list["CustomerContact"] + """The list of customer email addresses that receive information from Oracle about the specified + OCI Database service resource. Oracle uses these email addresses to send notifications about + planned and unplanned software maintenance updates, information about system hardware, and + other information needed by administrators. Up to 10 email addresses can be added to the + customer contacts for a cloud Exadata infrastructure instance.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """CloudExadataInfrastructure provisioning state. Known values are: \"Succeeded\", \"Failed\", + \"Canceled\", and \"Provisioning\".""" + lifecycleState: Union[str, "CloudExadataInfrastructureLifecycleState"] + """CloudExadataInfrastructure lifecycle state. Known values are: \"Provisioning\", \"Available\", + \"Updating\", \"Terminating\", \"Terminated\", \"MaintenanceInProgress\", and \"Failed\".""" + shape: Required[str] + """The model name of the cloud Exadata infrastructure resource. Required.""" + proximityPlacementGroup: "ProximityPlacementGroup" + """Proximity placement group settings.""" + ociUrl: str + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + cpuCount: int + """The total number of CPU cores allocated.""" + maxCpuCount: int + """The total number of CPU cores available.""" + memorySizeInGbs: int + """The memory allocated in GBs.""" + maxMemoryInGbs: int + """The total memory available in GBs.""" + dbNodeStorageSizeInGbs: int + """The local node storage to be allocated in GBs.""" + maxDbNodeStorageSizeInGbs: int + """The total local node storage available in GBs.""" + dataStorageSizeInTbs: float + """The quantity of data in the database, in terabytes.""" + maxDataStorageInTbs: float + """The total available DATA disk group size.""" + dbServerVersion: str + """The software version of the database servers (dom0) in the Exadata infrastructure.""" + storageServerVersion: str + """The software version of the storage servers (cells) in the Exadata infrastructure.""" + activatedStorageCount: int + """The requested number of additional storage servers activated for the Exadata infrastructure.""" + additionalStorageCount: int + """The requested number of additional storage servers for the Exadata infrastructure.""" + displayName: Required[str] + """The name for the Exadata infrastructure. Required.""" + lastMaintenanceRunId: str + """The OCID of the last maintenance run.""" + nextMaintenanceRunId: str + """The OCID of the next maintenance run.""" + monthlyDbServerVersion: str + """Monthly Db Server version.""" + monthlyStorageServerVersion: str + """Monthly Storage Server version.""" + databaseServerType: str + """The database server model type of the cloud Exadata infrastructure resource.""" + storageServerType: str + """The storage server model type of the cloud Exadata infrastructure resource.""" + computeModel: Union[str, "ComputeModel"] + """The compute model of the Exadata Infrastructure. Known values are: \"ECPU\" and \"OCPU\".""" + exascaleConfig: "ExascaleConfigDetails" + """The exascale config details for the cloud Exadata infrastructure.""" + + +class CloudExadataInfrastructureUpdate(TypedDict, total=False): + """The type used for update operations of the CloudExadataInfrastructure. + + :ivar zones: CloudExadataInfrastructure zones. + :vartype zones: list[str] + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "CloudExadataInfrastructureUpdateProperties" + """ + + zones: list[str] + """CloudExadataInfrastructure zones.""" + tags: dict[str, str] + """Resource tags.""" + properties: "CloudExadataInfrastructureUpdateProperties" + """The resource-specific properties for this resource.""" + + +class CloudExadataInfrastructureUpdateProperties(TypedDict, total=False): # pylint: disable=name-too-long + """The updatable properties of the CloudExadataInfrastructure. + + :ivar computeCount: The number of compute servers for the cloud Exadata infrastructure. + :vartype computeCount: int + :ivar storageCount: The number of storage servers for the cloud Exadata infrastructure. + :vartype storageCount: int + :ivar maintenanceWindow: maintenanceWindow property. + :vartype maintenanceWindow: "MaintenanceWindow" + :ivar customerContacts: The list of customer email addresses that receive information from + Oracle about the specified OCI Database service resource. Oracle uses these email addresses to + send notifications about planned and unplanned software maintenance updates, information about + system hardware, and other information needed by administrators. Up to 10 email addresses can + be added to the customer contacts for a cloud Exadata infrastructure instance. + :vartype customerContacts: list["CustomerContact"] + :ivar displayName: The name for the Exadata infrastructure. + :vartype displayName: str + """ + + computeCount: int + """The number of compute servers for the cloud Exadata infrastructure.""" + storageCount: int + """The number of storage servers for the cloud Exadata infrastructure.""" + maintenanceWindow: "MaintenanceWindow" + """maintenanceWindow property.""" + customerContacts: list["CustomerContact"] + """The list of customer email addresses that receive information from Oracle about the specified + OCI Database service resource. Oracle uses these email addresses to send notifications about + planned and unplanned software maintenance updates, information about system hardware, and + other information needed by administrators. Up to 10 email addresses can be added to the + customer contacts for a cloud Exadata infrastructure instance.""" + displayName: str + """The name for the Exadata infrastructure.""" + + +class CloudVmCluster(TrackedResource): + """CloudVmCluster resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "CloudVmClusterProperties" + """ + + properties: "CloudVmClusterProperties" + """The resource-specific properties for this resource.""" + + +class CloudVmClusterProperties(TypedDict, total=False): + """CloudVmCluster resource model. + + :ivar ocid: Cloud VM Cluster ocid. + :vartype ocid: str + :ivar resourceAnchorId: Azure Resource Anchor ID. + :vartype resourceAnchorId: str + :ivar networkAnchorId: Azure Network Anchor ID. + :vartype networkAnchorId: str + :ivar listenerPort: The port number configured for the listener on the cloud VM cluster. + :vartype listenerPort: int + :ivar nodeCount: The number of nodes in the cloud VM cluster. + :vartype nodeCount: int + :ivar storageSizeInGbs: The data disk group size to be allocated in GBs per VM. + :vartype storageSizeInGbs: int + :ivar fileSystemConfigurationDetails: Array of mount path and size. + :vartype fileSystemConfigurationDetails: list["FileSystemConfigurationDetails"] + :ivar dataStorageSizeInTbs: The data disk group size to be allocated in TBs. + :vartype dataStorageSizeInTbs: float + :ivar dbNodeStorageSizeInGbs: The local node storage to be allocated in GBs. + :vartype dbNodeStorageSizeInGbs: int + :ivar memorySizeInGbs: The memory to be allocated in GBs. + :vartype memorySizeInGbs: int + :ivar timeCreated: The date and time that the cloud VM cluster was created. + :vartype timeCreated: str + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar timeZone: The time zone of the cloud VM cluster. For details, see `Exadata Infrastructure + Time Zones `_. + :vartype timeZone: str + :ivar zoneId: The OCID of the zone the cloud VM cluster is associated with. + :vartype zoneId: str + :ivar hostname: The hostname for the cloud VM cluster. Required. + :vartype hostname: str + :ivar domain: The domain name for the cloud VM cluster. + :vartype domain: str + :ivar cpuCoreCount: The number of CPU cores enabled on the cloud VM cluster. Required. + :vartype cpuCoreCount: int + :ivar ocpuCount: The number of OCPU cores to enable on the cloud VM cluster. Only 1 decimal + place is allowed for the fractional part. + :vartype ocpuCount: float + :ivar clusterName: The cluster name for cloud VM cluster. The cluster name must begin with an + alphabetic character, and may contain hyphens (-). Underscores (_) are not permitted. The + cluster name can be no longer than 11 characters and is not case sensitive. + :vartype clusterName: str + :ivar dataStoragePercentage: The percentage assigned to DATA storage (user data and database + files). The remaining percentage is assigned to RECO storage (database redo logs, archive logs, + and recovery manager backups). Accepted values are 35, 40, 60 and 80. The default is 80 percent + assigned to DATA storage. See `Storage Configuration + `_ in the Exadata documentation for details + on the impact of the configuration settings on storage. + :vartype dataStoragePercentage: int + :ivar recoStoragePercentage: The percentage assigned to RECO storage (database redo logs, + archive logs, and recovery manager backups). See `Storage Configuration + `_ in the Exadata documentation for details + on the impact of the configuration settings on storage. + :vartype recoStoragePercentage: int + :ivar sparseStoragePercentage: The percentage assigned to SPARSE storage (Exadata snapshots). + See `Storage Configuration `_ in the + Exadata documentation for details on the impact of the configuration settings on storage. + :vartype sparseStoragePercentage: int + :ivar isLocalBackupEnabled: If true, database backup on local Exadata storage is configured for + the cloud VM cluster. If false, database backup on local Exadata storage is not available in + the cloud VM cluster. + :vartype isLocalBackupEnabled: bool + :ivar cloudExadataInfrastructureId: Cloud Exadata Infrastructure ID. Required. + :vartype cloudExadataInfrastructureId: str + :ivar proximityPlacementGroup: Proximity placement group settings. + :vartype proximityPlacementGroup: "ProximityPlacementGroup" + :ivar isSparseDiskgroupEnabled: If true, sparse disk group is configured for the cloud VM + cluster. If false, sparse disk group is not created. + :vartype isSparseDiskgroupEnabled: bool + :ivar systemVersion: Operating system version of the image. + :vartype systemVersion: str + :ivar sshPublicKeys: The public key portion of one or more key pairs used for SSH access to the + cloud VM cluster. Required. + :vartype sshPublicKeys: list[str] + :ivar licenseModel: The Oracle license model that applies to the cloud VM cluster. The default + is LICENSE_INCLUDED. Known values are: "LicenseIncluded" and "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar diskRedundancy: The type of redundancy configured for the cloud Vm cluster. NORMAL is + 2-way redundancy. HIGH is 3-way redundancy. Known values are: "High" and "Normal". + :vartype diskRedundancy: Union[str, "DiskRedundancy"] + :ivar scanIpIds: The Single Client Access Name (SCAN) IP addresses associated with the cloud VM + cluster. SCAN IP addresses are typically used for load balancing and are not assigned to any + interface. Oracle Clusterware directs the requests to the appropriate nodes in the cluster. + **Note:** For a single-node DB system, this list is empty. + :vartype scanIpIds: list[str] + :ivar vipIds: The virtual IP (VIP) addresses associated with the cloud VM cluster. The Cluster + Ready Services (CRS) creates and maintains one VIP address for each node in the Exadata Cloud + Service instance to enable failover. If one node fails, the VIP is reassigned to another active + node in the cluster. **Note:** For a single-node DB system, this list is empty. + :vartype vipIds: list[str] + :ivar scanDnsName: The FQDN of the DNS record for the SCAN IP addresses that are associated + with the cloud VM cluster. + :vartype scanDnsName: str + :ivar scanListenerPortTcp: The TCP Single Client Access Name (SCAN) port. The default port is + 1521. + :vartype scanListenerPortTcp: int + :ivar scanListenerPortTcpSsl: The TCPS Single Client Access Name (SCAN) port. The default port + is 2484. + :vartype scanListenerPortTcpSsl: int + :ivar scanDnsRecordId: The OCID of the DNS record for the SCAN IP addresses that are associated + with the cloud VM cluster. + :vartype scanDnsRecordId: str + :ivar shape: The model name of the Exadata hardware running the cloud VM cluster. + :vartype shape: str + :ivar provisioningState: CloudVmCluster provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: CloudVmCluster lifecycle state. Known values are: "Provisioning", + "Available", "Updating", "Terminating", "Terminated", "MaintenanceInProgress", and "Failed". + :vartype lifecycleState: Union[str, "CloudVmClusterLifecycleState"] + :ivar vnetId: VNET for network connectivity. Required. + :vartype vnetId: str + :ivar giVersion: Oracle Grid Infrastructure (GI) software version. Required. + :vartype giVersion: str + :ivar ociUrl: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype ociUrl: str + :ivar nsgUrl: HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure + Interface. + :vartype nsgUrl: str + :ivar subnetId: Client subnet. Required. + :vartype subnetId: str + :ivar backupSubnetCidr: Client OCI backup subnet CIDR, default is 192.168.252.0/22. + :vartype backupSubnetCidr: str + :ivar nsgCidrs: CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision + the VM Cluster will be added by default. + :vartype nsgCidrs: list["NsgCidr"] + :ivar dataCollectionOptions: Indicates user preferences for the various diagnostic collection + options for the VM cluster/Cloud VM cluster/VMBM DBCS. + :vartype dataCollectionOptions: "DataCollectionOptions" + :ivar displayName: Display Name. Required. + :vartype displayName: str + :ivar computeNodes: The list of compute servers to be added to the cloud VM cluster. + :vartype computeNodes: list[str] + :ivar iormConfigCache: iormConfigCache details for cloud VM cluster. + :vartype iormConfigCache: "ExadataIormConfig" + :ivar lastUpdateHistoryEntryId: The OCID of the last maintenance update history entry. + :vartype lastUpdateHistoryEntryId: str + :ivar dbServers: The list of DB servers. + :vartype dbServers: list[str] + :ivar compartmentId: Cluster compartmentId. + :vartype compartmentId: str + :ivar subnetOcid: Cluster subnet ocid. + :vartype subnetOcid: str + :ivar computeModel: The compute model of the VM Cluster. Known values are: "ECPU" and "OCPU". + :vartype computeModel: Union[str, "ComputeModel"] + :ivar exascaleDbStorageVaultId: Exadata Database Storage Vault ID. + :vartype exascaleDbStorageVaultId: str + :ivar storageManagementType: Specifies whether the type of storage management for the VM + cluster is ASM or Exascale. Known values are: "ASM" and "Exascale". + :vartype storageManagementType: Union[str, "ExadataVmClusterStorageManagementType"] + :ivar isAcceleratedNetworkEnabled: Indicates if the Accelerated Networking feature is enabled + or disabled for provisioning an Exadata VM cluster. The default value is: false. + :vartype isAcceleratedNetworkEnabled: bool + """ + + ocid: str + """Cloud VM Cluster ocid.""" + resourceAnchorId: str + """Azure Resource Anchor ID.""" + networkAnchorId: str + """Azure Network Anchor ID.""" + listenerPort: int + """The port number configured for the listener on the cloud VM cluster.""" + nodeCount: int + """The number of nodes in the cloud VM cluster.""" + storageSizeInGbs: int + """The data disk group size to be allocated in GBs per VM.""" + fileSystemConfigurationDetails: list["FileSystemConfigurationDetails"] + """Array of mount path and size.""" + dataStorageSizeInTbs: float + """The data disk group size to be allocated in TBs.""" + dbNodeStorageSizeInGbs: int + """The local node storage to be allocated in GBs.""" + memorySizeInGbs: int + """The memory to be allocated in GBs.""" + timeCreated: str + """The date and time that the cloud VM cluster was created.""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + timeZone: str + """The time zone of the cloud VM cluster. For details, see `Exadata Infrastructure Time Zones + `_.""" + zoneId: str + """The OCID of the zone the cloud VM cluster is associated with.""" + hostname: Required[str] + """The hostname for the cloud VM cluster. Required.""" + domain: str + """The domain name for the cloud VM cluster.""" + cpuCoreCount: Required[int] + """The number of CPU cores enabled on the cloud VM cluster. Required.""" + ocpuCount: float + """The number of OCPU cores to enable on the cloud VM cluster. Only 1 decimal place is allowed for + the fractional part.""" + clusterName: str + """The cluster name for cloud VM cluster. The cluster name must begin with an alphabetic + character, and may contain hyphens (-). Underscores (_) are not permitted. The cluster name can + be no longer than 11 characters and is not case sensitive.""" + dataStoragePercentage: int + """The percentage assigned to DATA storage (user data and database files). The remaining + percentage is assigned to RECO storage (database redo logs, archive logs, and recovery manager + backups). Accepted values are 35, 40, 60 and 80. The default is 80 percent assigned to DATA + storage. See `Storage Configuration `_ in + the Exadata documentation for details on the impact of the configuration settings on storage.""" + recoStoragePercentage: int + """The percentage assigned to RECO storage (database redo logs, archive logs, and recovery manager + backups). See `Storage Configuration `_ in + the Exadata documentation for details on the impact of the configuration settings on storage.""" + sparseStoragePercentage: int + """The percentage assigned to SPARSE storage (Exadata snapshots). See `Storage Configuration + `_ in the Exadata documentation for details + on the impact of the configuration settings on storage.""" + isLocalBackupEnabled: bool + """If true, database backup on local Exadata storage is configured for the cloud VM cluster. If + false, database backup on local Exadata storage is not available in the cloud VM cluster.""" + cloudExadataInfrastructureId: Required[str] + """Cloud Exadata Infrastructure ID. Required.""" + proximityPlacementGroup: "ProximityPlacementGroup" + """Proximity placement group settings.""" + isSparseDiskgroupEnabled: bool + """If true, sparse disk group is configured for the cloud VM cluster. If false, sparse disk group + is not created.""" + systemVersion: str + """Operating system version of the image.""" + sshPublicKeys: Required[list[str]] + """The public key portion of one or more key pairs used for SSH access to the cloud VM cluster. + Required.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to the cloud VM cluster. The default is LICENSE_INCLUDED. + Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + diskRedundancy: Union[str, "DiskRedundancy"] + """The type of redundancy configured for the cloud Vm cluster. NORMAL is 2-way redundancy. HIGH is + 3-way redundancy. Known values are: \"High\" and \"Normal\".""" + scanIpIds: list[str] + """The Single Client Access Name (SCAN) IP addresses associated with the cloud VM cluster. SCAN IP + addresses are typically used for load balancing and are not assigned to any interface. Oracle + Clusterware directs the requests to the appropriate nodes in the cluster. **Note:** For a + single-node DB system, this list is empty.""" + vipIds: list[str] + """The virtual IP (VIP) addresses associated with the cloud VM cluster. The Cluster Ready Services + (CRS) creates and maintains one VIP address for each node in the Exadata Cloud Service instance + to enable failover. If one node fails, the VIP is reassigned to another active node in the + cluster. **Note:** For a single-node DB system, this list is empty.""" + scanDnsName: str + """The FQDN of the DNS record for the SCAN IP addresses that are associated with the cloud VM + cluster.""" + scanListenerPortTcp: int + """The TCP Single Client Access Name (SCAN) port. The default port is 1521.""" + scanListenerPortTcpSsl: int + """The TCPS Single Client Access Name (SCAN) port. The default port is 2484.""" + scanDnsRecordId: str + """The OCID of the DNS record for the SCAN IP addresses that are associated with the cloud VM + cluster.""" + shape: str + """The model name of the Exadata hardware running the cloud VM cluster.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """CloudVmCluster provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + lifecycleState: Union[str, "CloudVmClusterLifecycleState"] + """CloudVmCluster lifecycle state. Known values are: \"Provisioning\", \"Available\", + \"Updating\", \"Terminating\", \"Terminated\", \"MaintenanceInProgress\", and \"Failed\".""" + vnetId: Required[str] + """VNET for network connectivity. Required.""" + giVersion: Required[str] + """Oracle Grid Infrastructure (GI) software version. Required.""" + ociUrl: str + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + nsgUrl: str + """HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure Interface.""" + subnetId: Required[str] + """Client subnet. Required.""" + backupSubnetCidr: str + """Client OCI backup subnet CIDR, default is 192.168.252.0/22.""" + nsgCidrs: list["NsgCidr"] + """CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision the VM Cluster + will be added by default.""" + dataCollectionOptions: "DataCollectionOptions" + """Indicates user preferences for the various diagnostic collection options for the VM + cluster/Cloud VM cluster/VMBM DBCS.""" + displayName: Required[str] + """Display Name. Required.""" + computeNodes: list[str] + """The list of compute servers to be added to the cloud VM cluster.""" + iormConfigCache: "ExadataIormConfig" + """iormConfigCache details for cloud VM cluster.""" + lastUpdateHistoryEntryId: str + """The OCID of the last maintenance update history entry.""" + dbServers: list[str] + """The list of DB servers.""" + compartmentId: str + """Cluster compartmentId.""" + subnetOcid: str + """Cluster subnet ocid.""" + computeModel: Union[str, "ComputeModel"] + """The compute model of the VM Cluster. Known values are: \"ECPU\" and \"OCPU\".""" + exascaleDbStorageVaultId: str + """Exadata Database Storage Vault ID.""" + storageManagementType: Union[str, "ExadataVmClusterStorageManagementType"] + """Specifies whether the type of storage management for the VM cluster is ASM or Exascale. Known + values are: \"ASM\" and \"Exascale\".""" + isAcceleratedNetworkEnabled: bool + """Indicates if the Accelerated Networking feature is enabled or disabled for provisioning an + Exadata VM cluster. The default value is: false.""" + + +class CloudVmClusterUpdate(TypedDict, total=False): + """The type used for update operations of the CloudVmCluster. + + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "CloudVmClusterUpdateProperties" + """ + + tags: dict[str, str] + """Resource tags.""" + properties: "CloudVmClusterUpdateProperties" + """The resource-specific properties for this resource.""" + + +class CloudVmClusterUpdateProperties(TypedDict, total=False): + """The updatable properties of the CloudVmCluster. + + :ivar storageSizeInGbs: The data disk group size to be allocated in GBs per VM. + :vartype storageSizeInGbs: int + :ivar fileSystemConfigurationDetails: Array of mount path and size. + :vartype fileSystemConfigurationDetails: list["FileSystemConfigurationDetails"] + :ivar dataStorageSizeInTbs: The data disk group size to be allocated in TBs. + :vartype dataStorageSizeInTbs: float + :ivar dbNodeStorageSizeInGbs: The local node storage to be allocated in GBs. + :vartype dbNodeStorageSizeInGbs: int + :ivar memorySizeInGbs: The memory to be allocated in GBs. + :vartype memorySizeInGbs: int + :ivar cpuCoreCount: The number of CPU cores enabled on the cloud VM cluster. + :vartype cpuCoreCount: int + :ivar ocpuCount: The number of OCPU cores to enable on the cloud VM cluster. Only 1 decimal + place is allowed for the fractional part. + :vartype ocpuCount: float + :ivar sshPublicKeys: The public key portion of one or more key pairs used for SSH access to the + cloud VM cluster. + :vartype sshPublicKeys: list[str] + :ivar licenseModel: The Oracle license model that applies to the cloud VM cluster. The default + is LICENSE_INCLUDED. Known values are: "LicenseIncluded" and "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar dataCollectionOptions: Indicates user preferences for the various diagnostic collection + options for the VM cluster/Cloud VM cluster/VMBM DBCS. + :vartype dataCollectionOptions: "DataCollectionOptions" + :ivar displayName: Display Name. + :vartype displayName: str + :ivar computeNodes: The list of compute servers to be added to the cloud VM cluster. + :vartype computeNodes: list[str] + :ivar isAcceleratedNetworkEnabled: Indicates if the Accelerated Networking feature is enabled + or disabled for provisioning an Exadata VM cluster. The default value is: false. + :vartype isAcceleratedNetworkEnabled: bool + """ + + storageSizeInGbs: int + """The data disk group size to be allocated in GBs per VM.""" + fileSystemConfigurationDetails: list["FileSystemConfigurationDetails"] + """Array of mount path and size.""" + dataStorageSizeInTbs: float + """The data disk group size to be allocated in TBs.""" + dbNodeStorageSizeInGbs: int + """The local node storage to be allocated in GBs.""" + memorySizeInGbs: int + """The memory to be allocated in GBs.""" + cpuCoreCount: int + """The number of CPU cores enabled on the cloud VM cluster.""" + ocpuCount: float + """The number of OCPU cores to enable on the cloud VM cluster. Only 1 decimal place is allowed for + the fractional part.""" + sshPublicKeys: list[str] + """The public key portion of one or more key pairs used for SSH access to the cloud VM cluster.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to the cloud VM cluster. The default is LICENSE_INCLUDED. + Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + dataCollectionOptions: "DataCollectionOptions" + """Indicates user preferences for the various diagnostic collection options for the VM + cluster/Cloud VM cluster/VMBM DBCS.""" + displayName: str + """Display Name.""" + computeNodes: list[str] + """The list of compute servers to be added to the cloud VM cluster.""" + isAcceleratedNetworkEnabled: bool + """Indicates if the Accelerated Networking feature is enabled or disabled for provisioning an + Exadata VM cluster. The default value is: false.""" + + +class ConfigureExascaleCloudExadataInfrastructureDetails(TypedDict, total=False): # pylint: disable=name-too-long + """The exascale config request details for the Cloud Exadata infrastructure. + + :ivar totalStorageInGbs: Storage size needed for Exascale in GBs. Required. + :vartype totalStorageInGbs: int + """ + + totalStorageInGbs: Required[int] + """Storage size needed for Exascale in GBs. Required.""" + + +class ConnectionStringType(TypedDict, total=False): + """Connection strings to connect to an Oracle Autonomous Database. + + :ivar allConnectionStrings: Returns all connection strings that can be used to connect to the + Autonomous Database. + :vartype allConnectionStrings: "AllConnectionStringType" + :ivar dedicated: The database service provides the least level of resources to each SQL + statement, but supports the most number of concurrent SQL statements. + :vartype dedicated: str + :ivar high: The High database service provides the highest level of resources to each SQL + statement resulting in the highest performance, but supports the fewest number of concurrent + SQL statements. + :vartype high: str + :ivar low: The Low database service provides the least level of resources to each SQL + statement, but supports the most number of concurrent SQL statements. + :vartype low: str + :ivar medium: The Medium database service provides a lower level of resources to each SQL + statement potentially resulting a lower level of performance, but supports more concurrent SQL + statements. + :vartype medium: str + :ivar profiles: A list of connection string profiles to allow clients to group, filter and + select connection string values based on structured metadata. + :vartype profiles: list["ProfileType"] + """ + + allConnectionStrings: "AllConnectionStringType" + """Returns all connection strings that can be used to connect to the Autonomous Database.""" + dedicated: str + """The database service provides the least level of resources to each SQL statement, but supports + the most number of concurrent SQL statements.""" + high: str + """The High database service provides the highest level of resources to each SQL statement + resulting in the highest performance, but supports the fewest number of concurrent SQL + statements.""" + low: str + """The Low database service provides the least level of resources to each SQL statement, but + supports the most number of concurrent SQL statements.""" + medium: str + """The Medium database service provides a lower level of resources to each SQL statement + potentially resulting a lower level of performance, but supports more concurrent SQL + statements.""" + profiles: list["ProfileType"] + """A list of connection string profiles to allow clients to group, filter and select connection + string values based on structured metadata.""" + + +class ConnectionUrlType(TypedDict, total=False): + """The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser + from a Compute instance within your VCN or that has a direct connection to your VCN. + + :ivar apexUrl: Oracle Application Express (APEX) URL. + :vartype apexUrl: str + :ivar databaseTransformsUrl: The URL of the Database Transforms for the Autonomous Database. + :vartype databaseTransformsUrl: str + :ivar graphStudioUrl: The URL of the Graph Studio for the Autonomous Database. + :vartype graphStudioUrl: str + :ivar machineLearningNotebookUrl: The URL of the Oracle Machine Learning (OML) Notebook for the + Autonomous Database. + :vartype machineLearningNotebookUrl: str + :ivar mongoDbUrl: The URL of the MongoDB API for the Autonomous Database. + :vartype mongoDbUrl: str + :ivar ordsUrl: The Oracle REST Data Services (ORDS) URL of the Web Access for the Autonomous + Database. + :vartype ordsUrl: str + :ivar sqlDevWebUrl: Oracle SQL Developer Web URL. + :vartype sqlDevWebUrl: str + """ + + apexUrl: str + """Oracle Application Express (APEX) URL.""" + databaseTransformsUrl: str + """The URL of the Database Transforms for the Autonomous Database.""" + graphStudioUrl: str + """The URL of the Graph Studio for the Autonomous Database.""" + machineLearningNotebookUrl: str + """The URL of the Oracle Machine Learning (OML) Notebook for the Autonomous Database.""" + mongoDbUrl: str + """The URL of the MongoDB API for the Autonomous Database.""" + ordsUrl: str + """The Oracle REST Data Services (ORDS) URL of the Web Access for the Autonomous Database.""" + sqlDevWebUrl: str + """Oracle SQL Developer Web URL.""" + + +class CustomerContact(TypedDict, total=False): + """CustomerContact resource properties. + + :ivar email: The email address used by Oracle to send notifications regarding databases and + infrastructure. Required. + :vartype email: str + """ + + email: Required[str] + """The email address used by Oracle to send notifications regarding databases and infrastructure. + Required.""" + + +class DataCollectionOptions(TypedDict, total=False): + """DataCollectionOptions resource properties. + + :ivar isDiagnosticsEventsEnabled: Indicates whether diagnostic collection is enabled for the VM + cluster/Cloud VM cluster/VMBM DBCS. + :vartype isDiagnosticsEventsEnabled: bool + :ivar isHealthMonitoringEnabled: Indicates whether health monitoring is enabled for the VM + cluster / Cloud VM cluster / VMBM DBCS. + :vartype isHealthMonitoringEnabled: bool + :ivar isIncidentLogsEnabled: Indicates whether incident logs and trace collection are enabled + for the VM cluster / Cloud VM cluster / VMBM DBCS. + :vartype isIncidentLogsEnabled: bool + """ + + isDiagnosticsEventsEnabled: bool + """Indicates whether diagnostic collection is enabled for the VM cluster/Cloud VM cluster/VMBM + DBCS.""" + isHealthMonitoringEnabled: bool + """Indicates whether health monitoring is enabled for the VM cluster / Cloud VM cluster / VMBM + DBCS.""" + isIncidentLogsEnabled: bool + """Indicates whether incident logs and trace collection are enabled for the VM cluster / Cloud VM + cluster / VMBM DBCS.""" + + +class DayOfWeek(TypedDict, total=False): + """DayOfWeek resource properties. + + :ivar name: Name of the day of the week. Required. Known values are: "Monday", "Tuesday", + "Wednesday", "Thursday", "Friday", "Saturday", and "Sunday". + :vartype name: Union[str, "DayOfWeekName"] + """ + + name: Required[Union[str, "DayOfWeekName"]] + """Name of the day of the week. Required. Known values are: \"Monday\", \"Tuesday\", + \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\", and \"Sunday\".""" + + +class DayOfWeekUpdate(TypedDict, total=False): + """DayOfWeek resource properties. + + :ivar name: Name of the day of the week. Known values are: "Monday", "Tuesday", "Wednesday", + "Thursday", "Friday", "Saturday", and "Sunday". + :vartype name: Union[str, "DayOfWeekName"] + """ + + name: Union[str, "DayOfWeekName"] + """Name of the day of the week. Known values are: \"Monday\", \"Tuesday\", \"Wednesday\", + \"Thursday\", \"Friday\", \"Saturday\", and \"Sunday\".""" + + +class DbIormConfig(TypedDict, total=False): + """DbIormConfig for cloud vm cluster. + + :ivar dbName: The database name. For the default DbPlan, the dbName is default. + :vartype dbName: str + :ivar flashCacheLimit: The flash cache limit for this database. This value is internally + configured based on the share value assigned to the database. + :vartype flashCacheLimit: str + :ivar share: The relative priority of this database. + :vartype share: int + """ + + dbName: str + """The database name. For the default DbPlan, the dbName is default.""" + flashCacheLimit: str + """The flash cache limit for this database. This value is internally configured based on the share + value assigned to the database.""" + share: int + """The relative priority of this database.""" + + +class DbNodeAction(TypedDict, total=False): + """DbNode action object. + + :ivar action: Db action. Required. Known values are: "Start", "Stop", "SoftReset", and "Reset". + :vartype action: Union[str, "DbNodeActionEnum"] + """ + + action: Required[Union[str, "DbNodeActionEnum"]] + """Db action. Required. Known values are: \"Start\", \"Stop\", \"SoftReset\", and \"Reset\".""" + + +class DbNodeDetails(TypedDict, total=False): + """Details of the ExaCS Db node. Applies to Exadata Database Service on Exascale Infrastructure + only. + + :ivar dbNodeId: Exascale DbNode Azure Resource ID. Required. + :vartype dbNodeId: str + """ + + dbNodeId: Required[str] + """Exascale DbNode Azure Resource ID. Required.""" + + +class DbSystem(TrackedResource): + """DbSystem resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "DbSystemProperties" + :ivar zones: The availability zones. + :vartype zones: list[str] + """ + + properties: "DbSystemProperties" + """The resource-specific properties for this resource.""" + zones: list[str] + """The availability zones.""" + + +class DbSystemOptions(TypedDict, total=False): + """DbSystemOptions resource properties. + + :ivar storageManagement: The storage option used in DB system. ASM - Automatic storage + management, LVM - Logical Volume management. "LVM" + :vartype storageManagement: Union[str, "StorageManagementType"] + """ + + storageManagement: Union[str, "StorageManagementType"] + """The storage option used in DB system. ASM - Automatic storage management, LVM - Logical Volume + management. \"LVM\"""" + + +class DbSystemProperties(TypedDict, total=False): + """DbSystem resource model. + + :ivar provisioningState: dbSystem provisioning state. Known values are: "Succeeded", "Failed", + "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar ociUrl: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype ociUrl: str + :ivar resourceAnchorId: Azure Resource Anchor ID. Required. + :vartype resourceAnchorId: str + :ivar networkAnchorId: Azure Network Anchor ID. Required. + :vartype networkAnchorId: str + :ivar clusterName: The cluster name for Exadata and 2-node RAC virtual machine DB systems. The + cluster name must begin with an alphabetic character, and may contain hyphens (-). Underscores + (_) are not permitted. The cluster name can be no longer than 11 characters and is not case + sensitive. + :vartype clusterName: str + :ivar displayName: The user-friendly name for the DB system. The name does not have to be + unique. + :vartype displayName: str + :ivar initialDataStorageSizeInGb: Size in GB of the initial data volume that will be created + and attached to a virtual machine DB system. You can scale up storage after provisioning, as + needed. Note that the total storage size attached will be more than the amount you specify to + allow for REDO/RECO space and software volume. + :vartype initialDataStorageSizeInGb: int + :ivar dataStorageSizeInGbs: The data storage size, in gigabytes, that is currently available to + the DB system. Applies only for virtual machine DB systems. + :vartype dataStorageSizeInGbs: int + :ivar dbSystemOptions: The DB system options. + :vartype dbSystemOptions: "DbSystemOptions" + :ivar diskRedundancy: The type of redundancy configured for the DB system. NORMAL is 2-way + redundancy. HIGH is 3-way redundancy. Known values are: "High" and "Normal". + :vartype diskRedundancy: Union[str, "DiskRedundancyType"] + :ivar domain: The domain name for the DB system. + :vartype domain: str + :ivar gridImageOcid: The OCID of a grid infrastructure software image. This is a database + software image of the type GRID_IMAGE. + :vartype gridImageOcid: str + :ivar hostname: The hostname for the DB system. Required. + :vartype hostname: str + :ivar ocid: The OCID of the DB system. + :vartype ocid: str + :ivar licenseModel: The Oracle license model that applies to all the databases on the DB + system. The default is LicenseIncluded. Known values are: "LicenseIncluded" and + "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar lifecycleState: The current state of the DB system. Known values are: "Provisioning", + "Available", "Updating", "Terminating", "Terminated", "Failed", "Migrated", + "MaintenanceInProgress", "NeedsAttention", and "Upgrading". + :vartype lifecycleState: Union[str, "DbSystemLifecycleState"] + :ivar listenerPort: The port number configured for the listener on the DB system. + :vartype listenerPort: int + :ivar memorySizeInGbs: Memory allocated to the DB system, in gigabytes. + :vartype memorySizeInGbs: int + :ivar nodeCount: The number of nodes in the DB system. For RAC DB systems, the value is greater + than 1. + :vartype nodeCount: int + :ivar scanDnsName: The FQDN of the DNS record for the SCAN IP addresses that are associated + with the DB system. + :vartype scanDnsName: str + :ivar scanIps: The list of Single Client Access Name (SCAN) IP addresses associated with the DB + system. SCAN IP addresses are typically used for load balancing and are not assigned to any + interface. Oracle Clusterware directs the requests to the appropriate nodes in the cluster. + Note: For a single-node DB system, this list is empty. + :vartype scanIps: list[str] + :ivar shape: The shape of the DB system. The shape determines resources to allocate to the DB + system. For virtual machine shapes, the number of CPU cores and memory. For bare metal and + Exadata shapes, the number of CPU cores, storage, and memory. Required. + :vartype shape: str + :ivar sshPublicKeys: The public key portion of one or more key pairs used for SSH access to the + DB system. Required. + :vartype sshPublicKeys: list[str] + :ivar storageVolumePerformanceMode: The block storage volume performance level. Valid values + are Balanced and HighPerformance. See `Block Volume Performance + `_ for more information. Known values are: + "Balanced" and "HighPerformance". + :vartype storageVolumePerformanceMode: Union[str, "StorageVolumePerformanceMode"] + :ivar timeZone: The time zone of the DB system, e.g., UTC, to set the timeZone as UTC. + :vartype timeZone: str + :ivar version: The Oracle Database version of the DB system. + :vartype version: str + :ivar computeModel: The compute model for Base Database Service. This is required if using the + ``computeCount`` parameter. If using ``cpuCoreCount`` then it is an error to specify + ``computeModel`` to a non-null value. The ECPU compute model is the recommended model, and the + OCPU compute model is legacy. Known values are: "ECPU" and "OCPU". + :vartype computeModel: Union[str, "ComputeModel"] + :ivar computeCount: The number of compute servers for the DB system. + :vartype computeCount: int + :ivar dataCollectionOptions: Indicates user preferences for the various diagnostic collection + options for the Base DB. + :vartype dataCollectionOptions: "DataCollectionOptions" + :ivar characterSet: The character set for the DB system. The default is AL32UTF8. + :vartype characterSet: str + :ivar ncharacterSet: The national character set for the DB system. The default is AL16UTF16. + :vartype ncharacterSet: str + :ivar source: The source of the database for creating a new database. Required. for creating a + new database. + :vartype source: Literal[DbSystemSourceType.NONE] + :ivar databaseEdition: The Oracle Database Edition that applies to all the databases on the DB + system. Exadata DB systems and 2-node RAC DB systems require + EnterpriseEditionExtremePerformance. Required. Known values are: "StandardEdition", + "EnterpriseEdition", "EnterpriseEditionHighPerformance", "EnterpriseEditionExtreme", and + "EnterpriseEditionDeveloper". + :vartype databaseEdition: Union[str, "DbSystemDatabaseEditionType"] + :ivar adminPassword: A strong password for SYS, SYSTEM, and PDB Admin. The password must be at + least nine characters and contain at least two uppercase, two lowercase, two numbers, and two + special characters. The special characters must be _, #, or -. + :vartype adminPassword: str + :ivar dbVersion: A valid Oracle Database version. For a list of supported versions, use the + ListDbVersions operation. Required. + :vartype dbVersion: str + :ivar pdbName: The name of the pluggable database. The name must begin with an alphabetic + character and can contain a maximum of thirty alphanumeric characters. Special characters are + not permitted. Pluggable database should not be same as database name. + :vartype pdbName: str + """ + + provisioningState: Union[str, "AzureResourceProvisioningState"] + """dbSystem provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and + \"Provisioning\".""" + ociUrl: str + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + resourceAnchorId: Required[str] + """Azure Resource Anchor ID. Required.""" + networkAnchorId: Required[str] + """Azure Network Anchor ID. Required.""" + clusterName: str + """The cluster name for Exadata and 2-node RAC virtual machine DB systems. The cluster name must + begin with an alphabetic character, and may contain hyphens (-). Underscores (_) are not + permitted. The cluster name can be no longer than 11 characters and is not case sensitive.""" + displayName: str + """The user-friendly name for the DB system. The name does not have to be unique.""" + initialDataStorageSizeInGb: int + """Size in GB of the initial data volume that will be created and attached to a virtual machine DB + system. You can scale up storage after provisioning, as needed. Note that the total storage + size attached will be more than the amount you specify to allow for REDO/RECO space and + software volume.""" + dataStorageSizeInGbs: int + """The data storage size, in gigabytes, that is currently available to the DB system. Applies only + for virtual machine DB systems.""" + dbSystemOptions: "DbSystemOptions" + """The DB system options.""" + diskRedundancy: Union[str, "DiskRedundancyType"] + """The type of redundancy configured for the DB system. NORMAL is 2-way redundancy. HIGH is 3-way + redundancy. Known values are: \"High\" and \"Normal\".""" + domain: str + """The domain name for the DB system.""" + gridImageOcid: str + """The OCID of a grid infrastructure software image. This is a database software image of the type + GRID_IMAGE.""" + hostname: Required[str] + """The hostname for the DB system. Required.""" + ocid: str + """The OCID of the DB system.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to all the databases on the DB system. The default is + LicenseIncluded. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + lifecycleState: Union[str, "DbSystemLifecycleState"] + """The current state of the DB system. Known values are: \"Provisioning\", \"Available\", + \"Updating\", \"Terminating\", \"Terminated\", \"Failed\", \"Migrated\", + \"MaintenanceInProgress\", \"NeedsAttention\", and \"Upgrading\".""" + listenerPort: int + """The port number configured for the listener on the DB system.""" + memorySizeInGbs: int + """Memory allocated to the DB system, in gigabytes.""" + nodeCount: int + """The number of nodes in the DB system. For RAC DB systems, the value is greater than 1.""" + scanDnsName: str + """The FQDN of the DNS record for the SCAN IP addresses that are associated with the DB system.""" + scanIps: list[str] + """The list of Single Client Access Name (SCAN) IP addresses associated with the DB system. SCAN + IP addresses are typically used for load balancing and are not assigned to any interface. + Oracle Clusterware directs the requests to the appropriate nodes in the cluster. Note: For a + single-node DB system, this list is empty.""" + shape: Required[str] + """The shape of the DB system. The shape determines resources to allocate to the DB system. For + virtual machine shapes, the number of CPU cores and memory. For bare metal and Exadata shapes, + the number of CPU cores, storage, and memory. Required.""" + sshPublicKeys: Required[list[str]] + """The public key portion of one or more key pairs used for SSH access to the DB system. Required.""" + storageVolumePerformanceMode: Union[str, "StorageVolumePerformanceMode"] + """The block storage volume performance level. Valid values are Balanced and HighPerformance. See + `Block Volume Performance `_ for more + information. Known values are: \"Balanced\" and \"HighPerformance\".""" + timeZone: str + """The time zone of the DB system, e.g., UTC, to set the timeZone as UTC.""" + version: str + """The Oracle Database version of the DB system.""" + computeModel: Union[str, "ComputeModel"] + """The compute model for Base Database Service. This is required if using the ``computeCount`` + parameter. If using ``cpuCoreCount`` then it is an error to specify ``computeModel`` to a + non-null value. The ECPU compute model is the recommended model, and the OCPU compute model is + legacy. Known values are: \"ECPU\" and \"OCPU\".""" + computeCount: int + """The number of compute servers for the DB system.""" + dataCollectionOptions: "DataCollectionOptions" + """Indicates user preferences for the various diagnostic collection options for the Base DB.""" + characterSet: str + """The character set for the DB system. The default is AL32UTF8.""" + ncharacterSet: str + """The national character set for the DB system. The default is AL16UTF16.""" + source: Required[Literal[DbSystemSourceType.NONE]] + """The source of the database for creating a new database. Required. for creating a new database.""" + databaseEdition: Required[Union[str, "DbSystemDatabaseEditionType"]] + """The Oracle Database Edition that applies to all the databases on the DB system. Exadata DB + systems and 2-node RAC DB systems require EnterpriseEditionExtremePerformance. Required. Known + values are: \"StandardEdition\", \"EnterpriseEdition\", \"EnterpriseEditionHighPerformance\", + \"EnterpriseEditionExtreme\", and \"EnterpriseEditionDeveloper\".""" + adminPassword: str + """A strong password for SYS, SYSTEM, and PDB Admin. The password must be at least nine characters + and contain at least two uppercase, two lowercase, two numbers, and two special characters. The + special characters must be _, #, or -.""" + dbVersion: Required[str] + """A valid Oracle Database version. For a list of supported versions, use the ListDbVersions + operation. Required.""" + pdbName: str + """The name of the pluggable database. The name must begin with an alphabetic character and can + contain a maximum of thirty alphanumeric characters. Special characters are not permitted. + Pluggable database should not be same as database name.""" + + +class DbSystemUpdate(TypedDict, total=False): + """The type used for update operations of the DbSystem. + + :ivar zones: The availability zones. + :vartype zones: list[str] + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "DbSystemUpdateProperties" + """ + + zones: list[str] + """The availability zones.""" + tags: dict[str, str] + """Resource tags.""" + properties: "DbSystemUpdateProperties" + """The resource-specific properties for this resource.""" + + +class DbSystemUpdateProperties(TypedDict, total=False): + """The updatable properties of the DbSystem. + + :ivar source: The source of the database for creating a new database. for creating a new + database. + :vartype source: Literal[DbSystemSourceType.NONE] + """ + + source: Literal[DbSystemSourceType.NONE] + """The source of the database for creating a new database. for creating a new database.""" + + +class DefinedFileSystemConfiguration(TypedDict, total=False): + """Predefined configurations for the file system. + + :ivar isBackupPartition: Checks if the data can be backed up. + :vartype isBackupPartition: bool + :ivar isResizable: Checks if the mount path is resizable. + :vartype isResizable: bool + :ivar minSizeGb: Minimum size of mount path in Gb. + :vartype minSizeGb: int + :ivar mountPoint: Mount path for the file system. + :vartype mountPoint: str + """ + + isBackupPartition: bool + """Checks if the data can be backed up.""" + isResizable: bool + """Checks if the mount path is resizable.""" + minSizeGb: int + """Minimum size of mount path in Gb.""" + mountPoint: str + """Mount path for the file system.""" + + +class DeploymentProperties(TypedDict, total=False): + """GoldenGate Deployment resource model. + + :ivar backupSchedule: Backup schedule. + :vartype backupSchedule: "BackupScheduleType" + :ivar compartment: OCI compartment. + :vartype compartment: str + :ivar ocid: The OCID of the deployment being referenced. + :vartype ocid: str + :ivar cpuCoreCount: The minimum number of OCPUs to be made available for this deployment. + :vartype cpuCoreCount: int + :ivar displayName: Display name. Required. + :vartype displayName: str + :ivar category: The deployment category. Known values are: "DataReplication", + "StreamAnalytics", and "DataTransforms". + :vartype category: Union[str, "CategoryType"] + :ivar deploymentType: The type of deployment. Known values are: "Ogg", "DatabaseOracle", + "BigData", "DatabaseMicrosoftSQLServer", "DatabaseMySQL", "DatabasePostGreSQL", + "DatabaseDB2ZOS", "DATABASE_DB2I", "GGSA", and "DataTransforms". + :vartype deploymentType: Union[str, "DeploymentType"] + :ivar deploymentUrl: HTTPS link to OCI resource exposed to Azure Customer via Azure Interface. + :vartype deploymentUrl: str + :ivar environmentType: Environment type. Known values are: "Production" and + "DevelopmentOrTesting". + :vartype environmentType: Union[str, "SetupType"] + :ivar isAutoScalingEnabled: Indicates if auto scaling is enabled for the deployment's CPU core + count. + :vartype isAutoScalingEnabled: bool + :ivar ingressIps: Connection IP address. + :vartype ingressIps: list[str] + :ivar isPublic: True if this object is publicly available. + :vartype isPublic: bool + :ivar licenseModel: The Oracle license model that applies to a Deployment. Known values are: + "LicenseIncluded" and "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar lifecycleDetails: Describes the object's current state in detail. + :vartype lifecycleDetails: str + :ivar lifecycleState: Possible lifecycle states. Known values are: "Creating", "Updating", + "Active", "InActive", "Deleting", "Deleted", "Failed", "Needs Attention", "In Progress", + "Canceling", "Canceled", "Succeeded", and "Waiting". + :vartype lifecycleState: Union[str, "DeploymentLifecycleState"] + :ivar timeCreated: The date time the resource was created in OCI. + :vartype timeCreated: str + :ivar timeUpdated: The date time the resource was last updated in OCI. + :vartype timeUpdated: str + :ivar maintenanceConfiguration: Maintenance configuration. + :vartype maintenanceConfiguration: "MaintenanceConfigurationType" + :ivar maintenanceWindow: Maintenance window. + :vartype maintenanceWindow: "MaintenanceWindowType" + :ivar networkAnchorId: Azure network anchor ID. Required. + :vartype networkAnchorId: str + :ivar oggData: Deployment data for creating an OGG deployment. + :vartype oggData: "OggDeploymentDetails" + :ivar privateIpAddress: The private IP address of VCN representing the access point for the + associated endpoint service in the GoldenGate service VCN. + :vartype privateIpAddress: str + :ivar provisioningState: Deployment provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar resourceAnchorId: Corresponding Azure resource anchor ID. Required. + :vartype resourceAnchorId: str + :ivar storageUtilizationInBytes: Storage utilization in bytes. + :vartype storageUtilizationInBytes: int + :ivar timeZone: The time zone of the deployment, for example, UTC. + :vartype timeZone: str + :ivar version: The current version. + :vartype version: str + """ + + backupSchedule: "BackupScheduleType" + """Backup schedule.""" + compartment: str + """OCI compartment.""" + ocid: str + """The OCID of the deployment being referenced.""" + cpuCoreCount: int + """The minimum number of OCPUs to be made available for this deployment.""" + displayName: Required[str] + """Display name. Required.""" + category: Union[str, "CategoryType"] + """The deployment category. Known values are: \"DataReplication\", \"StreamAnalytics\", and + \"DataTransforms\".""" + deploymentType: Union[str, "DeploymentType"] + """The type of deployment. Known values are: \"Ogg\", \"DatabaseOracle\", \"BigData\", + \"DatabaseMicrosoftSQLServer\", \"DatabaseMySQL\", \"DatabasePostGreSQL\", \"DatabaseDB2ZOS\", + \"DATABASE_DB2I\", \"GGSA\", and \"DataTransforms\".""" + deploymentUrl: str + """HTTPS link to OCI resource exposed to Azure Customer via Azure Interface.""" + environmentType: Union[str, "SetupType"] + """Environment type. Known values are: \"Production\" and \"DevelopmentOrTesting\".""" + isAutoScalingEnabled: bool + """Indicates if auto scaling is enabled for the deployment's CPU core count.""" + ingressIps: list[str] + """Connection IP address.""" + isPublic: bool + """True if this object is publicly available.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to a Deployment. Known values are: \"LicenseIncluded\" + and \"BringYourOwnLicense\".""" + lifecycleDetails: str + """Describes the object's current state in detail.""" + lifecycleState: Union[str, "DeploymentLifecycleState"] + """Possible lifecycle states. Known values are: \"Creating\", \"Updating\", \"Active\", + \"InActive\", \"Deleting\", \"Deleted\", \"Failed\", \"Needs Attention\", \"In Progress\", + \"Canceling\", \"Canceled\", \"Succeeded\", and \"Waiting\".""" + timeCreated: str + """The date time the resource was created in OCI.""" + timeUpdated: str + """The date time the resource was last updated in OCI.""" + maintenanceConfiguration: "MaintenanceConfigurationType" + """Maintenance configuration.""" + maintenanceWindow: "MaintenanceWindowType" + """Maintenance window.""" + networkAnchorId: Required[str] + """Azure network anchor ID. Required.""" + oggData: "OggDeploymentDetails" + """Deployment data for creating an OGG deployment.""" + privateIpAddress: str + """The private IP address of VCN representing the access point for the associated endpoint service + in the GoldenGate service VCN.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Deployment provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and + \"Provisioning\".""" + resourceAnchorId: Required[str] + """Corresponding Azure resource anchor ID. Required.""" + storageUtilizationInBytes: int + """Storage utilization in bytes.""" + timeZone: str + """The time zone of the deployment, for example, UTC.""" + version: str + """The current version.""" + + +class DisasterRecoveryConfigurationDetails(TypedDict, total=False): + """Configurations of a Disaster Recovery Details. + + :ivar disasterRecoveryType: Indicates the disaster recovery (DR) type of the Autonomous + Database Serverless instance. Autonomous Data Guard (ADG) DR type provides business critical DR + with a faster recovery time objective (RTO) during failover or switchover. Backup-based DR type + provides lower cost DR with a slower RTO during failover or switchover. Known values are: "Adg" + and "BackupBased". + :vartype disasterRecoveryType: Union[str, "DisasterRecoveryType"] + :ivar timeSnapshotStandbyEnabledTill: Time and date stored as an RFC 3339 formatted timestamp + string. For example, 2022-01-01T12:00:00.000Z would set a limit for the snapshot standby to be + converted back to a cross-region standby database. + :vartype timeSnapshotStandbyEnabledTill: str + :ivar isSnapshotStandby: Indicates if user wants to convert to a snapshot standby. For example, + true would set a standby database to snapshot standby database. False would set a snapshot + standby database back to regular standby database. + :vartype isSnapshotStandby: bool + :ivar isReplicateAutomaticBackups: If true, 7 days worth of backups are replicated across + regions for Cross-Region ADB or Backup-Based DR between Primary and Standby. If false, the + backups taken on the Primary are not replicated to the Standby database. + :vartype isReplicateAutomaticBackups: bool + """ + + disasterRecoveryType: Union[str, "DisasterRecoveryType"] + """Indicates the disaster recovery (DR) type of the Autonomous Database Serverless instance. + Autonomous Data Guard (ADG) DR type provides business critical DR with a faster recovery time + objective (RTO) during failover or switchover. Backup-based DR type provides lower cost DR with + a slower RTO during failover or switchover. Known values are: \"Adg\" and \"BackupBased\".""" + timeSnapshotStandbyEnabledTill: str + """Time and date stored as an RFC 3339 formatted timestamp string. For example, + 2022-01-01T12:00:00.000Z would set a limit for the snapshot standby to be converted back to a + cross-region standby database.""" + isSnapshotStandby: bool + """Indicates if user wants to convert to a snapshot standby. For example, true would set a standby + database to snapshot standby database. False would set a snapshot standby database back to + regular standby database.""" + isReplicateAutomaticBackups: bool + """If true, 7 days worth of backups are replicated across regions for Cross-Region ADB or + Backup-Based DR between Primary and Standby. If false, the backups taken on the Primary are not + replicated to the Standby database.""" + + +class DnsForwardingRule(TypedDict, total=False): + """DNS forwarding rule properties. + + :ivar domainNames: Comma-separated domain names. Required. + :vartype domainNames: str + :ivar forwardingIpAddress: Forwarding ip address. Required. + :vartype forwardingIpAddress: str + """ + + domainNames: Required[str] + """Comma-separated domain names. Required.""" + forwardingIpAddress: Required[str] + """Forwarding ip address. Required.""" + + +class EstimatedPatchingTime(TypedDict, total=False): + """The estimated total time required in minutes for all patching operations (database server, + storage server, and network switch patching). + + :ivar estimatedDbServerPatchingTime: The estimated time required in minutes for database server + patching. + :vartype estimatedDbServerPatchingTime: int + :ivar estimatedNetworkSwitchesPatchingTime: The estimated time required in minutes for network + switch patching. + :vartype estimatedNetworkSwitchesPatchingTime: int + :ivar estimatedStorageServerPatchingTime: The estimated time required in minutes for storage + server patching. + :vartype estimatedStorageServerPatchingTime: int + :ivar totalEstimatedPatchingTime: The estimated total time required in minutes for all patching + operations. + :vartype totalEstimatedPatchingTime: int + """ + + estimatedDbServerPatchingTime: int + """The estimated time required in minutes for database server patching.""" + estimatedNetworkSwitchesPatchingTime: int + """The estimated time required in minutes for network switch patching.""" + estimatedStorageServerPatchingTime: int + """The estimated time required in minutes for storage server patching.""" + totalEstimatedPatchingTime: int + """The estimated total time required in minutes for all patching operations.""" + + +class ExadataIormConfig(TypedDict, total=False): + """ExadataIormConfig for cloud vm cluster. + + :ivar dbPlans: An array of IORM settings for all the database in the Exadata DB system. + :vartype dbPlans: list["DbIormConfig"] + :ivar lifecycleDetails: Additional information about the current lifecycleState. + :vartype lifecycleDetails: str + :ivar lifecycleState: The current state of IORM configuration for the Exadata DB system. Known + values are: "BootStrapping", "Enabled", "Disabled", "Updating", and "Failed". + :vartype lifecycleState: Union[str, "IormLifecycleState"] + :ivar objective: The current value for the IORM objective. The default is AUTO. Known values + are: "LowLatency", "HighThroughput", "Balanced", "Auto", and "Basic". + :vartype objective: Union[str, "Objective"] + """ + + dbPlans: list["DbIormConfig"] + """An array of IORM settings for all the database in the Exadata DB system.""" + lifecycleDetails: str + """Additional information about the current lifecycleState.""" + lifecycleState: Union[str, "IormLifecycleState"] + """The current state of IORM configuration for the Exadata DB system. Known values are: + \"BootStrapping\", \"Enabled\", \"Disabled\", \"Updating\", and \"Failed\".""" + objective: Union[str, "Objective"] + """The current value for the IORM objective. The default is AUTO. Known values are: + \"LowLatency\", \"HighThroughput\", \"Balanced\", \"Auto\", and \"Basic\".""" + + +class ExadbVmCluster(TrackedResource): + """ExadbVmCluster resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "ExadbVmClusterProperties" + :ivar zones: The availability zones. + :vartype zones: list[str] + """ + + properties: "ExadbVmClusterProperties" + """The resource-specific properties for this resource.""" + zones: list[str] + """The availability zones.""" + + +class ExadbVmClusterProperties(TypedDict, total=False): + """ExadbVmCluster resource model. + + :ivar ocid: ExadbVmCluster ocid. + :vartype ocid: str + :ivar clusterName: The cluster name for Exadata VM cluster on Exascale Infrastructure. The + cluster name must begin with an alphabetic character, and may contain hyphens (-). Underscores + (_) are not permitted. The cluster name can be no longer than 11 characters and is not case + sensitive. + :vartype clusterName: str + :ivar backupSubnetCidr: Client OCI backup subnet CIDR, default is 192.168.252.0/22. + :vartype backupSubnetCidr: str + :ivar nsgUrl: HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure + Interface. + :vartype nsgUrl: str + :ivar provisioningState: Exadata VM cluster on Exascale Infrastructure provisioning state. + Known values are: "Succeeded", "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: CloudVmCluster lifecycle state. Known values are: "Provisioning", + "Available", "Updating", "Terminating", "Terminated", "MaintenanceInProgress", and "Failed". + :vartype lifecycleState: Union[str, "ExadbVmClusterLifecycleState"] + :ivar vnetId: VNET for network connectivity. Required. + :vartype vnetId: str + :ivar subnetId: Client subnet. Required. + :vartype subnetId: str + :ivar dataCollectionOptions: Indicates user preferences for the various diagnostic collection + options for the VM cluster/Cloud VM cluster/VMBM DBCS. + :vartype dataCollectionOptions: "DataCollectionOptions" + :ivar displayName: Display Name. Required. + :vartype displayName: str + :ivar domain: A domain name used for the Exadata VM cluster on Exascale Infrastructure. + :vartype domain: str + :ivar enabledEcpuCount: The number of ECPUs to enable for an Exadata VM cluster on Exascale + Infrastructure. Required. + :vartype enabledEcpuCount: int + :ivar exascaleDbStorageVaultId: The Azure Resource ID of the Exadata Database Storage Vault. + Required. + :vartype exascaleDbStorageVaultId: str + :ivar gridImageOcid: Grid Setup will be done using this Grid Image OCID. Can be obtained using + giMinorVersions API. + :vartype gridImageOcid: str + :ivar gridImageType: The type of Grid Image. Known values are: "ReleaseUpdate" and + "CustomImage". + :vartype gridImageType: Union[str, "GridImageType"] + :ivar giVersion: Oracle Grid Infrastructure (GI) software version. + :vartype giVersion: str + :ivar hostname: The hostname for the Exadata VM cluster on Exascale Infrastructure. Required. + :vartype hostname: str + :ivar licenseModel: The Oracle license model that applies to the Exadata VM cluster on Exascale + Infrastructure. The default is LICENSE_INCLUDED. Known values are: "LicenseIncluded" and + "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar memorySizeInGbs: The memory that you want to be allocated in GBs. Memory is calculated + based on 11 GB per VM core reserved. + :vartype memorySizeInGbs: int + :ivar nodeCount: The number of nodes in the Exadata VM cluster on Exascale Infrastructure. + Required. + :vartype nodeCount: int + :ivar nsgCidrs: CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision + the VM Cluster will be added by default. + :vartype nsgCidrs: list["NsgCidr"] + :ivar zoneOcid: The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is + associated with. + :vartype zoneOcid: str + :ivar privateZoneOcid: The OCID of the zone the Exadata VM cluster on Exascale Infrastructure + is associated with. + :vartype privateZoneOcid: str + :ivar scanListenerPortTcp: The TCP Single Client Access Name (SCAN) port. The default port is + 1521. + :vartype scanListenerPortTcp: int + :ivar scanListenerPortTcpSsl: The TCPS Single Client Access Name (SCAN) port. The default port + is 2484. + :vartype scanListenerPortTcpSsl: int + :ivar listenerPort: The port number configured for the listener on the Exadata VM cluster on + Exascale Infrastructure. + :vartype listenerPort: int + :ivar shape: The shape of the Exadata VM cluster on Exascale Infrastructure resource. Required. + :vartype shape: str + :ivar sshPublicKeys: The public key portion of one or more key pairs used for SSH access to the + Exadata VM cluster on Exascale Infrastructure. Required. + :vartype sshPublicKeys: list[str] + :ivar systemVersion: Operating system version of the image. + :vartype systemVersion: str + :ivar timeZone: The time zone of the Exadata VM cluster on Exascale Infrastructure. For + details, see `Exadata Infrastructure Time Zones `_. + :vartype timeZone: str + :ivar totalEcpuCount: The number of Total ECPUs for an Exadata VM cluster on Exascale + Infrastructure. Required. + :vartype totalEcpuCount: int + :ivar vmFileSystemStorage: Filesystem storage details. Required. + :vartype vmFileSystemStorage: "ExadbVmClusterStorageDetails" + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar scanDnsName: The FQDN of the DNS record for the SCAN IP addresses that are associated + with the Exadata VM cluster on Exascale Infrastructure. + :vartype scanDnsName: str + :ivar scanIpIds: The Single Client Access Name (SCAN) IP addresses associated with the Exadata + VM cluster on Exascale Infrastructure. SCAN IP addresses are typically used for load balancing + and are not assigned to any interface. Oracle Clusterware directs the requests to the + appropriate nodes in the cluster. **Note:** For a single-node DB system, this list is empty. + :vartype scanIpIds: list[str] + :ivar scanDnsRecordId: The OCID of the DNS record for the SCAN IP addresses that are associated + with the Exadata VM cluster on Exascale Infrastructure. + :vartype scanDnsRecordId: str + :ivar snapshotFileSystemStorage: Snapshot filesystem storage details. + :vartype snapshotFileSystemStorage: "ExadbVmClusterStorageDetails" + :ivar totalFileSystemStorage: Total file system storage details. + :vartype totalFileSystemStorage: "ExadbVmClusterStorageDetails" + :ivar vipIds: The virtual IP (VIP) addresses associated with the Exadata VM cluster on Exascale + Infrastructure. The Cluster Ready Services (CRS) creates and maintains one VIP address for each + node in the Exadata Cloud Service instance to enable failover. If one node fails, the VIP is + reassigned to another active node in the cluster. **Note:** For a single-node DB system, this + list is empty. + :vartype vipIds: list[str] + :ivar ociUrl: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype ociUrl: str + :ivar iormConfigCache: iormConfigCache details for Exadata VM cluster on Exascale + Infrastructure. + :vartype iormConfigCache: "ExadataIormConfig" + :ivar backupSubnetOcid: Cluster backup subnet ocid. + :vartype backupSubnetOcid: str + :ivar subnetOcid: Cluster subnet ocid. + :vartype subnetOcid: str + :ivar shapeAttribute: The type of Exascale storage used for Exadata VM cluster. Known values + are: "SMART_STORAGE" and "BLOCK_STORAGE". + :vartype shapeAttribute: Union[str, "ShapeAttribute"] + """ + + ocid: str + """ExadbVmCluster ocid.""" + clusterName: str + """The cluster name for Exadata VM cluster on Exascale Infrastructure. The cluster name must begin + with an alphabetic character, and may contain hyphens (-). Underscores (_) are not permitted. + The cluster name can be no longer than 11 characters and is not case sensitive.""" + backupSubnetCidr: str + """Client OCI backup subnet CIDR, default is 192.168.252.0/22.""" + nsgUrl: str + """HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure Interface.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Exadata VM cluster on Exascale Infrastructure provisioning state. Known values are: + \"Succeeded\", \"Failed\", \"Canceled\", and \"Provisioning\".""" + lifecycleState: Union[str, "ExadbVmClusterLifecycleState"] + """CloudVmCluster lifecycle state. Known values are: \"Provisioning\", \"Available\", + \"Updating\", \"Terminating\", \"Terminated\", \"MaintenanceInProgress\", and \"Failed\".""" + vnetId: Required[str] + """VNET for network connectivity. Required.""" + subnetId: Required[str] + """Client subnet. Required.""" + dataCollectionOptions: "DataCollectionOptions" + """Indicates user preferences for the various diagnostic collection options for the VM + cluster/Cloud VM cluster/VMBM DBCS.""" + displayName: Required[str] + """Display Name. Required.""" + domain: str + """A domain name used for the Exadata VM cluster on Exascale Infrastructure.""" + enabledEcpuCount: Required[int] + """The number of ECPUs to enable for an Exadata VM cluster on Exascale Infrastructure. Required.""" + exascaleDbStorageVaultId: Required[str] + """The Azure Resource ID of the Exadata Database Storage Vault. Required.""" + gridImageOcid: str + """Grid Setup will be done using this Grid Image OCID. Can be obtained using giMinorVersions API.""" + gridImageType: Union[str, "GridImageType"] + """The type of Grid Image. Known values are: \"ReleaseUpdate\" and \"CustomImage\".""" + giVersion: str + """Oracle Grid Infrastructure (GI) software version.""" + hostname: Required[str] + """The hostname for the Exadata VM cluster on Exascale Infrastructure. Required.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to the Exadata VM cluster on Exascale Infrastructure. The + default is LICENSE_INCLUDED. Known values are: \"LicenseIncluded\" and \"BringYourOwnLicense\".""" + memorySizeInGbs: int + """The memory that you want to be allocated in GBs. Memory is calculated based on 11 GB per VM + core reserved.""" + nodeCount: Required[int] + """The number of nodes in the Exadata VM cluster on Exascale Infrastructure. Required.""" + nsgCidrs: list["NsgCidr"] + """CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision the VM Cluster + will be added by default.""" + zoneOcid: str + """The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is associated with.""" + privateZoneOcid: str + """The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is associated with.""" + scanListenerPortTcp: int + """The TCP Single Client Access Name (SCAN) port. The default port is 1521.""" + scanListenerPortTcpSsl: int + """The TCPS Single Client Access Name (SCAN) port. The default port is 2484.""" + listenerPort: int + """The port number configured for the listener on the Exadata VM cluster on Exascale + Infrastructure.""" + shape: Required[str] + """The shape of the Exadata VM cluster on Exascale Infrastructure resource. Required.""" + sshPublicKeys: Required[list[str]] + """The public key portion of one or more key pairs used for SSH access to the Exadata VM cluster + on Exascale Infrastructure. Required.""" + systemVersion: str + """Operating system version of the image.""" + timeZone: str + """The time zone of the Exadata VM cluster on Exascale Infrastructure. For details, see `Exadata + Infrastructure Time Zones `_.""" + totalEcpuCount: Required[int] + """The number of Total ECPUs for an Exadata VM cluster on Exascale Infrastructure. Required.""" + vmFileSystemStorage: Required["ExadbVmClusterStorageDetails"] + """Filesystem storage details. Required.""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + scanDnsName: str + """The FQDN of the DNS record for the SCAN IP addresses that are associated with the Exadata VM + cluster on Exascale Infrastructure.""" + scanIpIds: list[str] + """The Single Client Access Name (SCAN) IP addresses associated with the Exadata VM cluster on + Exascale Infrastructure. SCAN IP addresses are typically used for load balancing and are not + assigned to any interface. Oracle Clusterware directs the requests to the appropriate nodes in + the cluster. **Note:** For a single-node DB system, this list is empty.""" + scanDnsRecordId: str + """The OCID of the DNS record for the SCAN IP addresses that are associated with the Exadata VM + cluster on Exascale Infrastructure.""" + snapshotFileSystemStorage: "ExadbVmClusterStorageDetails" + """Snapshot filesystem storage details.""" + totalFileSystemStorage: "ExadbVmClusterStorageDetails" + """Total file system storage details.""" + vipIds: list[str] + """The virtual IP (VIP) addresses associated with the Exadata VM cluster on Exascale + Infrastructure. The Cluster Ready Services (CRS) creates and maintains one VIP address for each + node in the Exadata Cloud Service instance to enable failover. If one node fails, the VIP is + reassigned to another active node in the cluster. **Note:** For a single-node DB system, this + list is empty.""" + ociUrl: str + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + iormConfigCache: "ExadataIormConfig" + """iormConfigCache details for Exadata VM cluster on Exascale Infrastructure.""" + backupSubnetOcid: str + """Cluster backup subnet ocid.""" + subnetOcid: str + """Cluster subnet ocid.""" + shapeAttribute: Union[str, "ShapeAttribute"] + """The type of Exascale storage used for Exadata VM cluster. Known values are: \"SMART_STORAGE\" + and \"BLOCK_STORAGE\".""" + + +class ExadbVmClusterStorageDetails(TypedDict, total=False): + """Storage Details on the Exadata VM cluster. + + :ivar totalSizeInGbs: Total Capacity. Required. + :vartype totalSizeInGbs: int + """ + + totalSizeInGbs: Required[int] + """Total Capacity. Required.""" + + +class ExadbVmClusterUpdate(TypedDict, total=False): + """The type used for update operations of the ExadbVmCluster. + + :ivar zones: The availability zones. + :vartype zones: list[str] + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "ExadbVmClusterUpdateProperties" + """ + + zones: list[str] + """The availability zones.""" + tags: dict[str, str] + """Resource tags.""" + properties: "ExadbVmClusterUpdateProperties" + """The resource-specific properties for this resource.""" + + +class ExadbVmClusterUpdateProperties(TypedDict, total=False): + """The updatable properties of the ExadbVmCluster. + + :ivar nodeCount: The number of nodes in the Exadata VM cluster on Exascale Infrastructure. + :vartype nodeCount: int + """ + + nodeCount: int + """The number of nodes in the Exadata VM cluster on Exascale Infrastructure.""" + + +class ExascaleConfigDetails(TypedDict, total=False): + """The exascale config response details for the cloud Exadata infrastructure. + + :ivar totalStorageInGbs: Storage size needed for Exascale in GBs. Required. + :vartype totalStorageInGbs: int + :ivar availableStorageInGbs: Available storage size for Exascale in GBs. + :vartype availableStorageInGbs: int + """ + + totalStorageInGbs: Required[int] + """Storage size needed for Exascale in GBs. Required.""" + availableStorageInGbs: int + """Available storage size for Exascale in GBs.""" + + +class ExascaleDbStorageDetails(TypedDict, total=False): + """Exadata Database Storage Details. + + :ivar availableSizeInGbs: Available Capacity. + :vartype availableSizeInGbs: int + :ivar totalSizeInGbs: Total Capacity. + :vartype totalSizeInGbs: int + """ + + availableSizeInGbs: int + """Available Capacity.""" + totalSizeInGbs: int + """Total Capacity.""" + + +class ExascaleDbStorageInputDetails(TypedDict, total=False): + """Create exadata Database Storage Details model. + + :ivar totalSizeInGbs: Total Capacity. Required. + :vartype totalSizeInGbs: int + """ + + totalSizeInGbs: Required[int] + """Total Capacity. Required.""" + + +class ExascaleDbStorageVault(TrackedResource): + """ExascaleDbStorageVault resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "ExascaleDbStorageVaultProperties" + :ivar zones: The availability zones. + :vartype zones: list[str] + """ + + properties: "ExascaleDbStorageVaultProperties" + """The resource-specific properties for this resource.""" + zones: list[str] + """The availability zones.""" + + +class ExascaleDbStorageVaultProperties(TypedDict, total=False): + """ExascaleDbStorageVault resource model. + + :ivar additionalFlashCacheInPercent: The size of additional Flash Cache in percentage of High + Capacity database storage. + :vartype additionalFlashCacheInPercent: int + :ivar description: Exadata Database Storage Vault description. + :vartype description: str + :ivar displayName: The user-friendly name for the Exadata Database Storage Vault. The name does + not need to be unique. Required. + :vartype displayName: str + :ivar highCapacityDatabaseStorageInput: Create exadata Database Storage Details. Required. + :vartype highCapacityDatabaseStorageInput: "ExascaleDbStorageInputDetails" + :ivar highCapacityDatabaseStorage: Response exadata Database Storage Details. + :vartype highCapacityDatabaseStorage: "ExascaleDbStorageDetails" + :ivar timeZone: The time zone that you want to use for the Exadata Database Storage Vault. + :vartype timeZone: str + :ivar provisioningState: Exadata Database Storage Vault provisioning state. Known values are: + "Succeeded", "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: Exadata Database Storage Vault lifecycle state. Known values are: + "Provisioning", "Available", "Updating", "Terminating", "Terminated", and "Failed". + :vartype lifecycleState: Union[str, "ExascaleDbStorageVaultLifecycleState"] + :ivar lifecycleDetails: Additional information about the current lifecycle state. + :vartype lifecycleDetails: str + :ivar vmClusterCount: The number of Exadata VM clusters used the Exadata Database Storage + Vault. + :vartype vmClusterCount: int + :ivar ocid: The OCID of the Exadata Database Storage Vault. + :vartype ocid: str + :ivar ociUrl: HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + :vartype ociUrl: str + :ivar exadataInfrastructureId: Cloud Exadata infrastructure ID. + :vartype exadataInfrastructureId: str + :ivar attachedShapeAttributes: The shapeAttribute of the Exadata VM cluster(s) associated with + the Exadata Database Storage Vault. + :vartype attachedShapeAttributes: list[Union[str, "ShapeAttribute"]] + :ivar isAutoscaleEnabled: Indicates if autoscale feature is enabled for the Storage Vault. The + default value is: false. + :vartype isAutoscaleEnabled: bool + :ivar autoscaleLimitInGbs: Maximum limit storage size in gigabytes, that is applicable for the + Database Storage Vault. + :vartype autoscaleLimitInGbs: int + """ + + additionalFlashCacheInPercent: int + """The size of additional Flash Cache in percentage of High Capacity database storage.""" + description: str + """Exadata Database Storage Vault description.""" + displayName: Required[str] + """The user-friendly name for the Exadata Database Storage Vault. The name does not need to be + unique. Required.""" + highCapacityDatabaseStorageInput: Required["ExascaleDbStorageInputDetails"] + """Create exadata Database Storage Details. Required.""" + highCapacityDatabaseStorage: "ExascaleDbStorageDetails" + """Response exadata Database Storage Details.""" + timeZone: str + """The time zone that you want to use for the Exadata Database Storage Vault.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Exadata Database Storage Vault provisioning state. Known values are: \"Succeeded\", \"Failed\", + \"Canceled\", and \"Provisioning\".""" + lifecycleState: Union[str, "ExascaleDbStorageVaultLifecycleState"] + """Exadata Database Storage Vault lifecycle state. Known values are: \"Provisioning\", + \"Available\", \"Updating\", \"Terminating\", \"Terminated\", and \"Failed\".""" + lifecycleDetails: str + """Additional information about the current lifecycle state.""" + vmClusterCount: int + """The number of Exadata VM clusters used the Exadata Database Storage Vault.""" + ocid: str + """The OCID of the Exadata Database Storage Vault.""" + ociUrl: str + """HTTPS link to OCI resources exposed to Azure Customer via Azure Interface.""" + exadataInfrastructureId: str + """Cloud Exadata infrastructure ID.""" + attachedShapeAttributes: list[Union[str, "ShapeAttribute"]] + """The shapeAttribute of the Exadata VM cluster(s) associated with the Exadata Database Storage + Vault.""" + isAutoscaleEnabled: bool + """Indicates if autoscale feature is enabled for the Storage Vault. The default value is: false.""" + autoscaleLimitInGbs: int + """Maximum limit storage size in gigabytes, that is applicable for the Database Storage Vault.""" + + +class ExascaleDbStorageVaultTagsUpdate(TypedDict, total=False): + """The type used for updating tags in ExascaleDbStorageVault resources. + + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + """ + + tags: dict[str, str] + """Resource tags.""" + + +class FileSystemConfigurationDetails(TypedDict, total=False): + """File configuration options. + + :ivar mountPoint: Mount path. + :vartype mountPoint: str + :ivar fileSystemSizeGb: Size of the VM. + :vartype fileSystemSizeGb: int + """ + + mountPoint: str + """Mount path.""" + fileSystemSizeGb: int + """Size of the VM.""" + + +class GenerateAutonomousDatabaseWalletDetails(TypedDict, total=False): + """Autonomous Database Generate Wallet resource model. + + :ivar generateType: The type of wallet to generate. Known values are: "Single" and "All". + :vartype generateType: Union[str, "GenerateType"] + :ivar isRegional: True when requesting regional connection strings in PDB connect info, + applicable to cross-region DG only. + :vartype isRegional: bool + :ivar password: The password to encrypt the keys inside the wallet. Required. + :vartype password: str + """ + + generateType: Union[str, "GenerateType"] + """The type of wallet to generate. Known values are: \"Single\" and \"All\".""" + isRegional: bool + """True when requesting regional connection strings in PDB connect info, applicable to + cross-region DG only.""" + password: Required[str] + """The password to encrypt the keys inside the wallet. Required.""" + + +class GoldenGateConnection(TrackedResource): + """GoldenGate Connection resource model. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "ConnectionBaseProperties" + :ivar zones: The availability zones. + :vartype zones: list[str] + """ + + properties: "ConnectionBaseProperties" + """The resource-specific properties for this resource.""" + zones: list[str] + """The availability zones.""" + + +class GoldenGateConnectionUpdate(TypedDict, total=False): + """The type used for update operations of the GoldenGateConnection. + + :ivar zones: The availability zones. + :vartype zones: list[str] + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "GoldenGateConnectionUpdateProperties" + """ + + zones: list[str] + """The availability zones.""" + tags: dict[str, str] + """Resource tags.""" + properties: "GoldenGateConnectionUpdateProperties" + """The resource-specific properties for this resource.""" + + +class GoldenGateConnectionUpdateProperties(TypedDict, total=False): + """The updatable properties of the GoldenGateConnection. + + :ivar connectionType: The connection type to be created. Known values are: "GOLDENGATE", + "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", + "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", + "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_NOSQL", "MONGODB", + "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", + "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", + and "ICEBERG". + :vartype connectionType: Union[str, "ConnectionType"] + :ivar displayName: The connection display name. + :vartype displayName: str + :ivar routingMethod: Controls the network traffic direction to the target. Known values are: + "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", and "DEDICATED_ENDPOINT". + :vartype routingMethod: Union[str, "RoutingMethod"] + :ivar vaultId: The customer's vault OCID. + :vartype vaultId: str + :ivar keyId: The customer's master key OCID. + :vartype keyId: str + :ivar doesUseSecretIds: Indicates whether secret OCIDs are used for credential fields. + :vartype doesUseSecretIds: bool + """ + + connectionType: Union[str, "ConnectionType"] + """The connection type to be created. Known values are: \"GOLDENGATE\", \"KAFKA\", + \"KAFKA_SCHEMA_REGISTRY\", \"MYSQL\", \"JAVA_MESSAGE_SERVICE\", \"MICROSOFT_SQLSERVER\", + \"OCI_OBJECT_STORAGE\", \"ORACLE\", \"AZURE_DATA_LAKE_STORAGE\", \"POSTGRESQL\", + \"AZURE_SYNAPSE_ANALYTICS\", \"SNOWFLAKE\", \"AMAZON_S3\", \"HDFS\", \"ORACLE_NOSQL\", + \"MONGODB\", \"AMAZON_KINESIS\", \"AMAZON_REDSHIFT\", \"DB2\", \"REDIS\", \"ELASTICSEARCH\", + \"GENERIC\", \"GOOGLE_CLOUD_STORAGE\", \"GOOGLE_BIGQUERY\", \"DATABRICKS\", \"GOOGLE_PUBSUB\", + \"MICROSOFT_FABRIC\", and \"ICEBERG\".""" + displayName: str + """The connection display name.""" + routingMethod: Union[str, "RoutingMethod"] + """Controls the network traffic direction to the target. Known values are: + \"SHARED_SERVICE_ENDPOINT\", \"SHARED_DEPLOYMENT_ENDPOINT\", and \"DEDICATED_ENDPOINT\".""" + vaultId: str + """The customer's vault OCID.""" + keyId: str + """The customer's master key OCID.""" + doesUseSecretIds: bool + """Indicates whether secret OCIDs are used for credential fields.""" + + +class GoldenGateDeployment(TrackedResource): + """GoldenGate Deployment resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "DeploymentProperties" + :ivar zones: The availability zones. + :vartype zones: list[str] + """ + + properties: "DeploymentProperties" + """The resource-specific properties for this resource.""" + zones: list[str] + """The availability zones.""" + + +class GoldenGateDeploymentUpdate(TypedDict, total=False): + """The type used for update operations of the GoldenGateDeployment. + + :ivar zones: The availability zones. + :vartype zones: list[str] + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "GoldenGateDeploymentUpdateProperties" + """ + + zones: list[str] + """The availability zones.""" + tags: dict[str, str] + """Resource tags.""" + properties: "GoldenGateDeploymentUpdateProperties" + """The resource-specific properties for this resource.""" + + +class GoldenGateDeploymentUpdateProperties(TypedDict, total=False): + """The updatable properties of the GoldenGateDeployment. + + :ivar backupSchedule: Backup schedule. + :vartype backupSchedule: "BackupScheduleType" + :ivar cpuCoreCount: The minimum number of OCPUs to be made available for this deployment. + :vartype cpuCoreCount: int + :ivar licenseModel: The Oracle license model that applies to a Deployment. Known values are: + "LicenseIncluded" and "BringYourOwnLicense". + :vartype licenseModel: Union[str, "LicenseModel"] + :ivar maintenanceConfiguration: Maintenance configuration. + :vartype maintenanceConfiguration: "MaintenanceConfigurationType" + :ivar maintenanceWindow: Maintenance window. + :vartype maintenanceWindow: "MaintenanceWindowType" + """ + + backupSchedule: "BackupScheduleType" + """Backup schedule.""" + cpuCoreCount: int + """The minimum number of OCPUs to be made available for this deployment.""" + licenseModel: Union[str, "LicenseModel"] + """The Oracle license model that applies to a Deployment. Known values are: \"LicenseIncluded\" + and \"BringYourOwnLicense\".""" + maintenanceConfiguration: "MaintenanceConfigurationType" + """Maintenance configuration.""" + maintenanceWindow: "MaintenanceWindowType" + """Maintenance window.""" + + +class GroupToRolesMappingDetails(TypedDict, total=False): + """Group-to-roles mapping properties. + + :ivar administratorGroupId: The OCID of the IDP group which will be mapped to goldengate role + administratorGroup.It grants full access to the user, including the ability to alter general, + non-security related operational parameters and profiles of the server. + :vartype administratorGroupId: str + :ivar operatorGroupId: The OCID of the IDP group which will be mapped to goldengate role + operatorGroup.It allows users to perform only operational actions, like starting and stopping + resources. Operators cannot alter the operational parameters or profiles of the MA server. + :vartype operatorGroupId: str + :ivar securityGroupId: The OCID of the IDP group which will be mapped to goldengate role + securityGroup.It grants administration of security related objects and invoke security related + service requests. This role has full privileges. + :vartype securityGroupId: str + :ivar userGroupId: The OCID of the IDP group which will be mapped to goldengate role userGroup. + It allows information-only service requests, which do not alter or affect the operation of + either the MA. Examples of query and read-only information include performance metric + information and resource status and monitoring information. + :vartype userGroupId: str + :ivar identityDomainId: The OCID of the Identity Domain when IAM credential store is used. + :vartype identityDomainId: str + :ivar key: The base64 encoded content of the PEM file containing the private key. + :vartype key: str + """ + + administratorGroupId: str + """The OCID of the IDP group which will be mapped to goldengate role administratorGroup.It grants + full access to the user, including the ability to alter general, non-security related + operational parameters and profiles of the server.""" + operatorGroupId: str + """The OCID of the IDP group which will be mapped to goldengate role operatorGroup.It allows users + to perform only operational actions, like starting and stopping resources. Operators cannot + alter the operational parameters or profiles of the MA server.""" + securityGroupId: str + """The OCID of the IDP group which will be mapped to goldengate role securityGroup.It grants + administration of security related objects and invoke security related service requests. This + role has full privileges.""" + userGroupId: str + """The OCID of the IDP group which will be mapped to goldengate role userGroup. It allows + information-only service requests, which do not alter or affect the operation of either the MA. + Examples of query and read-only information include performance metric information and resource + status and monitoring information.""" + identityDomainId: str + """The OCID of the Identity Domain when IAM credential store is used.""" + key: str + """The base64 encoded content of the PEM file containing the private key.""" + + +class KafkaBootstrapServer(TypedDict, total=False): + """The Kafka bootstrap server with host name, and an optional port. + + :ivar host: The name or address of a host. Required. + :vartype host: str + :ivar port: The port of an endpoint usually specified for a connection. + :vartype port: int + """ + + host: Required[str] + """The name or address of a host. Required.""" + port: int + """The port of an endpoint usually specified for a connection.""" + + +class KafkaConnectionDetails(TypedDict, total=False): + """The metadata of a Kafka Connection. + + :ivar displayName: The connection display name. Required. + :vartype displayName: str + :ivar resourceAnchorId: The corresponding resource anchor Azure ID. Required. + :vartype resourceAnchorId: str + :ivar networkAnchorId: The corresponding network anchor Azure ID. Required. + :vartype networkAnchorId: str + :ivar compartmentId: The OCID of the compartment being referenced. + :vartype compartmentId: str + :ivar ocid: The OCID of the connection being referenced. + :vartype ocid: str + :ivar routingMethod: Controls the network traffic direction to the target. Known values are: + "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", and "DEDICATED_ENDPOINT". + :vartype routingMethod: Union[str, "RoutingMethod"] + :ivar vaultId: The customer's vault OCID. + :vartype vaultId: str + :ivar keyId: The customer's master key OCID. + :vartype keyId: str + :ivar doesUseSecretIds: Indicates whether secret OCIDs are used for credential fields. + :vartype doesUseSecretIds: bool + :ivar provisioningState: Connection provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: The connection lifecycle state. Known values are: "CREATING", "UPDATING", + "ACTIVE", "DELETING", "DELETED", and "FAILED". + :vartype lifecycleState: Union[str, "ConnectionLifecycleState"] + :ivar lifecycleDetails: The description of lifecycle state in detail. + :vartype lifecycleDetails: str + :ivar timeCreated: The date time the resource was created in OCI. + :vartype timeCreated: str + :ivar timeUpdated: The date time the resource was last updated in OCI. + :vartype timeUpdated: str + :ivar connectionType: Required. A Kafka Connection. + :vartype connectionType: Literal[ConnectionType.KAFKA] + :ivar technologyType: The Kafka technology type. Required. Known values are: "APACHE_KAFKA", + "AZURE_EVENT_HUBS", "CONFLUENT_KAFKA", and "OCI_STREAMING". + :vartype technologyType: Union[str, "KafkaConnectionTechnologyType"] + :ivar bootstrapServers: The list of KafkaBootstrapServer objects specified by host/port. + :vartype bootstrapServers: list["KafkaBootstrapServer"] + :ivar securityProtocol: The Kafka security protocol used to connect to the broker. + :vartype securityProtocol: str + :ivar username: The username used to authenticate to Kafka. + :vartype username: str + :ivar passwordSecretId: The OCID of the Secret where the password is stored. + :vartype passwordSecretId: str + :ivar trustStoreSecretId: The OCID of the Secret where the truststore is stored. + :vartype trustStoreSecretId: str + :ivar trustStorePasswordSecretId: The OCID of the Secret where the truststore password is + stored. + :vartype trustStorePasswordSecretId: str + :ivar keyStoreSecretId: The OCID of the Secret where the keystore is stored. + :vartype keyStoreSecretId: str + :ivar keyStorePasswordSecretId: The OCID of the Secret where the keystore password is stored. + :vartype keyStorePasswordSecretId: str + :ivar sslKeyPasswordSecretId: The OCID of the Secret where the SSL key password is stored. + :vartype sslKeyPasswordSecretId: str + :ivar consumerProperties: The additional consumer properties in string format. + :vartype consumerProperties: str + :ivar producerProperties: The additional producer properties in string format. + :vartype producerProperties: str + :ivar streamPoolId: The OCID of the stream pool being referenced. + :vartype streamPoolId: str + :ivar clusterId: The OCID of the Kafka cluster being referenced. + :vartype clusterId: str + :ivar shouldUseResourcePrincipal: Indicates if resource principal should be used for + authentication. + :vartype shouldUseResourcePrincipal: bool + """ + + displayName: Required[str] + """The connection display name. Required.""" + resourceAnchorId: Required[str] + """The corresponding resource anchor Azure ID. Required.""" + networkAnchorId: Required[str] + """The corresponding network anchor Azure ID. Required.""" + compartmentId: str + """The OCID of the compartment being referenced.""" + ocid: str + """The OCID of the connection being referenced.""" + routingMethod: Union[str, "RoutingMethod"] + """Controls the network traffic direction to the target. Known values are: + \"SHARED_SERVICE_ENDPOINT\", \"SHARED_DEPLOYMENT_ENDPOINT\", and \"DEDICATED_ENDPOINT\".""" + vaultId: str + """The customer's vault OCID.""" + keyId: str + """The customer's master key OCID.""" + doesUseSecretIds: bool + """Indicates whether secret OCIDs are used for credential fields.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Connection provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and + \"Provisioning\".""" + lifecycleState: Union[str, "ConnectionLifecycleState"] + """The connection lifecycle state. Known values are: \"CREATING\", \"UPDATING\", \"ACTIVE\", + \"DELETING\", \"DELETED\", and \"FAILED\".""" + lifecycleDetails: str + """The description of lifecycle state in detail.""" + timeCreated: str + """The date time the resource was created in OCI.""" + timeUpdated: str + """The date time the resource was last updated in OCI.""" + connectionType: Required[Literal[ConnectionType.KAFKA]] + """Required. A Kafka Connection.""" + technologyType: Required[Union[str, "KafkaConnectionTechnologyType"]] + """The Kafka technology type. Required. Known values are: \"APACHE_KAFKA\", \"AZURE_EVENT_HUBS\", + \"CONFLUENT_KAFKA\", and \"OCI_STREAMING\".""" + bootstrapServers: list["KafkaBootstrapServer"] + """The list of KafkaBootstrapServer objects specified by host/port.""" + securityProtocol: str + """The Kafka security protocol used to connect to the broker.""" + username: str + """The username used to authenticate to Kafka.""" + passwordSecretId: str + """The OCID of the Secret where the password is stored.""" + trustStoreSecretId: str + """The OCID of the Secret where the truststore is stored.""" + trustStorePasswordSecretId: str + """The OCID of the Secret where the truststore password is stored.""" + keyStoreSecretId: str + """The OCID of the Secret where the keystore is stored.""" + keyStorePasswordSecretId: str + """The OCID of the Secret where the keystore password is stored.""" + sslKeyPasswordSecretId: str + """The OCID of the Secret where the SSL key password is stored.""" + consumerProperties: str + """The additional consumer properties in string format.""" + producerProperties: str + """The additional producer properties in string format.""" + streamPoolId: str + """The OCID of the stream pool being referenced.""" + clusterId: str + """The OCID of the Kafka cluster being referenced.""" + shouldUseResourcePrincipal: bool + """Indicates if resource principal should be used for authentication.""" + + +class LongTermBackUpScheduleDetails(TypedDict, total=False): + """Details for the long-term backup schedule. + + :ivar repeatCadence: The frequency of the long-term backup schedule. Known values are: + "OneTime", "Weekly", "Monthly", and "Yearly". + :vartype repeatCadence: Union[str, "RepeatCadenceType"] + :ivar timeOfBackup: The timestamp for the long-term backup schedule. For a MONTHLY cadence, + months having fewer days than the provided date will have the backup taken on the last day of + that month. + :vartype timeOfBackup: str + :ivar retentionPeriodInDays: Retention period, in days, for backups. + :vartype retentionPeriodInDays: int + :ivar isDisabled: Indicates if the long-term backup schedule should be deleted. The default + value is ``FALSE``. + :vartype isDisabled: bool + """ + + repeatCadence: Union[str, "RepeatCadenceType"] + """The frequency of the long-term backup schedule. Known values are: \"OneTime\", \"Weekly\", + \"Monthly\", and \"Yearly\".""" + timeOfBackup: str + """The timestamp for the long-term backup schedule. For a MONTHLY cadence, months having fewer + days than the provided date will have the backup taken on the last day of that month.""" + retentionPeriodInDays: int + """Retention period, in days, for backups.""" + isDisabled: bool + """Indicates if the long-term backup schedule should be deleted. The default value is ``FALSE``.""" + + +class MaintenanceConfigurationType(TypedDict, total=False): + """Maintenance configuration type. + + :ivar bundleReleaseUpgradePeriodInDays: Bundle release period. + :vartype bundleReleaseUpgradePeriodInDays: int + :ivar interimReleaseUpgradePeriodInDays: Interim release upgrade period in days. + :vartype interimReleaseUpgradePeriodInDays: int + :ivar isInterimReleaseAutoUpgradeEnabled: Indicates whether interim release auto-upgrade is + enabled. + :vartype isInterimReleaseAutoUpgradeEnabled: bool + :ivar majorReleaseUpgradePeriodInDays: Major release upgrade period in days. + :vartype majorReleaseUpgradePeriodInDays: int + :ivar securityPatchUpgradePeriodInDays: Security patch upgrade period in days. + :vartype securityPatchUpgradePeriodInDays: int + """ + + bundleReleaseUpgradePeriodInDays: int + """Bundle release period.""" + interimReleaseUpgradePeriodInDays: int + """Interim release upgrade period in days.""" + isInterimReleaseAutoUpgradeEnabled: bool + """Indicates whether interim release auto-upgrade is enabled.""" + majorReleaseUpgradePeriodInDays: int + """Major release upgrade period in days.""" + securityPatchUpgradePeriodInDays: int + """Security patch upgrade period in days.""" + + +class MaintenanceWindow(TypedDict, total=False): + """MaintenanceWindow resource properties. + + :ivar preference: The maintenance window scheduling preference. Known values are: + "NoPreference" and "CustomPreference". + :vartype preference: Union[str, "Preference"] + :ivar months: Months during the year when maintenance should be performed. + :vartype months: list["Month"] + :ivar weeksOfMonth: Weeks during the month when maintenance should be performed. Weeks start on + the 1st, 8th, 15th, and 22nd days of the month, and have a duration of 7 days. Weeks start and + end based on calendar dates, not days of the week. For example, to allow maintenance during the + 2nd week of the month (from the 8th day to the 14th day of the month), use the value 2. + Maintenance cannot be scheduled for the fifth week of months that contain more than 28 days. + Note that this parameter works in conjunction with the daysOfWeek and hoursOfDay parameters to + allow you to specify specific days of the week and hours that maintenance will be performed. + :vartype weeksOfMonth: list[int] + :ivar daysOfWeek: Days during the week when maintenance should be performed. + :vartype daysOfWeek: list["DayOfWeek"] + :ivar hoursOfDay: The window of hours during the day when maintenance should be performed. The + window is a 4 hour slot. Valid values are - 0 - represents time slot 0:00 - 3:59 UTC - 4 - + represents time slot 4:00 - 7:59 UTC - 8 - represents time slot 8:00 - 11:59 UTC - 12 - + represents time slot 12:00 - 15:59 UTC - 16 - represents time slot 16:00 - 19:59 UTC - 20 - + represents time slot 20:00 - 23:59 UTC. + :vartype hoursOfDay: list[int] + :ivar leadTimeInWeeks: Lead time window allows user to set a lead time to prepare for a down + time. The lead time is in weeks and valid value is between 1 to 4. + :vartype leadTimeInWeeks: int + :ivar patchingMode: Cloud Exadata infrastructure node patching method. Known values are: + "Rolling" and "NonRolling". + :vartype patchingMode: Union[str, "PatchingMode"] + :ivar customActionTimeoutInMins: Determines the amount of time the system will wait before the + start of each database server patching operation. Custom action timeout is in minutes and valid + value is between 15 to 120 (inclusive). + :vartype customActionTimeoutInMins: int + :ivar isCustomActionTimeoutEnabled: If true, enables the configuration of a custom action + timeout (waiting period) between database server patching operations. + :vartype isCustomActionTimeoutEnabled: bool + :ivar isMonthlyPatchingEnabled: is Monthly Patching Enabled. + :vartype isMonthlyPatchingEnabled: bool + """ + + preference: Union[str, "Preference"] + """The maintenance window scheduling preference. Known values are: \"NoPreference\" and + \"CustomPreference\".""" + months: list["Month"] + """Months during the year when maintenance should be performed.""" + weeksOfMonth: list[int] + """Weeks during the month when maintenance should be performed. Weeks start on the 1st, 8th, 15th, + and 22nd days of the month, and have a duration of 7 days. Weeks start and end based on + calendar dates, not days of the week. For example, to allow maintenance during the 2nd week of + the month (from the 8th day to the 14th day of the month), use the value 2. Maintenance cannot + be scheduled for the fifth week of months that contain more than 28 days. Note that this + parameter works in conjunction with the daysOfWeek and hoursOfDay parameters to allow you to + specify specific days of the week and hours that maintenance will be performed.""" + daysOfWeek: list["DayOfWeek"] + """Days during the week when maintenance should be performed.""" + hoursOfDay: list[int] + """The window of hours during the day when maintenance should be performed. The window is a 4 hour + slot. Valid values are - 0 - represents time slot 0:00 - 3:59 UTC - 4 - represents time slot + 4:00 - 7:59 UTC - 8 - represents time slot 8:00 - 11:59 UTC - 12 - represents time slot 12:00 - + 15:59 UTC - 16 - represents time slot 16:00 - 19:59 UTC - 20 - represents time slot 20:00 - + 23:59 UTC.""" + leadTimeInWeeks: int + """Lead time window allows user to set a lead time to prepare for a down time. The lead time is in + weeks and valid value is between 1 to 4.""" + patchingMode: Union[str, "PatchingMode"] + """Cloud Exadata infrastructure node patching method. Known values are: \"Rolling\" and + \"NonRolling\".""" + customActionTimeoutInMins: int + """Determines the amount of time the system will wait before the start of each database server + patching operation. Custom action timeout is in minutes and valid value is between 15 to 120 + (inclusive).""" + isCustomActionTimeoutEnabled: bool + """If true, enables the configuration of a custom action timeout (waiting period) between database + server patching operations.""" + isMonthlyPatchingEnabled: bool + """is Monthly Patching Enabled.""" + + +class MaintenanceWindowType(TypedDict, total=False): + """Maintenance window. + + :ivar day: The day of week. Known values are: "Monday", "Tuesday", "Wednesday", "Thursday", + "Friday", "Saturday", and "Sunday". + :vartype day: Union[str, "DayOfWeekName"] + :ivar startHour: Start time in UTC. + :vartype startHour: int + """ + + day: Union[str, "DayOfWeekName"] + """The day of week. Known values are: \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", + \"Friday\", \"Saturday\", and \"Sunday\".""" + startHour: int + """Start time in UTC.""" + + +class MicrosoftFabricConnectionDetails(TypedDict, total=False): + """The metadata of a Microsoft Fabric Connection. + + :ivar displayName: The connection display name. Required. + :vartype displayName: str + :ivar resourceAnchorId: The corresponding resource anchor Azure ID. Required. + :vartype resourceAnchorId: str + :ivar networkAnchorId: The corresponding network anchor Azure ID. Required. + :vartype networkAnchorId: str + :ivar compartmentId: The OCID of the compartment being referenced. + :vartype compartmentId: str + :ivar ocid: The OCID of the connection being referenced. + :vartype ocid: str + :ivar routingMethod: Controls the network traffic direction to the target. Known values are: + "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", and "DEDICATED_ENDPOINT". + :vartype routingMethod: Union[str, "RoutingMethod"] + :ivar vaultId: The customer's vault OCID. + :vartype vaultId: str + :ivar keyId: The customer's master key OCID. + :vartype keyId: str + :ivar doesUseSecretIds: Indicates whether secret OCIDs are used for credential fields. + :vartype doesUseSecretIds: bool + :ivar provisioningState: Connection provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: The connection lifecycle state. Known values are: "CREATING", "UPDATING", + "ACTIVE", "DELETING", "DELETED", and "FAILED". + :vartype lifecycleState: Union[str, "ConnectionLifecycleState"] + :ivar lifecycleDetails: The description of lifecycle state in detail. + :vartype lifecycleDetails: str + :ivar timeCreated: The date time the resource was created in OCI. + :vartype timeCreated: str + :ivar timeUpdated: The date time the resource was last updated in OCI. + :vartype timeUpdated: str + :ivar connectionType: Required. A Microsoft Fabric Connection. + :vartype connectionType: Literal[ConnectionType.MICROSOFT_FABRIC] + :ivar technologyType: The Microsoft Fabric technology type. Required. Known values are: + "MICROSOFT_FABRIC_LAKEHOUSE" and "MICROSOFT_FABRIC_MIRROR". + :vartype technologyType: Union[str, "MicrosoftFabricConnectionTechnologyType"] + :ivar tenantId: Azure tenant ID of the application. Required. + :vartype tenantId: str + :ivar clientId: Azure client ID of the application. Required. + :vartype clientId: str + :ivar clientSecretSecretId: The OCID of the Secret where the client secret is stored. + :vartype clientSecretSecretId: str + :ivar endpoint: The Microsoft Fabric service endpoint. + :vartype endpoint: str + """ + + displayName: Required[str] + """The connection display name. Required.""" + resourceAnchorId: Required[str] + """The corresponding resource anchor Azure ID. Required.""" + networkAnchorId: Required[str] + """The corresponding network anchor Azure ID. Required.""" + compartmentId: str + """The OCID of the compartment being referenced.""" + ocid: str + """The OCID of the connection being referenced.""" + routingMethod: Union[str, "RoutingMethod"] + """Controls the network traffic direction to the target. Known values are: + \"SHARED_SERVICE_ENDPOINT\", \"SHARED_DEPLOYMENT_ENDPOINT\", and \"DEDICATED_ENDPOINT\".""" + vaultId: str + """The customer's vault OCID.""" + keyId: str + """The customer's master key OCID.""" + doesUseSecretIds: bool + """Indicates whether secret OCIDs are used for credential fields.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Connection provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and + \"Provisioning\".""" + lifecycleState: Union[str, "ConnectionLifecycleState"] + """The connection lifecycle state. Known values are: \"CREATING\", \"UPDATING\", \"ACTIVE\", + \"DELETING\", \"DELETED\", and \"FAILED\".""" + lifecycleDetails: str + """The description of lifecycle state in detail.""" + timeCreated: str + """The date time the resource was created in OCI.""" + timeUpdated: str + """The date time the resource was last updated in OCI.""" + connectionType: Required[Literal[ConnectionType.MICROSOFT_FABRIC]] + """Required. A Microsoft Fabric Connection.""" + technologyType: Required[Union[str, "MicrosoftFabricConnectionTechnologyType"]] + """The Microsoft Fabric technology type. Required. Known values are: + \"MICROSOFT_FABRIC_LAKEHOUSE\" and \"MICROSOFT_FABRIC_MIRROR\".""" + tenantId: Required[str] + """Azure tenant ID of the application. Required.""" + clientId: Required[str] + """Azure client ID of the application. Required.""" + clientSecretSecretId: str + """The OCID of the Secret where the client secret is stored.""" + endpoint: str + """The Microsoft Fabric service endpoint.""" + + +class Month(TypedDict, total=False): + """Month resource properties. + + :ivar name: Name of the month of the year. Required. Known values are: "January", "February", + "March", "April", "May", "June", "July", "August", "September", "October", "November", and + "December". + :vartype name: Union[str, "MonthName"] + """ + + name: Required[Union[str, "MonthName"]] + """Name of the month of the year. Required. Known values are: \"January\", \"February\", + \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", + \"November\", and \"December\".""" + + +class NetworkAnchor(TrackedResource): + """Network Anchor resource model. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "NetworkAnchorProperties" + :ivar zones: The availability zones. + :vartype zones: list[str] + """ + + properties: "NetworkAnchorProperties" + """The resource-specific properties for this resource.""" + zones: list[str] + """The availability zones.""" + + +class NetworkAnchorProperties(TypedDict, total=False): + """Network Anchor properties. + + :ivar resourceAnchorId: Corresponding resource anchor Azure ID. Required. + :vartype resourceAnchorId: str + :ivar provisioningState: NetworkAnchor provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar vnetId: VNET for network connectivity. + :vartype vnetId: str + :ivar subnetId: Client subnet. Required. + :vartype subnetId: str + :ivar cidrBlock: Delegated Azure subnet cidr block. + :vartype cidrBlock: str + :ivar ociVcnId: Oracle Cloud Infrastructure VCN OCID. + :vartype ociVcnId: str + :ivar ociVcnDnsLabel: OCI DNS label. This is optional if DNS config is provided. + :vartype ociVcnDnsLabel: str + :ivar ociSubnetId: Oracle Cloud Infrastructure subnet OCID. + :vartype ociSubnetId: str + :ivar ociBackupCidrBlock: OCI backup subnet cidr block. + :vartype ociBackupCidrBlock: str + :ivar isOracleToAzureDnsZoneSyncEnabled: Indicates whether DNS zone sync from OCI to Azure is + enabled. + :vartype isOracleToAzureDnsZoneSyncEnabled: bool + :ivar isOracleDnsListeningEndpointEnabled: Indicates whether the Oracle DNS listening endpoint + is enabled. + :vartype isOracleDnsListeningEndpointEnabled: bool + :ivar isOracleDnsForwardingEndpointEnabled: Indicates whether the Oracle DNS forwarding + endpoint is enabled. + :vartype isOracleDnsForwardingEndpointEnabled: bool + :ivar dnsForwardingRules: DNS forwarding rules. + :vartype dnsForwardingRules: list["DnsForwardingRule"] + :ivar dnsListeningEndpointAllowedCidrs: Comma-separated list of CIDRs that are allowed to send + requests to the DNS listening endpoint. + :vartype dnsListeningEndpointAllowedCidrs: str + :ivar dnsListeningEndpointIpAddress: DNS listening endpoint IP address. + :vartype dnsListeningEndpointIpAddress: str + :ivar dnsForwardingEndpointIpAddress: DNS forwarding endpoint IP address. + :vartype dnsForwardingEndpointIpAddress: str + :ivar dnsForwardingRulesUrl: Deep link to OCI console DNS Forwarding rules page. + :vartype dnsForwardingRulesUrl: str + :ivar dnsListeningEndpointNsgRulesUrl: Deep link to OCI console DNS Listening endpoint NSG + rules. + :vartype dnsListeningEndpointNsgRulesUrl: str + :ivar dnsForwardingEndpointNsgRulesUrl: Deep link to OCI console DNS Forwarding endpoint NSG + rules. + :vartype dnsForwardingEndpointNsgRulesUrl: str + :ivar proximityPlacementGroup: Proximity placement group settings. + :vartype proximityPlacementGroup: "ProximityPlacementGroup" + """ + + resourceAnchorId: Required[str] + """Corresponding resource anchor Azure ID. Required.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """NetworkAnchor provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + vnetId: str + """VNET for network connectivity.""" + subnetId: Required[str] + """Client subnet. Required.""" + cidrBlock: str + """Delegated Azure subnet cidr block.""" + ociVcnId: str + """Oracle Cloud Infrastructure VCN OCID.""" + ociVcnDnsLabel: str + """OCI DNS label. This is optional if DNS config is provided.""" + ociSubnetId: str + """Oracle Cloud Infrastructure subnet OCID.""" + ociBackupCidrBlock: str + """OCI backup subnet cidr block.""" + isOracleToAzureDnsZoneSyncEnabled: bool + """Indicates whether DNS zone sync from OCI to Azure is enabled.""" + isOracleDnsListeningEndpointEnabled: bool + """Indicates whether the Oracle DNS listening endpoint is enabled.""" + isOracleDnsForwardingEndpointEnabled: bool + """Indicates whether the Oracle DNS forwarding endpoint is enabled.""" + dnsForwardingRules: list["DnsForwardingRule"] + """DNS forwarding rules.""" + dnsListeningEndpointAllowedCidrs: str + """Comma-separated list of CIDRs that are allowed to send requests to the DNS listening endpoint.""" + dnsListeningEndpointIpAddress: str + """DNS listening endpoint IP address.""" + dnsForwardingEndpointIpAddress: str + """DNS forwarding endpoint IP address.""" + dnsForwardingRulesUrl: str + """Deep link to OCI console DNS Forwarding rules page.""" + dnsListeningEndpointNsgRulesUrl: str + """Deep link to OCI console DNS Listening endpoint NSG rules.""" + dnsForwardingEndpointNsgRulesUrl: str + """Deep link to OCI console DNS Forwarding endpoint NSG rules.""" + proximityPlacementGroup: "ProximityPlacementGroup" + """Proximity placement group settings.""" + + +class NetworkAnchorUpdate(TypedDict, total=False): + """The type used for update operations of the NetworkAnchor. + + :ivar zones: The availability zones. + :vartype zones: list[str] + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "NetworkAnchorUpdateProperties" + """ + + zones: list[str] + """The availability zones.""" + tags: dict[str, str] + """Resource tags.""" + properties: "NetworkAnchorUpdateProperties" + """The resource-specific properties for this resource.""" + + +class NetworkAnchorUpdateProperties(TypedDict, total=False): + """The updatable properties of the NetworkAnchor. + + :ivar ociBackupCidrBlock: OCI backup subnet cidr block. + :vartype ociBackupCidrBlock: str + :ivar isOracleToAzureDnsZoneSyncEnabled: Indicates whether DNS zone sync from OCI to Azure is + enabled. + :vartype isOracleToAzureDnsZoneSyncEnabled: bool + :ivar isOracleDnsListeningEndpointEnabled: Indicates whether the Oracle DNS listening endpoint + is enabled. + :vartype isOracleDnsListeningEndpointEnabled: bool + :ivar isOracleDnsForwardingEndpointEnabled: Indicates whether the Oracle DNS forwarding + endpoint is enabled. + :vartype isOracleDnsForwardingEndpointEnabled: bool + """ + + ociBackupCidrBlock: str + """OCI backup subnet cidr block.""" + isOracleToAzureDnsZoneSyncEnabled: bool + """Indicates whether DNS zone sync from OCI to Azure is enabled.""" + isOracleDnsListeningEndpointEnabled: bool + """Indicates whether the Oracle DNS listening endpoint is enabled.""" + isOracleDnsForwardingEndpointEnabled: bool + """Indicates whether the Oracle DNS forwarding endpoint is enabled.""" + + +class NsgCidr(TypedDict, total=False): + """A rule for allowing inbound (INGRESS) IP packets. + + :ivar source: Conceptually, this is the range of IP addresses that a packet coming into the + instance can come from. Required. + :vartype source: str + :ivar destinationPortRange: Destination port range to specify particular destination ports for + TCP rules. + :vartype destinationPortRange: "PortRange" + """ + + source: Required[str] + """Conceptually, this is the range of IP addresses that a packet coming into the instance can come + from. Required.""" + destinationPortRange: "PortRange" + """Destination port range to specify particular destination ports for TCP rules.""" + + +class OggDeploymentDetails(TypedDict, total=False): + """OGG deployment details. + + :ivar adminPassword: The password associated with the GoldenGate deployment console username. + The password must be 8 to 30 characters long and must contain at least 1 uppercase, 1 + lowercase, 1 numeric, and 1 special character. Special characters such as '$', '^', or '?' are + not allowed. + :vartype adminPassword: str + :ivar adminUsername: The GoldenGate deployment console username. + :vartype adminUsername: str + :ivar certificate: The base64 encoded content of the PEM file containing the SSL certificate. + :vartype certificate: str + :ivar credentialStore: The type of credential store for OGG. Known values are: "GoldenGate" and + "IAM". + :vartype credentialStore: Union[str, "CredentialType"] + :ivar deploymentName: The name given to the GoldenGate service deployment. Required. + :vartype deploymentName: str + :ivar groupToRolesMapping: Defines the IDP Groups to GoldenGate roles mapping. + :vartype groupToRolesMapping: "GroupToRolesMappingDetails" + :ivar oggVersion: OGG version. + :vartype oggVersion: str + :ivar passwordSecretId: The OCID of the Secret where the deployment password is stored. + :vartype passwordSecretId: str + """ + + adminPassword: str + """The password associated with the GoldenGate deployment console username. The password must be 8 + to 30 characters long and must contain at least 1 uppercase, 1 lowercase, 1 numeric, and 1 + special character. Special characters such as '$', '^', or '?' are not allowed.""" + adminUsername: str + """The GoldenGate deployment console username.""" + certificate: str + """The base64 encoded content of the PEM file containing the SSL certificate.""" + credentialStore: Union[str, "CredentialType"] + """The type of credential store for OGG. Known values are: \"GoldenGate\" and \"IAM\".""" + deploymentName: Required[str] + """The name given to the GoldenGate service deployment. Required.""" + groupToRolesMapping: "GroupToRolesMappingDetails" + """Defines the IDP Groups to GoldenGate roles mapping.""" + oggVersion: str + """OGG version.""" + passwordSecretId: str + """The OCID of the Secret where the deployment password is stored.""" + + +class OracleConnectionDetails(TypedDict, total=False): + """The metadata of an Oracle Database Connection. + + :ivar displayName: The connection display name. Required. + :vartype displayName: str + :ivar resourceAnchorId: The corresponding resource anchor Azure ID. Required. + :vartype resourceAnchorId: str + :ivar networkAnchorId: The corresponding network anchor Azure ID. Required. + :vartype networkAnchorId: str + :ivar compartmentId: The OCID of the compartment being referenced. + :vartype compartmentId: str + :ivar ocid: The OCID of the connection being referenced. + :vartype ocid: str + :ivar routingMethod: Controls the network traffic direction to the target. Known values are: + "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", and "DEDICATED_ENDPOINT". + :vartype routingMethod: Union[str, "RoutingMethod"] + :ivar vaultId: The customer's vault OCID. + :vartype vaultId: str + :ivar keyId: The customer's master key OCID. + :vartype keyId: str + :ivar doesUseSecretIds: Indicates whether secret OCIDs are used for credential fields. + :vartype doesUseSecretIds: bool + :ivar provisioningState: Connection provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: The connection lifecycle state. Known values are: "CREATING", "UPDATING", + "ACTIVE", "DELETING", "DELETED", and "FAILED". + :vartype lifecycleState: Union[str, "ConnectionLifecycleState"] + :ivar lifecycleDetails: The description of lifecycle state in detail. + :vartype lifecycleDetails: str + :ivar timeCreated: The date time the resource was created in OCI. + :vartype timeCreated: str + :ivar timeUpdated: The date time the resource was last updated in OCI. + :vartype timeUpdated: str + :ivar connectionType: Required. An Oracle Database Connection. + :vartype connectionType: Literal[ConnectionType.ORACLE] + :ivar technologyType: The Oracle technology type. Required. Known values are: + "AMAZON_RDS_ORACLE", "OCI_AUTONOMOUS_DATABASE", "ORACLE_DATABASE", "ORACLE_EXADATA", + "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", + "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", + "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", and "ORACLE_AUTONOMOUS_DATABASE_AT_AWS". + :vartype technologyType: Union[str, "OracleConnectionTechnologyType"] + :ivar sessionMode: The mode of the database connection session to be established by the data + client. Known values are: "DIRECT" and "REDIRECT". + :vartype sessionMode: Union[str, "SessionMode"] + :ivar username: The username that is used to connect the associated system of the given + technology. Required. + :vartype username: str + :ivar connectionString: The connection string used to connect the associated database. + :vartype connectionString: str + :ivar authenticationMode: The authentication mode used to connect the associated database. + :vartype authenticationMode: str + :ivar passwordSecretId: The OCID of the Secret where the password is stored. + :vartype passwordSecretId: str + :ivar walletSecretId: The OCID of the Secret where the wallet is stored. + :vartype walletSecretId: str + :ivar databaseId: The OCID of the associated database. + :vartype databaseId: str + :ivar privateIp: The private IP of the associated database endpoint. + :vartype privateIp: str + """ + + displayName: Required[str] + """The connection display name. Required.""" + resourceAnchorId: Required[str] + """The corresponding resource anchor Azure ID. Required.""" + networkAnchorId: Required[str] + """The corresponding network anchor Azure ID. Required.""" + compartmentId: str + """The OCID of the compartment being referenced.""" + ocid: str + """The OCID of the connection being referenced.""" + routingMethod: Union[str, "RoutingMethod"] + """Controls the network traffic direction to the target. Known values are: + \"SHARED_SERVICE_ENDPOINT\", \"SHARED_DEPLOYMENT_ENDPOINT\", and \"DEDICATED_ENDPOINT\".""" + vaultId: str + """The customer's vault OCID.""" + keyId: str + """The customer's master key OCID.""" + doesUseSecretIds: bool + """Indicates whether secret OCIDs are used for credential fields.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Connection provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", and + \"Provisioning\".""" + lifecycleState: Union[str, "ConnectionLifecycleState"] + """The connection lifecycle state. Known values are: \"CREATING\", \"UPDATING\", \"ACTIVE\", + \"DELETING\", \"DELETED\", and \"FAILED\".""" + lifecycleDetails: str + """The description of lifecycle state in detail.""" + timeCreated: str + """The date time the resource was created in OCI.""" + timeUpdated: str + """The date time the resource was last updated in OCI.""" + connectionType: Required[Literal[ConnectionType.ORACLE]] + """Required. An Oracle Database Connection.""" + technologyType: Required[Union[str, "OracleConnectionTechnologyType"]] + """The Oracle technology type. Required. Known values are: \"AMAZON_RDS_ORACLE\", + \"OCI_AUTONOMOUS_DATABASE\", \"ORACLE_DATABASE\", \"ORACLE_EXADATA\", + \"ORACLE_EXADATA_DATABASE_AT_AZURE\", \"ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD\", + \"ORACLE_EXADATA_DATABASE_AT_AWS\", \"ORACLE_AUTONOMOUS_DATABASE_AT_AZURE\", + \"ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD\", and \"ORACLE_AUTONOMOUS_DATABASE_AT_AWS\".""" + sessionMode: Union[str, "SessionMode"] + """The mode of the database connection session to be established by the data client. Known values + are: \"DIRECT\" and \"REDIRECT\".""" + username: Required[str] + """The username that is used to connect the associated system of the given technology. Required.""" + connectionString: str + """The connection string used to connect the associated database.""" + authenticationMode: str + """The authentication mode used to connect the associated database.""" + passwordSecretId: str + """The OCID of the Secret where the password is stored.""" + walletSecretId: str + """The OCID of the Secret where the wallet is stored.""" + databaseId: str + """The OCID of the associated database.""" + privateIp: str + """The private IP of the associated database endpoint.""" + + +class OracleSubscription(ProxyResource): + """OracleSubscription resource definition. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "OracleSubscriptionProperties" + :ivar plan: Details of the resource plan. + :vartype plan: "Plan" + """ + + properties: "OracleSubscriptionProperties" + """The resource-specific properties for this resource.""" + plan: "Plan" + """Details of the resource plan.""" + + +class OracleSubscriptionProperties(TypedDict, total=False): + """Oracle Subscription resource model. + + :ivar provisioningState: OracleSubscriptionProvisioningState provisioning state. Known values + are: "Succeeded", "Failed", and "Canceled". + :vartype provisioningState: Union[str, "OracleSubscriptionProvisioningState"] + :ivar saasSubscriptionId: SAAS subscription ID generated by Marketplace. + :vartype saasSubscriptionId: str + :ivar cloudAccountId: Cloud Account Id. + :vartype cloudAccountId: str + :ivar cloudAccountState: Cloud Account provisioning state. Known values are: "Pending", + "Provisioning", and "Available". + :vartype cloudAccountState: Union[str, "CloudAccountProvisioningState"] + :ivar termUnit: Term Unit. P1Y, P3Y, etc, see Durations `https://en.wikipedia.org/wiki/ISO_8601 + `_. + :vartype termUnit: str + :ivar productCode: Product code for the term unit. + :vartype productCode: str + :ivar intent: Intent for the update operation. Known values are: "Retain" and "Reset". + :vartype intent: Union[str, "Intent"] + :ivar azureSubscriptionIds: Azure subscriptions to be added. + :vartype azureSubscriptionIds: list[str] + :ivar addSubscriptionOperationState: State of the add Azure subscription operation on Oracle + subscription. Known values are: "Succeeded", "Updating", and "Failed". + :vartype addSubscriptionOperationState: Union[str, "AddSubscriptionOperationState"] + :ivar lastOperationStatusDetail: Status details of the last operation on Oracle subscription. + :vartype lastOperationStatusDetail: str + """ + + provisioningState: Union[str, "OracleSubscriptionProvisioningState"] + """OracleSubscriptionProvisioningState provisioning state. Known values are: \"Succeeded\", + \"Failed\", and \"Canceled\".""" + saasSubscriptionId: str + """SAAS subscription ID generated by Marketplace.""" + cloudAccountId: str + """Cloud Account Id.""" + cloudAccountState: Union[str, "CloudAccountProvisioningState"] + """Cloud Account provisioning state. Known values are: \"Pending\", \"Provisioning\", and + \"Available\".""" + termUnit: str + """Term Unit. P1Y, P3Y, etc, see Durations `https://en.wikipedia.org/wiki/ISO_8601 + `_.""" + productCode: str + """Product code for the term unit.""" + intent: Union[str, "Intent"] + """Intent for the update operation. Known values are: \"Retain\" and \"Reset\".""" + azureSubscriptionIds: list[str] + """Azure subscriptions to be added.""" + addSubscriptionOperationState: Union[str, "AddSubscriptionOperationState"] + """State of the add Azure subscription operation on Oracle subscription. Known values are: + \"Succeeded\", \"Updating\", and \"Failed\".""" + lastOperationStatusDetail: str + """Status details of the last operation on Oracle subscription.""" + + +class OracleSubscriptionUpdate(TypedDict, total=False): + """The type used for update operations of the OracleSubscription. + + :ivar plan: Details of the resource plan. + :vartype plan: "PlanUpdate" + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "OracleSubscriptionUpdateProperties" + """ + + plan: "PlanUpdate" + """Details of the resource plan.""" + properties: "OracleSubscriptionUpdateProperties" + """The resource-specific properties for this resource.""" + + +class OracleSubscriptionUpdateProperties(TypedDict, total=False): + """The updatable properties of the OracleSubscription. + + :ivar productCode: Product code for the term unit. + :vartype productCode: str + :ivar intent: Intent for the update operation. Known values are: "Retain" and "Reset". + :vartype intent: Union[str, "Intent"] + """ + + productCode: str + """Product code for the term unit.""" + intent: Union[str, "Intent"] + """Intent for the update operation. Known values are: \"Retain\" and \"Reset\".""" + + +class PeerDbDetails(TypedDict, total=False): + """PeerDb Details. + + :ivar peerDbId: The Azure resource ID of the Disaster Recovery peer database, which is located + in a different region from the current peer database. + :vartype peerDbId: str + :ivar peerDbOcid: Ocid of the Disaster Recovery peer database, which is located in a different + region from the current peer database. + :vartype peerDbOcid: str + :ivar peerDbLocation: The location of the Disaster Recovery peer database. + :vartype peerDbLocation: str + """ + + peerDbId: str + """The Azure resource ID of the Disaster Recovery peer database, which is located in a different + region from the current peer database.""" + peerDbOcid: str + """Ocid of the Disaster Recovery peer database, which is located in a different region from the + current peer database.""" + peerDbLocation: str + """The location of the Disaster Recovery peer database.""" + + +class Plan(TypedDict, total=False): + """Plan for the resource. + + :ivar name: A user defined name of the 3rd Party Artifact that is being procured. Required. + :vartype name: str + :ivar publisher: The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic. + Required. + :vartype publisher: str + :ivar product: The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to + the OfferID specified for the artifact at the time of Data Market onboarding. Required. + :vartype product: str + :ivar promotionCode: A publisher provided promotion code as provisioned in Data Market for the + said product/artifact. + :vartype promotionCode: str + :ivar version: The version of the desired product/artifact. + :vartype version: str + """ + + name: Required[str] + """A user defined name of the 3rd Party Artifact that is being procured. Required.""" + publisher: Required[str] + """The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic. Required.""" + product: Required[str] + """The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID + specified for the artifact at the time of Data Market onboarding. Required.""" + promotionCode: str + """A publisher provided promotion code as provisioned in Data Market for the said + product/artifact.""" + version: str + """The version of the desired product/artifact.""" + + +class PlanUpdate(TypedDict, total=False): + """ResourcePlanTypeUpdate model definition. + + :ivar name: A user defined name of the 3rd Party Artifact that is being procured. + :vartype name: str + :ivar publisher: The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic. + :vartype publisher: str + :ivar product: The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to + the OfferID specified for the artifact at the time of Data Market onboarding. + :vartype product: str + :ivar promotionCode: A publisher provided promotion code as provisioned in Data Market for the + said product/artifact. + :vartype promotionCode: str + :ivar version: The version of the desired product/artifact. + :vartype version: str + """ + + name: str + """A user defined name of the 3rd Party Artifact that is being procured.""" + publisher: str + """The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic.""" + product: str + """The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID + specified for the artifact at the time of Data Market onboarding.""" + promotionCode: str + """A publisher provided promotion code as provisioned in Data Market for the said + product/artifact.""" + version: str + """The version of the desired product/artifact.""" + + +class PortRange(TypedDict, total=False): + """Port Range to specify particular destination ports for TCP rules. + + :ivar min: The minimum port number, which must not be greater than the maximum port number. + Required. + :vartype min: int + :ivar max: The maximum port number, which must not be less than the minimum port number. To + specify a single port number, set both the min and max to the same value. Required. + :vartype max: int + """ + + min: Required[int] + """The minimum port number, which must not be greater than the maximum port number. Required.""" + max: Required[int] + """The maximum port number, which must not be less than the minimum port number. To specify a + single port number, set both the min and max to the same value. Required.""" + + +class PrivateIpAddressesFilter(TypedDict, total=False): + """Private Ip Addresses filter. + + :ivar subnetId: Subnet OCID. Required. + :vartype subnetId: str + :ivar vnicId: VCN OCID. Required. + :vartype vnicId: str + """ + + subnetId: Required[str] + """Subnet OCID. Required.""" + vnicId: Required[str] + """VCN OCID. Required.""" + + +class ProfileType(TypedDict, total=False): + """The connection string profile to allow clients to group, filter and select connection string + values based on structured metadata. + + :ivar consumerGroup: Consumer group used by the connection. Known values are: "High", "Medium", + "Low", "Tp", and "Tpurgent". + :vartype consumerGroup: Union[str, "ConsumerGroup"] + :ivar displayName: A user-friendly name for the connection. Required. + :vartype displayName: str + :ivar hostFormat: Host format used in connection string. Required. Known values are: "Fqdn" and + "Ip". + :vartype hostFormat: Union[str, "HostFormatType"] + :ivar isRegional: True for a regional connection string, applicable to cross-region DG only. + :vartype isRegional: bool + :ivar protocol: Protocol used by the connection. Required. Known values are: "TCP" and "TCPS". + :vartype protocol: Union[str, "ProtocolType"] + :ivar sessionMode: Specifies whether the listener performs a direct hand-off of the session, or + redirects the session. Required. Known values are: "Direct" and "Redirect". + :vartype sessionMode: Union[str, "SessionModeType"] + :ivar syntaxFormat: Specifies whether the connection string is using the long (LONG), Easy + Connect (EZCONNECT), or Easy Connect Plus (EZCONNECTPLUS) format. Required. Known values are: + "Long", "Ezconnect", and "Ezconnectplus". + :vartype syntaxFormat: Union[str, "SyntaxFormatType"] + :ivar tlsAuthentication: Specifies whether the TLS handshake is using one-way (SERVER) or + mutual (MUTUAL) authentication. Known values are: "Server" and "Mutual". + :vartype tlsAuthentication: Union[str, "TlsAuthenticationType"] + :ivar value: Connection string value. Required. + :vartype value: str + """ + + consumerGroup: Union[str, "ConsumerGroup"] + """Consumer group used by the connection. Known values are: \"High\", \"Medium\", \"Low\", \"Tp\", + and \"Tpurgent\".""" + displayName: Required[str] + """A user-friendly name for the connection. Required.""" + hostFormat: Required[Union[str, "HostFormatType"]] + """Host format used in connection string. Required. Known values are: \"Fqdn\" and \"Ip\".""" + isRegional: bool + """True for a regional connection string, applicable to cross-region DG only.""" + protocol: Required[Union[str, "ProtocolType"]] + """Protocol used by the connection. Required. Known values are: \"TCP\" and \"TCPS\".""" + sessionMode: Required[Union[str, "SessionModeType"]] + """Specifies whether the listener performs a direct hand-off of the session, or redirects the + session. Required. Known values are: \"Direct\" and \"Redirect\".""" + syntaxFormat: Required[Union[str, "SyntaxFormatType"]] + """Specifies whether the connection string is using the long (LONG), Easy Connect (EZCONNECT), or + Easy Connect Plus (EZCONNECTPLUS) format. Required. Known values are: \"Long\", \"Ezconnect\", + and \"Ezconnectplus\".""" + tlsAuthentication: Union[str, "TlsAuthenticationType"] + """Specifies whether the TLS handshake is using one-way (SERVER) or mutual (MUTUAL) + authentication. Known values are: \"Server\" and \"Mutual\".""" + value: Required[str] + """Connection string value. Required.""" + + +class ProximityPlacementGroup(TypedDict, total=False): + """Proximity placement group properties. + + :ivar proximityPlacementGroupId: Proximity placement group ID. Required. + :vartype proximityPlacementGroupId: str + :ivar proximityAnchorId: Proximity Anchor ID. + :vartype proximityAnchorId: str + :ivar entityTypeIntendedToUse: Entity type intended to use the proximity placement group. + Required. Known values are: "CloudExadataInfrastructure" and "OtherProducts". + :vartype entityTypeIntendedToUse: Union[str, "ProximityPlacementGroupEntityType"] + """ + + proximityPlacementGroupId: Required[str] + """Proximity placement group ID. Required.""" + proximityAnchorId: str + """Proximity Anchor ID.""" + entityTypeIntendedToUse: Required[Union[str, "ProximityPlacementGroupEntityType"]] + """Entity type intended to use the proximity placement group. Required. Known values are: + \"CloudExadataInfrastructure\" and \"OtherProducts\".""" + + +class RemoveVirtualMachineFromExadbVmClusterDetails(TypedDict, total=False): # pylint: disable=name-too-long + """Details of removing Virtual Machines from the Exadata VM cluster on Exascale Infrastructure. + Applies to Exadata Database Service on Exascale Infrastructure only. + + :ivar dbNodes: The list of ExaCS DB nodes for the Exadata VM cluster on Exascale Infrastructure + to be removed. Required. + :vartype dbNodes: list["DbNodeDetails"] + """ + + dbNodes: Required[list["DbNodeDetails"]] + """The list of ExaCS DB nodes for the Exadata VM cluster on Exascale Infrastructure to be removed. + Required.""" + + +class ResourceAnchor(TrackedResource): + """Resource Anchor model. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + :ivar location: The geo-location where the resource lives. Required. + :vartype location: str + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "ResourceAnchorProperties" + """ + + properties: "ResourceAnchorProperties" + """The resource-specific properties for this resource.""" + + +class ResourceAnchorProperties(TypedDict, total=False): + """Resource Anchor properties. + + :ivar provisioningState: ResourceAnchor provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar linkedCompartmentId: Oracle Cloud Infrastructure compartment Id (ocid) which was created + or linked by customer with resource anchor. This compartmentId is different from where resource + Anchor lives. + :vartype linkedCompartmentId: str + """ + + provisioningState: Union[str, "AzureResourceProvisioningState"] + """ResourceAnchor provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + linkedCompartmentId: str + """Oracle Cloud Infrastructure compartment Id (ocid) which was created or linked by customer with + resource anchor. This compartmentId is different from where resource Anchor lives.""" + + +class ResourceAnchorUpdate(TypedDict, total=False): + """The type used for update operations of the ResourceAnchor. + + :ivar tags: Resource tags. + :vartype tags: dict[str, str] + """ + + tags: dict[str, str] + """Resource tags.""" + + +class RestoreAutonomousDatabaseDetails(TypedDict, total=False): + """Details to restore an Oracle Autonomous Database. + + :ivar timestamp: The time to restore the database to. Required. + :vartype timestamp: str + """ + + timestamp: Required[str] + """The time to restore the database to. Required.""" + + +class ScheduledOperationsType(TypedDict, total=False): + """The list of scheduled operations. + + :ivar dayOfWeek: Day of week. Required. + :vartype dayOfWeek: "DayOfWeek" + :ivar scheduledStartTime: auto start time. value must be of ISO-8601 format HH:mm. + :vartype scheduledStartTime: str + :ivar scheduledStopTime: auto stop time. value must be of ISO-8601 format HH:mm. + :vartype scheduledStopTime: str + """ + + dayOfWeek: Required["DayOfWeek"] + """Day of week. Required.""" + scheduledStartTime: str + """auto start time. value must be of ISO-8601 format HH:mm.""" + scheduledStopTime: str + """auto stop time. value must be of ISO-8601 format HH:mm.""" + + +class ScheduledOperationsTypeUpdate(TypedDict, total=False): + """The list of scheduled operations. + + :ivar dayOfWeek: Day of week. + :vartype dayOfWeek: "DayOfWeekUpdate" + :ivar scheduledStartTime: auto start time. value must be of ISO-8601 format HH:mm. + :vartype scheduledStartTime: str + :ivar scheduledStopTime: auto stop time. value must be of ISO-8601 format HH:mm. + :vartype scheduledStopTime: str + """ + + dayOfWeek: "DayOfWeekUpdate" + """Day of week.""" + scheduledStartTime: str + """auto start time. value must be of ISO-8601 format HH:mm.""" + scheduledStopTime: str + """auto stop time. value must be of ISO-8601 format HH:mm.""" + + +class SystemData(TypedDict, total=False): + """Metadata pertaining to creation and last modification of the resource. + + :ivar createdBy: The identity that created the resource. + :vartype createdBy: str + :ivar createdByType: The type of identity that created the resource. Known values are: "User", + "Application", "ManagedIdentity", and "Key". + :vartype createdByType: Union[str, "CreatedByType"] + :ivar createdAt: The timestamp of resource creation (UTC). + :vartype createdAt: str + :ivar lastModifiedBy: The identity that last modified the resource. + :vartype lastModifiedBy: str + :ivar lastModifiedByType: The type of identity that last modified the resource. Known values + are: "User", "Application", "ManagedIdentity", and "Key". + :vartype lastModifiedByType: Union[str, "CreatedByType"] + :ivar lastModifiedAt: The timestamp of resource last modification (UTC). + :vartype lastModifiedAt: str + """ + + createdBy: str + """The identity that created the resource.""" + createdByType: Union[str, "CreatedByType"] + """The type of identity that created the resource. Known values are: \"User\", \"Application\", + \"ManagedIdentity\", and \"Key\".""" + createdAt: str + """The timestamp of resource creation (UTC).""" + lastModifiedBy: str + """The identity that last modified the resource.""" + lastModifiedByType: Union[str, "CreatedByType"] + """The type of identity that last modified the resource. Known values are: \"User\", + \"Application\", \"ManagedIdentity\", and \"Key\".""" + lastModifiedAt: str + """The timestamp of resource last modification (UTC).""" + + +class VirtualNetworkAddress(ProxyResource): + """Virtual IP resource belonging to a vm cluster resource. + + :ivar id: Fully qualified resource ID for the resource. Ex - + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. + :vartype id: str + :ivar name: The name of the resource. + :vartype name: str + :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + "Microsoft.Storage/storageAccounts". + :vartype type: str + :ivar systemData: Azure Resource Manager metadata containing createdBy and modifiedBy + information. + :vartype systemData: "SystemData" + :ivar properties: The resource-specific properties for this resource. + :vartype properties: "VirtualNetworkAddressProperties" + """ + + properties: "VirtualNetworkAddressProperties" + """The resource-specific properties for this resource.""" + + +class VirtualNetworkAddressProperties(TypedDict, total=False): + """virtualNetworkAddress resource properties. + + :ivar ipAddress: Virtual network Address address. + :vartype ipAddress: str + :ivar vmOcid: Virtual Machine OCID. + :vartype vmOcid: str + :ivar ocid: Application VIP OCID. + :vartype ocid: str + :ivar domain: Virtual network address fully qualified domain name. + :vartype domain: str + :ivar lifecycleDetails: Additional information about the current lifecycle state of the + application virtual IP (VIP) address. + :vartype lifecycleDetails: str + :ivar provisioningState: Azure resource provisioning state. Known values are: "Succeeded", + "Failed", "Canceled", and "Provisioning". + :vartype provisioningState: Union[str, "AzureResourceProvisioningState"] + :ivar lifecycleState: virtual network address lifecycle state. Known values are: + "Provisioning", "Available", "Terminating", "Terminated", and "Failed". + :vartype lifecycleState: Union[str, "VirtualNetworkAddressLifecycleState"] + :ivar timeAssigned: The date and time when the create operation for the application virtual IP + (VIP) address completed. + :vartype timeAssigned: str + """ + + ipAddress: str + """Virtual network Address address.""" + vmOcid: str + """Virtual Machine OCID.""" + ocid: str + """Application VIP OCID.""" + domain: str + """Virtual network address fully qualified domain name.""" + lifecycleDetails: str + """Additional information about the current lifecycle state of the application virtual IP (VIP) + address.""" + provisioningState: Union[str, "AzureResourceProvisioningState"] + """Azure resource provisioning state. Known values are: \"Succeeded\", \"Failed\", \"Canceled\", + and \"Provisioning\".""" + lifecycleState: Union[str, "VirtualNetworkAddressLifecycleState"] + """virtual network address lifecycle state. Known values are: \"Provisioning\", \"Available\", + \"Terminating\", \"Terminated\", and \"Failed\".""" + timeAssigned: str + """The date and time when the create operation for the application virtual IP (VIP) address + completed.""" + + +AutonomousDatabaseBaseProperties = Union[ + AutonomousDatabaseCloneProperties, + AutonomousDatabaseFromBackupTimestampProperties, + AutonomousDatabaseCrossRegionDisasterRecoveryProperties, + AutonomousDatabaseProperties, +] +ConnectionBaseProperties = Union[KafkaConnectionDetails, MicrosoftFabricConnectionDetails, OracleConnectionDetails] +DbSystemBaseProperties = Union[DbSystemProperties] diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_create.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_create.py new file mode 100644 index 000000000000..c36ee915866e --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_create.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_backup_create.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_backups.begin_create_or_update( + resource_group_name="rg000", + autonomousdatabasename="databasedb1", + adbbackupid="1711644130", + resource={ + "properties": { + "autonomousDatabaseOcid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "displayName": "Nightly Backup", + "retentionPeriodInDays": 365, + } + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseBackup_create.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_delete.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_delete.py new file mode 100644 index 000000000000..25f691fb68bf --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_delete.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_backup_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.autonomous_database_backups.begin_delete( + resource_group_name="rg000", + autonomousdatabasename="databasedb1", + adbbackupid="1711644130", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseBackup_delete.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_get.py new file mode 100644 index 000000000000..8729718c6469 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_get.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_backup_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_backups.get( + resource_group_name="rg000", + autonomousdatabasename="databasedb1", + adbbackupid="1711644130", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseBackup_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_patch.py new file mode 100644 index 000000000000..bd3b0a290c16 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backup_patch.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_backup_patch.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_backups.begin_update( + resource_group_name="rg000", + autonomousdatabasename="databasedb1", + adbbackupid="1711644130", + properties={"properties": {"retentionPeriodInDays": 0}}, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseBackup_patch.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..004b6a944871 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_create_or_update_maximum_set_gen.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_backups_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_backups.begin_create_or_update( + resource_group_name="rgopenapi", + autonomousdatabasename="databasedb1", + adbbackupid="1711644130", + resource={ + "properties": { + "autonomousDatabaseOcid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "backupType": "Full", + "displayName": "Nightly Backup", + "lifecycleState": "Active", + "ocid": "ocid1.autonomousdatabasebackup.oc1..aaaaaaaavwpj", + "retentionPeriodInDays": 365, + } + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseBackups_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_delete_maximum_set_gen.py new file mode 100644 index 000000000000..b0a20ad85e06 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_delete_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_backups_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.autonomous_database_backups.begin_delete( + resource_group_name="rgopenapi", + autonomousdatabasename="databasedb1", + adbbackupid="1711644130", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseBackups_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_get_maximum_set_gen.py new file mode 100644 index 000000000000..1f1e6328ff44 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_get_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_backups_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_backups.get( + resource_group_name="rgopenapi", + autonomousdatabasename="databasedb1", + adbbackupid="1711644130", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseBackups_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_list_by_parent_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_list_by_parent_maximum_set_gen.py index 7c25f9468ade..4031743e5fa4 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_list_by_parent_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_list_by_parent_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/AutonomousDatabaseBackups_ListByParent_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseBackups_ListByParent_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_update_maximum_set_gen.py index e22ed9416727..fcb56684ccf5 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_update_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_backups_update_maximum_set_gen.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/AutonomousDatabaseBackups_Update_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseBackups_Update_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_change_disaster_recovery_configuration.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_change_disaster_recovery_configuration.py index 5ec72fe9b26f..1a23f4c86fde 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_change_disaster_recovery_configuration.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_change_disaster_recovery_configuration.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/autonomousDatabase_changeDisasterRecoveryConfiguration.json +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_changeDisasterRecoveryConfiguration.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_set_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_set_get.py new file mode 100644 index 000000000000..54ae14a32585 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_set_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_character_set_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_character_sets.get( + location="eastus", + adbscharsetname="DATABASE", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseCharacterSet_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_set_list_by_location.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_set_list_by_location.py new file mode 100644 index 000000000000..458414c5235d --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_set_list_by_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_character_set_list_by_location.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_character_sets.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseCharacterSet_listByLocation.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_get_maximum_set_gen.py new file mode 100644 index 000000000000..5784dc5ec208 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_character_sets_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_character_sets.get( + location="eastus", + adbscharsetname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseCharacterSets_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_get_minimum_set_gen.py new file mode 100644 index 000000000000..932a92644bd1 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_character_sets_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_character_sets.get( + location="eastus", + adbscharsetname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseCharacterSets_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_list_by_location_maximum_set_gen.py new file mode 100644 index 000000000000..5380e41b6a70 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_list_by_location_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_character_sets_list_by_location_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_character_sets.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseCharacterSets_ListByLocation_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_list_by_location_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_list_by_location_minimum_set_gen.py new file mode 100644 index 000000000000..f0718865ead3 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_character_sets_list_by_location_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_character_sets_list_by_location_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_character_sets.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseCharacterSets_ListByLocation_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_clone_create.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_clone_create.py new file mode 100644 index 000000000000..4874178df05f --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_clone_create.py @@ -0,0 +1,61 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_clone_create.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_databases.begin_create_or_update( + resource_group_name="rg000", + autonomousdatabasename="databasedb1", + resource={ + "location": "eastus", + "properties": { + "adminPassword": "********", + "characterSet": "AL32UTF8", + "cloneType": "Full", + "computeCount": 2, + "computeModel": "ECPU", + "dataBaseType": "Clone", + "dataStorageSizeInTbs": 1, + "displayName": "example_autonomous_databasedb1_clone", + "ncharacterSet": "AL16UTF16", + "sourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/autonomousDatabases/databasedb1", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "vnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1", + }, + "tags": {"tagK1": "tagV1"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseClone_create.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_create.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_create.py new file mode 100644 index 000000000000..d3c4614bec86 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_create.py @@ -0,0 +1,60 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_create.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_databases.begin_create_or_update( + resource_group_name="rg000", + autonomousdatabasename="databasedb1", + resource={ + "location": "eastus", + "properties": { + "adminPassword": "********", + "characterSet": "AL32UTF8", + "computeCount": 2, + "computeModel": "ECPU", + "dataBaseType": "Regular", + "dataStorageSizeInTbs": 1, + "dbVersion": "18.4.0.0", + "displayName": "example_autonomous_databasedb1", + "ncharacterSet": "AL16UTF16", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "vnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1", + }, + "tags": {"tagK1": "tagV1"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_create.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_delete.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_delete.py new file mode 100644 index 000000000000..662a4f261dad --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_delete.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.autonomous_databases.begin_delete( + resource_group_name="rg000", + autonomousdatabasename="databasedb1", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_delete.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_failover.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_failover.py index ceddeffa1c4f..8dbbc44c8e17 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_failover.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_failover.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/autonomousDatabase_failover.json +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_failover.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_generate_wallet.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_generate_wallet.py index b46957a341fe..80dc4cdb83b2 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_generate_wallet.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_generate_wallet.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/autonomousDatabase_generateWallet.json +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_generateWallet.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_get.py new file mode 100644 index 000000000000..05f1d11d168e --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_databases.get( + resource_group_name="rg000", + autonomousdatabasename="databasedb1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_list_by_resource_group.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_list_by_resource_group.py index c565268ecb94..fee216b219c2 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_list_by_resource_group.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_list_by_resource_group.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/autonomousDatabase_listByResourceGroup.json +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_listByResourceGroup.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_list_by_subscription.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_list_by_subscription.py new file mode 100644 index 000000000000..eba08f3cdc5f --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_list_by_subscription.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_list_by_subscription.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_databases.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_listBySubscription.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_set_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_set_get.py new file mode 100644 index 000000000000..d25c3eff3dc5 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_set_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_national_character_set_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_national_character_sets.get( + location="eastus", + adbsncharsetname="NATIONAL", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseNationalCharacterSet_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_set_list_by_location.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_set_list_by_location.py new file mode 100644 index 000000000000..d8ed2e971a89 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_set_list_by_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_national_character_set_list_by_location.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_national_character_sets.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseNationalCharacterSet_listByLocation.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_get_maximum_set_gen.py new file mode 100644 index 000000000000..9ce3b3da96db --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_national_character_sets_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_national_character_sets.get( + location="eastus", + adbsncharsetname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseNationalCharacterSets_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_get_minimum_set_gen.py new file mode 100644 index 000000000000..cea55ade3b41 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_national_character_sets_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_national_character_sets.get( + location="eastus", + adbsncharsetname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseNationalCharacterSets_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_list_by_location_maximum_set_gen.py new file mode 100644 index 000000000000..2c5b797d7a1e --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_list_by_location_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_national_character_sets_list_by_location_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_national_character_sets.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseNationalCharacterSets_ListByLocation_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_list_by_location_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_list_by_location_minimum_set_gen.py new file mode 100644 index 000000000000..96b18b42438c --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_national_character_sets_list_by_location_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_national_character_sets_list_by_location_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_national_character_sets.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseNationalCharacterSets_ListByLocation_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_patch.py new file mode 100644 index 000000000000..4ef610d4e45d --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_patch.py @@ -0,0 +1,77 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_patch.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_databases.begin_update( + resource_group_name="rg000", + autonomousdatabasename="databasedb1", + properties={ + "properties": { + "adminPassword": "str", + "autonomousMaintenanceScheduleType": "str", + "backupRetentionPeriodInDays": 0, + "computeCount": 0.0, + "cpuCoreCount": 0, + "customerContacts": [{"email": "str"}], + "dataStorageSizeInGbs": 0, + "dataStorageSizeInTbs": 0, + "databaseEdition": "str", + "displayName": "str", + "isAutoScalingEnabled": bool, + "isAutoScalingForStorageEnabled": bool, + "isLocalDataGuardEnabled": bool, + "isMtlsConnectionRequired": bool, + "licenseModel": "str", + "localAdgAutoFailoverMaxDataLossLimit": 0, + "longTermBackupSchedule": { + "isDisabled": bool, + "repeatCadence": "str", + "retentionPeriodInDays": 0, + "timeOfBackup": "2020-02-20 00:00:00", + }, + "openMode": "str", + "peerDbId": "str", + "permissionLevel": "str", + "role": "str", + "scheduledOperationsList": [ + {"dayOfWeek": {"name": "str"}, "scheduledStartTime": "str", "scheduledStopTime": "str"} + ], + "whitelistedIps": ["str"], + }, + "tags": {"str": "str"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_patch.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_restore.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_restore.py index da525af79c97..a97735608567 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_restore.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_restore.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/autonomousDatabase_restore.json +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_restore.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_switchover.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_switchover.py index 3df19a1c1ee9..551f41bc7e9e 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_switchover.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_switchover.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/autonomousDatabase_switchover.json +# x-ms-original-file: 2025-11-01-preview/autonomousDatabase_switchover.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_version_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_version_get.py new file mode 100644 index 000000000000..65509226b019 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_version_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_version_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_versions.get( + location="eastus", + autonomousdbversionsname="18.4.0.0", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseVersion_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_version_list_by_location.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_version_list_by_location.py new file mode 100644 index 000000000000..21cee4317068 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_version_list_by_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_version_list_by_location.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_versions.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/autonomousDatabaseVersion_listByLocation.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_get_maximum_set_gen.py new file mode 100644 index 000000000000..59c97938c540 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_versions_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_versions.get( + location="eastus", + autonomousdbversionsname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseVersions_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_get_minimum_set_gen.py new file mode 100644 index 000000000000..60b059b25139 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_versions_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_versions.get( + location="eastus", + autonomousdbversionsname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseVersions_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_list_by_location_maximum_set_gen.py new file mode 100644 index 000000000000..1a2b67764a06 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_list_by_location_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_versions_list_by_location_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_versions.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseVersions_ListByLocation_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_list_by_location_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_list_by_location_minimum_set_gen.py new file mode 100644 index 000000000000..495714944db0 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_database_versions_list_by_location_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_database_versions_list_by_location_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_database_versions.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabaseVersions_ListByLocation_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_action_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_action_maximum_set_gen.py index a0acb54a5db5..86a7805efe94 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_action_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_action_maximum_set_gen.py @@ -32,12 +32,12 @@ def main(): response = client.autonomous_databases.begin_action( resource_group_name="rgopenapi", - autonomousdatabasename="databasedb1", + autonomousdatabasename="resource1", body={"action": "Start"}, ).result() print(response) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_Action_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/AutonomousDatabases_Action_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_change_disaster_recovery_configuration_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_change_disaster_recovery_configuration_maximum_set_gen.py index f127ab8a3303..910fa5c036df 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_change_disaster_recovery_configuration_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_change_disaster_recovery_configuration_maximum_set_gen.py @@ -43,6 +43,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_ChangeDisasterRecoveryConfiguration_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_ChangeDisasterRecoveryConfiguration_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..d6f583a58611 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_create_or_update_maximum_set_gen.py @@ -0,0 +1,154 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_databases_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_databases.begin_create_or_update( + resource_group_name="rgopenapi", + autonomousdatabasename="databasedb1", + resource={ + "location": "eastus", + "properties": { + "adminPassword": "********", + "apexDetails": { + "apexVersion": "scvpjwygbzqzevlztyfvqiaom", + "ordsVersion": "djlwvhpipimxaguklshpppjrzasbk", + }, + "autonomousDatabaseId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/autonomousDatabases/databasedb1", + "autonomousMaintenanceScheduleType": "Regular", + "backupRetentionPeriodInDays": 1, + "characterSet": "AL32UTF8", + "computeCount": 2, + "computeModel": "ECPU", + "connectionStrings": { + "allConnectionStrings": { + "high": "exdinleextbcjinutlkvnqyxhvandtihncykjzrhfdhfrxdarny", + "low": "vurudxqtummqqbnidwthmsqgujufjxwfnejdpuxkgyoxlgqhcgsfjcpzaqeioslpehjfashipdsjhkrpdobstvgxsqrgvcrpbiiabhvymdsylqsjedrimqhtttmszlaqyukopuufbtkbtwgdydrvnvkcdqmphwzpcjxlgefzrdajyczzjdpuzvhqvupbvrpvqhzoaalg", + "medium": "ishtubsuzgwtkfdqfgyxjlhehiokdvjfhwqhvmgtuksboshulroytcnubtrxxjbgoutftpzeavbldsoqjwmamgfwevhppyyeckythirzvaqujrjaiqnpyvycakhwgtuftmuxavdgdvbqxgsdqwbnqzmrzymwiydhxekenbweaghgvyveuysxqmovwodzwwfrxhtlcegekjk", + }, + "dedicated": "okoggzbidoaknwikuqpvepxvvcseukouprpfrldmakztkleeizbjf", + "high": "pggylyrivfn", + "low": "zrjsbtdbfluaipbzgcvvhyuvqoczjneihaiftkfmuvvyoldslgvvpwthieyrcoxvh", + "medium": "ebjnwenxvyeinsabrppychqbcawfxgplfacbsizltwfhpdafbkawopppqsxemlnmrbiqlstjupgdmpfcyyxgofmitbdiarrpprhntntqqjklseigycfcpmmlqiznxzliserjppmgfjatnmtbdxqtlbmrmpfbpoxmyffkkoptpayigeeefmqczroouqjxchswffywpsmyqohbyaclhsrwgqyuuyynvxyyzkche", + "profiles": [ + { + "consumerGroup": "High", + "displayName": "mqqdgidxuovxhcwrkanybxzplautekarsxbcbzlkikpmmvjrdrrkncbamdtcuksplamigrdkydjbzeurbmjgehgppovxqhuzasduwptrlyaurzszzqpztckhpdniepaglzeublbwffxebfespqyfpljlutregvlzzjo", + "hostFormat": "Fqdn", + "isRegional": True, + "protocol": "TCP", + "sessionMode": "Direct", + "syntaxFormat": "Long", + "tlsAuthentication": "Server", + "value": "bdrnwqpzbbzdipqqhnroxiuewqg", + } + ], + }, + "connectionUrls": { + "apexUrl": "epnebmudvzijxrfgabsdjewqfotqjmnxvokfhlyklhvtrjpprnqujthmceuhpfuumcbfxktppfguqduzkukxqkofoyyycljjtruyjtoiesxlrwwzonozaxetzrkpmzwasyvryvkryawxxf", + "databaseTransformsUrl": "hujiemysucgdgtasazsdtwnxmtjppugunrqnzfzneatukuyzvkfseusjaxrourznsrwxjbvzfansdcyfxnvcyghl", + "graphStudioUrl": "bucnwmwixwemqqtoozfclfzqenskkyssvcatwbptsezpzdwgnaexgxutsvaibnkawyohqklnktzlhdbhbstm", + "machineLearningNotebookUrl": "vfhnqsrabxcrjnpqaqkgnpwhxffsqkrgcijdkkvnaoangzkcbgwklufujhmlgydxueybugxzgokxbbappdslttpdthhbmxrgcicqzyjyahjeiqopuglgbjfbhufuvsogquelagbjtyotwhmecwupooitcaftldxjycgfnlilrnicqjxnsucieftadjbvptzltmgqkxhttfkkbutaxvtfzbvbbxbmpxeeyfethpofnmbbqbtlqvnfgelvtjizckgixpptkilcvrntknusvppgnobokjpepynndswcqsnewhfnlxgmownfwfnokhbqulzyuessvxxtcdcnmumbbpjchmjbvjecbbinjolmuoaixzunawlxnoqbpzkczdsubpqpdltnfydwevearrdirzaszsudcxaspozeop", + "mongoDbUrl": "dzmsqtcgsrdgwjlnrfmzcqcrkdqwmjrccxsszwdgpcygywnuurklwthgonxcnwaqcgzoexnaanwzsqwemcijuzxqbrkpvydizjraicgnspizwwnwureyey", + "ordsUrl": "lmqdgziantbczaneiqxopnaexcroelkbcgggjipzqfhoduwqodoyeghzjyuyhesewopbujxnoiziidhslxdawrfayjvxzjwfobtjrepldlmwhauiurzhbpyxsbueugddmdfindxsdjddqamwbptozzmobugnpezxyxdopripljdwnogjgrjwjfbugdkqrjwzjvavsdmgvspnzcgcjzxauqxqljmfgrtyohfppbmprmexiirvlmymxzyciaraihbwihvahyaciv", + "sqlDevWebUrl": "pktklsvlakmblcakipxy", + }, + "cpuCoreCount": 1, + "customerContacts": [ + { + "email": "agyiqecugrloatgwpvmilmvutcnyjpxzhbilhhqfvqqblfgursqelzjjnwnmpfstitmcgkovzxnstiqqwjnhwwaufbnkebpqxlqwmfnmtlkgkoxcnjwcnfqbdtokhjalagxphkuiwxtxrzuipokiuczmuwoqoebkjvhytlhtxzshwsdoywluoggznuyuozqibiwdgwqbgnyogysdjpvlowmvuvq" + } + ], + "dataBaseType": "Regular", + "dataSafeStatus": "Registering", + "dataStorageSizeInGbs": 1024, + "dataStorageSizeInTbs": 1, + "databaseEdition": "EnterpriseEdition", + "dbVersion": "18.4.0.0", + "dbWorkload": "OLTP", + "displayName": "example_autonomous_databasedb1", + "isAutoScalingEnabled": True, + "isAutoScalingForStorageEnabled": True, + "isLocalDataGuardEnabled": True, + "isMtlsConnectionRequired": True, + "isPreviewVersionWithServiceTermsAccepted": True, + "licenseModel": "BringYourOwnLicense", + "lifecycleState": "Succeeded", + "localAdgAutoFailoverMaxDataLossLimit": 1759, + "localDisasterRecoveryType": "Adg", + "localStandbyDb": { + "lagTimeInSeconds": 13, + "lifecycleDetails": "zoiyaaibuuhm", + "lifecycleState": "Provisioning", + "timeDataGuardRoleChanged": "inggk", + "timeDisasterRecoveryRoleChanged": "q", + }, + "longTermBackupSchedule": { + "isDisabled": True, + "repeatCadence": "OneTime", + "retentionPeriodInDays": 188, + "timeOfBackup": "2025-08-01T04:32:58.715Z", + }, + "ncharacterSet": "AL16UTF16", + "ocid": "ocid1..aaaaa", + "openMode": "ReadOnly", + "operationsInsightsStatus": "Enabling", + "peerDbId": "jghxnzevghltfytskymsxgyrugfedzchifwoezwbcwzzvpikoqqjcdiesbidbeqkmncodchlmktetjlgjgbaofwpwmpvckmusaunrzdrctypasgcabyjwxwzkodwugdpeprikvxygxyb", + "permissionLevel": "Restricted", + "privateEndpointIp": "rdlbhw", + "privateEndpointLabel": "worwqllbglhyakksevparfuaivc", + "remoteDisasterRecoveryConfiguration": { + "disasterRecoveryType": "Adg", + "isReplicateAutomaticBackups": True, + "isSnapshotStandby": True, + "timeSnapshotStandbyEnabledTill": "2025-08-01T04:32:58.715Z", + }, + "role": "Primary", + "scheduledOperationsList": [ + { + "dayOfWeek": {"name": "Monday"}, + "scheduledStartTime": "lwwvkazgmfremfwhckfb", + "scheduledStopTime": "hjwagzxijpiaogulmnmbuqakpqxhkjvaypjqnvbvtjddc", + } + ], + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "vnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1", + "whitelistedIps": ["1.1.1.1", "1.1.1.0/24", "1.1.2.25"], + }, + "tags": {}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_delete_maximum_set_gen.py new file mode 100644 index 000000000000..06b93a9669d6 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_delete_maximum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_databases_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.autonomous_databases.begin_delete( + resource_group_name="rgopenapi", + autonomousdatabasename="databasedb1", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_failover_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_failover_maximum_set_gen.py index 3a5a4aae8334..0d0cb455e595 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_failover_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_failover_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_Failover_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_Failover_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_generate_wallet_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_generate_wallet_maximum_set_gen.py index ee33b457a50d..2b3ef144c84e 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_generate_wallet_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_generate_wallet_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_GenerateWallet_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_GenerateWallet_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_get_maximum_set_gen.py new file mode 100644 index 000000000000..5fe7bec9cbbd --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_databases_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_databases.get( + resource_group_name="rgopenapi", + autonomousdatabasename="database1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_resource_group_maximum_set_gen.py index 3e3f0415552f..165bc0ab3882 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_resource_group_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_resource_group_maximum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_ListByResourceGroup_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_ListByResourceGroup_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_resource_group_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_resource_group_minimum_set_gen.py index af59314bd302..54eea1170c1d 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_resource_group_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_resource_group_minimum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_ListByResourceGroup_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_ListByResourceGroup_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..5044cbececad --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_databases_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_databases.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_subscription_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_subscription_minimum_set_gen.py new file mode 100644 index 000000000000..877a9579d32c --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_list_by_subscription_minimum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python autonomous_databases_list_by_subscription_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.autonomous_databases.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_ListBySubscription_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_restore_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_restore_maximum_set_gen.py index d4a2f3ba8968..01c687ec6fdf 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_restore_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_restore_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_Restore_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_Restore_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_shrink_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_shrink_maximum_set_gen.py index e9b51fde053c..2852fe13df2b 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_shrink_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_shrink_maximum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_Shrink_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_Shrink_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_switchover_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_switchover_maximum_set_gen.py index 7eb36e6fbb8e..dd221c0dcd3b 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_switchover_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_switchover_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_Switchover_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_Switchover_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_update_maximum_set_gen.py index a0cbc6ce53b9..da2fd7a1ee55 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_update_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/autonomous_databases_update_maximum_set_gen.py @@ -79,6 +79,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/AutonomousDatabases_Update_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/AutonomousDatabases_Update_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_add_storage_capacity_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_add_storage_capacity_maximum_set_gen.py index 6bf7b3ff637f..7fc4258b7d50 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_add_storage_capacity_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_add_storage_capacity_maximum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/CloudExadataInfrastructures_AddStorageCapacity_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_AddStorageCapacity_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_add_storage_capacity_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_add_storage_capacity_minimum_set_gen.py index 90dde780cbea..c7484d4cbcc4 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_add_storage_capacity_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_add_storage_capacity_minimum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/CloudExadataInfrastructures_AddStorageCapacity_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_AddStorageCapacity_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_configure_exascale_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_configure_exascale_maximum_set_gen.py index 75dfc3c0eb91..9a020a5cb67f 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_configure_exascale_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_configure_exascale_maximum_set_gen.py @@ -32,12 +32,12 @@ def main(): response = client.cloud_exadata_infrastructures.begin_configure_exascale( resource_group_name="rgopenapi", - cloudexadatainfrastructurename="Replace this value with a string matching RegExp .*", - body={"totalStorageInGbs": 19}, + cloudexadatainfrastructurename="resource1", + body={"totalStorageInGbs": 14}, ).result() print(response) -# x-ms-original-file: 2025-09-01/CloudExadataInfrastructures_ConfigureExascale_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/CloudExadataInfrastructures_ConfigureExascale_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_configure_exascale_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_configure_exascale_minimum_set_gen.py index 0b47b12843be..4ff7defa592c 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_configure_exascale_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_configure_exascale_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/CloudExadataInfrastructures_ConfigureExascale_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_ConfigureExascale_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..72b74be05975 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_create_or_update_maximum_set_gen.py @@ -0,0 +1,75 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.begin_create_or_update( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="Replace this value with a string matching RegExp .*", + resource={ + "location": "eastus", + "properties": { + "computeCount": 100, + "computeModel": "ECPU", + "customerContacts": [{"email": "noreply@oracle.com"}], + "databaseServerType": "ghnehafjgxkfpirwkmrgzphwhnftkktamoawnawztevnhbszjgkyvqvtxrnmbjqvfsthaptqbjtozuwdswkgrhmifljzjruvedeshwfdyrbzgapyyhkgxrulpttbarqsbgzoigggrsdjjlfmazpinyzmtcpugkgaiitvccklieodrscikvitdfdwczpko", + "displayName": "infra 1", + "estimatedPatchingTime": {}, + "lastMaintenanceRunId": "ocid1..aaaaa", + "lifecycleState": "Provisioning", + "maintenanceWindow": { + "customActionTimeoutInMins": 120, + "daysOfWeek": [{"name": "Monday"}], + "hoursOfDay": [0], + "isCustomActionTimeoutEnabled": True, + "isMonthlyPatchingEnabled": True, + "leadTimeInWeeks": 10, + "months": [{"name": "January"}], + "patchingMode": "Rolling", + "preference": "NoPreference", + "weeksOfMonth": [0], + }, + "nextMaintenanceRunId": "ocid1..aaaaaa", + "ocid": "ocid1..aaaaaa", + "shape": "EXADATA.X9M", + "storageCount": 10, + "storageServerType": "ikmrpsmpkbrnxpaaemmljvtvyxbtcjijsowrpislrwkgjhucszljohrnvfotgbiknehciipnkfcqkrqseqz", + }, + "tags": {}, + "zones": ["1"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_create_or_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_create_or_update_minimum_set_gen.py new file mode 100644 index 000000000000..faf2e508a933 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_create_or_update_minimum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_create_or_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.begin_create_or_update( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="Replace this value with a string matching RegExp .*", + resource={"location": "eastus", "zones": ["1"]}, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_CreateOrUpdate_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_delete_maximum_set_gen.py new file mode 100644 index 000000000000..795a0ca6a9cd --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_delete_maximum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.cloud_exadata_infrastructures.begin_delete( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="Replace this value with a string matching RegExp .*", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_delete_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_delete_minimum_set_gen.py new file mode 100644 index 000000000000..4fe9e994adf2 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_delete_minimum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_delete_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.cloud_exadata_infrastructures.begin_delete( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="Replace this value with a string matching RegExp .*", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_Delete_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_get_maximum_set_gen.py new file mode 100644 index 000000000000..0d998cbb97b8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.get( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_get_minimum_set_gen.py new file mode 100644 index 000000000000..39c8d0ec997e --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.get( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_resource_group_maximum_set_gen.py new file mode 100644 index 000000000000..7669c3315cf5 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_resource_group_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_list_by_resource_group_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_ListByResourceGroup_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_resource_group_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_resource_group_minimum_set_gen.py new file mode 100644 index 000000000000..bdbfaabfa9d1 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_resource_group_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_list_by_resource_group_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_ListByResourceGroup_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..04a69e5ad3a4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_subscription_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_subscription_minimum_set_gen.py new file mode 100644 index 000000000000..b489adbefadb --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_list_by_subscription_minimum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_list_by_subscription_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_ListBySubscription_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_update_maximum_set_gen.py new file mode 100644 index 000000000000..8fd0e5c426a4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_update_maximum_set_gen.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.begin_update( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="cloudexaInfra1", + properties={ + "properties": { + "computeCount": 9, + "customerContacts": [{"email": "dummyemail@microsoft.com"}], + "displayName": "displayName", + "maintenanceWindow": { + "customActionTimeoutInMins": 120, + "daysOfWeek": [{"name": "Monday"}], + "hoursOfDay": [0], + "isCustomActionTimeoutEnabled": True, + "isMonthlyPatchingEnabled": True, + "leadTimeInWeeks": 10, + "months": [{"name": "January"}], + "patchingMode": "Rolling", + "preference": "NoPreference", + "weeksOfMonth": [0], + }, + "storageCount": 4, + }, + "tags": {"key831": "mymrssvjc"}, + "zones": ["wl"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_Update_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_update_minimum_set_gen.py new file mode 100644 index 000000000000..0df8d322f67e --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_exadata_infrastructures_update_minimum_set_gen.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_exadata_infrastructures_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.begin_update( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="cloudexainfra1", + properties={ + "properties": { + "computeCount": 0, + "customerContacts": [{"email": "str"}], + "displayName": "str", + "maintenanceWindow": { + "customActionTimeoutInMins": 0, + "daysOfWeek": [{"name": "str"}], + "hoursOfDay": [0], + "isCustomActionTimeoutEnabled": bool, + "isMonthlyPatchingEnabled": bool, + "leadTimeInWeeks": 0, + "months": [{"name": "str"}], + "patchingMode": "str", + "preference": "str", + "weeksOfMonth": [0], + }, + "storageCount": 0, + }, + "tags": {"str": "str"}, + "zones": ["str"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudExadataInfrastructures_Update_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_add_vms_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_add_vms_maximum_set_gen.py index 9b2ebd799455..87c1641178b1 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_add_vms_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_add_vms_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/CloudVmClusters_AddVms_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_AddVms_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_add_vms_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_add_vms_minimum_set_gen.py index c03cf3e95e9a..90470c6a60e3 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_add_vms_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_add_vms_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/CloudVmClusters_AddVms_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_AddVms_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..66629e0d5ab4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_create_or_update_maximum_set_gen.py @@ -0,0 +1,100 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.begin_create_or_update( + resource_group_name="rgopenapi", + cloudvmclustername="cloudvmcluster1", + resource={ + "location": "eastus", + "properties": { + "backupSubnetCidr": "172.17.5.0/24", + "cloudExadataInfrastructureId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/cloudExadataInfrastructures/infra1", + "clusterName": "cluster1", + "compartmentId": "ocid1..aaaaaa", + "computeModel": "ECPU", + "computeNodes": ["ggficcnjgibtuqgdbbrzyckmtlhddecfcvjurboqfufqchgpvwmlcdcyyxnjivpkvsvr"], + "cpuCoreCount": 2, + "dataCollectionOptions": { + "isDiagnosticsEventsEnabled": True, + "isHealthMonitoringEnabled": True, + "isIncidentLogsEnabled": True, + }, + "dataStoragePercentage": 100, + "dataStorageSizeInTbs": 1000, + "dbNodeStorageSizeInGbs": 1000, + "dbServers": ["ocid1..aaaa"], + "diskRedundancy": "High", + "displayName": "cluster 1", + "domain": "domain1", + "fileSystemConfigurationDetails": [{"fileSystemSizeGb": 20, "mountPoint": "gukfhjlmkqfqdgb"}], + "giVersion": "19.0.0.0", + "hostname": "hostname1", + "iormConfigCache": { + "dbPlans": [{"dbName": "db1", "flashCacheLimit": "none", "share": 32}], + "lifecycleDetails": "Disabled", + "lifecycleState": "Disabled", + "objective": "LowLatency", + }, + "isLocalBackupEnabled": True, + "isSparseDiskgroupEnabled": True, + "lastUpdateHistoryEntryId": "none", + "licenseModel": "LicenseIncluded", + "lifecycleState": "Provisioning", + "memorySizeInGbs": 1000, + "nsgCidrs": [ + {"destinationPortRange": {"max": 1522, "min": 1520}, "source": "10.0.0.0/16"}, + {"destinationPortRange": {"max": 11996, "min": 9434}, "source": "10.10.0.0/24"}, + ], + "ocid": "ocid1..aaaa", + "ocpuCount": 3, + "scanDnsRecordId": "scandns1", + "scanListenerPortTcp": 1050, + "scanListenerPortTcpSsl": 1025, + "sshPublicKeys": ["ssh-key 1"], + "storageSizeInGbs": 1000, + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "subnetOcid": "ocid1..aaaaaa", + "systemVersion": "v1", + "timeZone": "UTC", + "vnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1", + "zoneId": "ocid1..aaaa", + }, + "tags": {}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_create_or_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_create_or_update_minimum_set_gen.py new file mode 100644 index 000000000000..3ecbcd0eb8e4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_create_or_update_minimum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_create_or_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.begin_create_or_update( + resource_group_name="rgopenapi", + cloudvmclustername="cloudvmcluster1", + resource={"location": "eastus"}, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_CreateOrUpdate_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_delete_maximum_set_gen.py new file mode 100644 index 000000000000..20bd9c9852e4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_delete_maximum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.cloud_vm_clusters.begin_delete( + resource_group_name="rgopenapi", + cloudvmclustername="cloudvmcluster1", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_delete_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_delete_minimum_set_gen.py new file mode 100644 index 000000000000..e9c61fd34735 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_delete_minimum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_delete_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.cloud_vm_clusters.begin_delete( + resource_group_name="rgopenapi", + cloudvmclustername="cloudvmcluster1", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_Delete_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_get_maximum_set_gen.py new file mode 100644 index 000000000000..d42165d494a4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.get( + resource_group_name="rgopenapi", + cloudvmclustername="cloudvmcluster1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_get_minimum_set_gen.py new file mode 100644 index 000000000000..ac81f03e5832 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.get( + resource_group_name="rgopenapi", + cloudvmclustername="cloudvmcluster1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_resource_group_maximum_set_gen.py new file mode 100644 index 000000000000..9132ea107a40 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_resource_group_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_list_by_resource_group_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_ListByResourceGroup_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_resource_group_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_resource_group_minimum_set_gen.py new file mode 100644 index 000000000000..92a6bfd5bbea --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_resource_group_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_list_by_resource_group_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_ListByResourceGroup_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..30f961e8c5d9 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_subscription_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_subscription_minimum_set_gen.py new file mode 100644 index 000000000000..cedf6cdd79e8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_by_subscription_minimum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_list_by_subscription_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_ListBySubscription_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_private_ip_addresses_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_private_ip_addresses_maximum_set_gen.py index 5706a4de3e29..aee00234bc8d 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_private_ip_addresses_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_private_ip_addresses_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/CloudVmClusters_ListPrivateIpAddresses_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_ListPrivateIpAddresses_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_private_ip_addresses_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_private_ip_addresses_minimum_set_gen.py index f3eb69148bb7..1e6d2ac99c32 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_private_ip_addresses_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_list_private_ip_addresses_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/CloudVmClusters_ListPrivateIpAddresses_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_ListPrivateIpAddresses_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_remove_vms_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_remove_vms_maximum_set_gen.py index 8152ee3ef1bf..c54a6f0e0c03 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_remove_vms_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_remove_vms_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/CloudVmClusters_RemoveVms_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_RemoveVms_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_remove_vms_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_remove_vms_minimum_set_gen.py index 2d266151d4d9..f1d71a0a96e8 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_remove_vms_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_remove_vms_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/CloudVmClusters_RemoveVms_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_RemoveVms_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_update_maximum_set_gen.py new file mode 100644 index 000000000000..53f3a2c577c4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_update_maximum_set_gen.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.begin_update( + resource_group_name="rgopenapi", + cloudvmclustername="cloudvmcluster1", + properties={ + "properties": { + "computeNodes": ["ggficcnjgibtuqgdbbrzyckmtlhddecfcvjurboqfufqchgpvwmlcdcyyxnjivpkvsvr"], + "cpuCoreCount": 18, + "dataCollectionOptions": { + "isDiagnosticsEventsEnabled": True, + "isHealthMonitoringEnabled": True, + "isIncidentLogsEnabled": True, + }, + "dataStorageSizeInTbs": 29, + "dbNodeStorageSizeInGbs": 24, + "displayName": "hvdyewkjqjxwzinkqnnsqxbmccteohzumz", + "fileSystemConfigurationDetails": [{"fileSystemSizeGb": 20, "mountPoint": "gukfhjlmkqfqdgb"}], + "licenseModel": "LicenseIncluded", + "memorySizeInGbs": 9, + "ocpuCount": 7, + "sshPublicKeys": ["hazhcc"], + "storageSizeInGbs": 17, + }, + "tags": {"key4668": "gtrpgiq"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_Update_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_update_minimum_set_gen.py new file mode 100644 index 000000000000..bc534b83e95c --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/cloud_vm_clusters_update_minimum_set_gen.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python cloud_vm_clusters_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.begin_update( + resource_group_name="rgopenapi", + cloudvmclustername="cloudvmcluster1", + properties={ + "properties": { + "computeNodes": ["str"], + "cpuCoreCount": 0, + "dataCollectionOptions": { + "isDiagnosticsEventsEnabled": bool, + "isHealthMonitoringEnabled": bool, + "isIncidentLogsEnabled": bool, + }, + "dataStorageSizeInTbs": 0.0, + "dbNodeStorageSizeInGbs": 0, + "displayName": "str", + "fileSystemConfigurationDetails": [{"fileSystemSizeGb": 0, "mountPoint": "str"}], + "licenseModel": "str", + "memorySizeInGbs": 0, + "ocpuCount": 0.0, + "sshPublicKeys": ["str"], + "storageSizeInGbs": 0, + }, + "tags": {"str": "str"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/CloudVmClusters_Update_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_editions_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_editions_get_maximum_set_gen.py new file mode 100644 index 000000000000..fc5e41352d49 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_editions_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python database_editions_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.database_editions.get( + location="eastus", + databaseeditionname="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/DatabaseEditions_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_editions_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_editions_list_by_location_maximum_set_gen.py new file mode 100644 index 000000000000..226bdfcdeaaa --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_editions_list_by_location_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python database_editions_list_by_location_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.database_editions.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/DatabaseEditions_ListByLocation_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_system_shape_resources_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_system_shape_resources_get_maximum_set_gen.py new file mode 100644 index 000000000000..e8088c44a0de --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_system_shape_resources_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python database_system_shape_resources_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.database_system_shape_resources.get( + location="eastus", + databasesystemshapename="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/DatabaseSystemShapeResources_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_system_shape_resources_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_system_shape_resources_list_by_location_maximum_set_gen.py new file mode 100644 index 000000000000..2b65c917d901 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/database_system_shape_resources_list_by_location_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python database_system_shape_resources_list_by_location_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.database_system_shape_resources.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/DatabaseSystemShapeResources_ListByLocation_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action.py index 8c4bde037895..8812c89f2077 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/dbNodes_action.json +# x-ms-original-file: 2025-11-01-preview/dbNodes_action.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action_maximum_set_gen.py index f1bb7bca38ea..599520d716fb 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action_maximum_set_gen.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/DbNodes_Action_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/DbNodes_Action_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action_minimum_set_gen.py index cd73875bc99e..fc55b0f882c1 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_action_minimum_set_gen.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/DbNodes_Action_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/DbNodes_Action_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_get.py new file mode 100644 index 000000000000..163d9465b8fe --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_get.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_nodes_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_nodes.get( + resource_group_name="rg000", + cloudvmclustername="cluster1", + dbnodeocid="ocid1....aaaaaa", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/dbNodes_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_get_maximum_set_gen.py new file mode 100644 index 000000000000..d8d4297a3ee4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_get_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_nodes_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_nodes.get( + resource_group_name="rgopenapi", + cloudvmclustername="cloudvmcluster1", + dbnodeocid="weraeefrwlkjejfiepwcd", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DbNodes_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_get_minimum_set_gen.py new file mode 100644 index 000000000000..a2ec82142a1a --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_get_minimum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_nodes_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_nodes.get( + resource_group_name="rgopenapi", + cloudvmclustername="Replace this value with a string matching RegExp .*", + dbnodeocid="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DbNodes_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_list_by_parent_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_list_by_parent_maximum_set_gen.py index 9031fb248daf..fd6f0c565069 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_list_by_parent_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_list_by_parent_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/DbNodes_ListByParent_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/DbNodes_ListByParent_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_list_by_parent_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_list_by_parent_minimum_set_gen.py index c9b09cbd7c65..b543f80c7b16 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_list_by_parent_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_nodes_list_by_parent_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/DbNodes_ListByParent_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/DbNodes_ListByParent_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_get.py new file mode 100644 index 000000000000..39e02afd37d8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_get.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_servers_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_servers.get( + resource_group_name="rg000", + cloudexadatainfrastructurename="infra1", + dbserverocid="ocid1....aaaaaa", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/dbServers_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_get_maximum_set_gen.py new file mode 100644 index 000000000000..fe3c23105b40 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_get_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_servers_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_servers.get( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="Replace this value with a string matching RegExp .*", + dbserverocid="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DbServers_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_get_minimum_set_gen.py new file mode 100644 index 000000000000..533f2aef8fc8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_get_minimum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_servers_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_servers.get( + resource_group_name="rgopenapi", + cloudexadatainfrastructurename="Replace this value with a string matching RegExp .*", + dbserverocid="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DbServers_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_list_by_parent_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_list_by_parent_maximum_set_gen.py index 725b1743f858..101d39305f9d 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_list_by_parent_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_list_by_parent_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/DbServers_ListByParent_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/DbServers_ListByParent_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_list_by_parent_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_list_by_parent_minimum_set_gen.py index f57483ba29c2..584615ee92f8 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_list_by_parent_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_servers_list_by_parent_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/DbServers_ListByParent_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/DbServers_ListByParent_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_get.py new file mode 100644 index 000000000000..94671240b7c1 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_system_shapes_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_system_shapes.get( + location="eastus", + dbsystemshapename="EXADATA.X9M", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/dbSystemShapes_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_get_maximum_set_gen.py new file mode 100644 index 000000000000..e0800dcf08ba --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_system_shapes_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_system_shapes.get( + location="eastus", + dbsystemshapename="dbsystemshape1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DbSystemShapes_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_get_minimum_set_gen.py new file mode 100644 index 000000000000..a370d3719ff4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_system_shapes_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_system_shapes.get( + location="eastus", + dbsystemshapename="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DbSystemShapes_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location.py index c0ac3bbcd6b6..1620fb3446da 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/dbSystemShapes_listByLocation.json +# x-ms-original-file: 2025-11-01-preview/dbSystemShapes_listByLocation.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location_maximum_set_gen.py index 1eec178ba3c2..2f771cdf3b22 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location_maximum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/DbSystemShapes_ListByLocation_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/DbSystemShapes_ListByLocation_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location_minimum_set_gen.py index c98f5b4104f6..79fc5e70e675 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_system_shapes_list_by_location_minimum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/DbSystemShapes_ListByLocation_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/DbSystemShapes_ListByLocation_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..04c3f31cac3f --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_create_or_update_maximum_set_gen.py @@ -0,0 +1,82 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_systems_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_systems.begin_create_or_update( + resource_group_name="rgopenapi", + db_system_name="resource1", + resource={ + "location": "eastus", + "properties": { + "adminPassword": "********", + "characterSet": "example", + "clusterName": "puw", + "computeCount": 10, + "computeModel": "ECPU", + "dataCollectionOptions": { + "isDiagnosticsEventsEnabled": True, + "isHealthMonitoringEnabled": True, + "isIncidentLogsEnabled": True, + }, + "databaseEdition": "StandardEdition", + "dbSystemOptions": {"storageManagement": "LVM"}, + "dbVersion": "example", + "diskRedundancy": "High", + "displayName": "resource1", + "domain": "l", + "gridImageOcid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "hostname": "b", + "initialDataStorageSizeInGb": 40, + "licenseModel": "LicenseIncluded", + "lifecycleState": "Provisioning", + "ncharacterSet": "fkdieg", + "networkAnchorId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/networkAnchors/networkanchor1", + "nodeCount": 11, + "ocid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "pdbName": "resource1", + "resourceAnchorId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/resourceAnchors/anchor1", + "shape": "example", + "source": "None", + "sshPublicKeys": ["example"], + "storageVolumePerformanceMode": "Balanced", + "timeZone": "2026-06-01T00:00:00Z", + }, + "tags": {"key1855": "hczjcgfrxqk"}, + "zones": ["example"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/DbSystems_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_delete_maximum_set_gen.py new file mode 100644 index 000000000000..6fe31e49dfc8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_delete_maximum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_systems_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.db_systems.begin_delete( + resource_group_name="rgopenapi", + db_system_name="resource1", + ).result() + + +# x-ms-original-file: 2026-06-01/DbSystems_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_delete_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_delete_minimum_set_gen.py new file mode 100644 index 000000000000..19deb5b48bde --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_delete_minimum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_systems_delete_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.db_systems.begin_delete( + resource_group_name="rgopenapi", + db_system_name="dbsystem1", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/DbSystems_Delete_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_get_maximum_set_gen.py new file mode 100644 index 000000000000..d3879cf83f20 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_systems_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_systems.get( + resource_group_name="rgopenapi", + db_system_name="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/DbSystems_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_resource_group_maximum_set_gen.py new file mode 100644 index 000000000000..ae39c9ef8d49 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_resource_group_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_systems_list_by_resource_group_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_systems.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/DbSystems_ListByResourceGroup_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_resource_group_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_resource_group_minimum_set_gen.py new file mode 100644 index 000000000000..dbc6ae8f5409 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_resource_group_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_systems_list_by_resource_group_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_systems.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/DbSystems_ListByResourceGroup_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..2eea2d440909 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_systems_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_systems.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/DbSystems_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_subscription_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_subscription_minimum_set_gen.py new file mode 100644 index 000000000000..510c10fbee04 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_list_by_subscription_minimum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_systems_list_by_subscription_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_systems.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/DbSystems_ListBySubscription_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_update_maximum_set_gen.py new file mode 100644 index 000000000000..a2a45ebeea68 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_systems_update_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_systems_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_systems.begin_update( + resource_group_name="rgopenapi", + db_system_name="resource1", + properties={"properties": {"source": "None"}, "tags": {"key7827": "example"}, "zones": ["example"]}, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/DbSystems_Update_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_versions_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_versions_get_maximum_set_gen.py new file mode 100644 index 000000000000..c56c81d6a089 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_versions_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python db_versions_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.db_versions.get( + location="eastus", + dbversionsname="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/DbVersions_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_versions_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_versions_list_by_location_maximum_set_gen.py index 9d88fb6caff2..0f8817a5d250 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_versions_list_by_location_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/db_versions_list_by_location_maximum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/DbVersions_ListByLocation_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/DbVersions_ListByLocation_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_get.py new file mode 100644 index 000000000000..0bf99bf869ea --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_views_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_views.get( + location="eastus", + dnsprivateviewocid="ocid1....aaaaaa", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/dnsPrivateViews_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_get_maximum_set_gen.py new file mode 100644 index 000000000000..476c8b9880dd --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_views_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_views.get( + location="eastus", + dnsprivateviewocid="weasefewawelkrlweircicceiwpdic", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DnsPrivateViews_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_get_minimum_set_gen.py new file mode 100644 index 000000000000..4d7772bee587 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_views_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_views.get( + location="eastus", + dnsprivateviewocid="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DnsPrivateViews_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_list_by_location.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_list_by_location.py new file mode 100644 index 000000000000..2fc9a27ad621 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_list_by_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_views_list_by_location.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_views.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/dnsPrivateViews_listByLocation.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_list_by_location_maximum_set_gen.py new file mode 100644 index 000000000000..ccd7d7887072 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_list_by_location_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_views_list_by_location_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_views.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/DnsPrivateViews_ListByLocation_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_list_by_location_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_list_by_location_minimum_set_gen.py new file mode 100644 index 000000000000..76576255dac5 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_views_list_by_location_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_views_list_by_location_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_views.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/DnsPrivateViews_ListByLocation_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_get.py new file mode 100644 index 000000000000..21f15f04cdbc --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_zones_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_zones.get( + location="eastus", + dnsprivatezonename="example-dns-private-zone", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/dnsPrivateZones_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_get_maximum_set_gen.py new file mode 100644 index 000000000000..2ac4ed058e82 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_zones_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_zones.get( + location="eastus", + dnsprivatezonename="dnsprivatezone1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DnsPrivateZones_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_get_minimum_set_gen.py new file mode 100644 index 000000000000..1ae8a354eca0 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_zones_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_zones.get( + location="eastus", + dnsprivatezonename="dnsprivatezone1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/DnsPrivateZones_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_list_by_location.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_list_by_location.py new file mode 100644 index 000000000000..964e646b2d9b --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_list_by_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_zones_list_by_location.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_zones.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/dnsPrivateZones_listByLocation.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_list_by_location_maximum_set_gen.py new file mode 100644 index 000000000000..6ef3cd41b1e8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_list_by_location_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_zones_list_by_location_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_zones.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/DnsPrivateZones_ListByLocation_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_list_by_location_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_list_by_location_minimum_set_gen.py new file mode 100644 index 000000000000..40a0907042eb --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/dns_private_zones_list_by_location_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python dns_private_zones_list_by_location_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.dns_private_zones.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/DnsPrivateZones_ListByLocation_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_add_storage_capacity.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_add_storage_capacity.py index 7d687f178d96..72627f0be6e4 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_add_storage_capacity.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_add_storage_capacity.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/exaInfra_addStorageCapacity.json +# x-ms-original-file: 2025-11-01-preview/exaInfra_addStorageCapacity.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_create.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_create.py new file mode 100644 index 000000000000..940b049fc7d8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_create.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exa_infra_create.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.begin_create_or_update( + resource_group_name="rg000", + cloudexadatainfrastructurename="infra1", + resource={ + "location": "eastus", + "properties": {"computeCount": 100, "displayName": "infra 1", "shape": "EXADATA.X9M", "storageCount": 10}, + "tags": {"tagK1": "tagV1"}, + "zones": ["1"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/exaInfra_create.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_delete.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_delete.py new file mode 100644 index 000000000000..cbf45f50a686 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_delete.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exa_infra_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.cloud_exadata_infrastructures.begin_delete( + resource_group_name="rg000", + cloudexadatainfrastructurename="infra1", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/exaInfra_delete.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_get.py new file mode 100644 index 000000000000..a4129cdd40c3 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exa_infra_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.get( + resource_group_name="rg000", + cloudexadatainfrastructurename="infra1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/exaInfra_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_list_by_resource_group.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_list_by_resource_group.py new file mode 100644 index 000000000000..5634f7a7f7b8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_list_by_resource_group.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exa_infra_list_by_resource_group.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.list_by_resource_group( + resource_group_name="rg000", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/exaInfra_listByResourceGroup.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_list_by_subscription.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_list_by_subscription.py new file mode 100644 index 000000000000..105d8b2bb91f --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_list_by_subscription.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exa_infra_list_by_subscription.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/exaInfra_listBySubscription.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_patch.py new file mode 100644 index 000000000000..14f1f2e574fb --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exa_infra_patch.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exa_infra_patch.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_exadata_infrastructures.begin_update( + resource_group_name="rg000", + cloudexadatainfrastructurename="infra1", + properties={ + "properties": { + "computeCount": 0, + "customerContacts": [{"email": "str"}], + "displayName": "str", + "maintenanceWindow": { + "customActionTimeoutInMins": 0, + "daysOfWeek": [{"name": "str"}], + "hoursOfDay": [0], + "isCustomActionTimeoutEnabled": bool, + "isMonthlyPatchingEnabled": bool, + "leadTimeInWeeks": 0, + "months": [{"name": "str"}], + "patchingMode": "str", + "preference": "str", + "weeksOfMonth": [0], + }, + "storageCount": 0, + }, + "tags": {"str": "str"}, + "zones": ["str"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/exaInfra_patch.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..f4ae9955dc84 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_create_or_update_maximum_set_gen.py @@ -0,0 +1,93 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.begin_create_or_update( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="resource1", + resource={ + "location": "eastus", + "properties": { + "backupSubnetCidr": "example", + "backupSubnetOcid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "clusterName": "lnmm", + "dataCollectionOptions": { + "isDiagnosticsEventsEnabled": True, + "isHealthMonitoringEnabled": True, + "isIncidentLogsEnabled": True, + }, + "displayName": "resource1", + "domain": "tzc", + "enabledEcpuCount": 0, + "exascaleDbStorageVaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/exascaleDbStorageVaults/vault1", + "gridImageOcid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "gridImageType": "ReleaseUpdate", + "hostname": "resource1", + "iormConfigCache": { + "dbPlans": [{"dbName": "db1", "flashCacheLimit": "none", "share": 32}], + "lifecycleDetails": "Disabled", + "lifecycleState": "Disabled", + "objective": "LowLatency", + }, + "licenseModel": "LicenseIncluded", + "lifecycleState": "Provisioning", + "nodeCount": 5, + "nsgCidrs": [{"destinationPortRange": {"max": 1522, "min": 1520}, "source": "10.0.0.0/16"}], + "ocid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "privateZoneOcid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "scanDnsRecordId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "scanListenerPortTcp": 29, + "scanListenerPortTcpSsl": 6, + "shape": "kwxhzzn", + "shapeAttribute": "SMART_STORAGE", + "snapshotFileSystemStorage": {"totalSizeInGbs": 27}, + "sshPublicKeys": ["ocw"], + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "subnetOcid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "systemVersion": "example", + "timeZone": "2026-06-01T00:00:00Z", + "totalEcpuCount": 33, + "totalFileSystemStorage": {"totalSizeInGbs": 27}, + "vmFileSystemStorage": {"totalSizeInGbs": 27}, + "vnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1", + "zoneOcid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + }, + "tags": {"key9568": "fwg"}, + "zones": ["uwwf"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/ExadbVmClusters_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_create_or_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_create_or_update_minimum_set_gen.py new file mode 100644 index 000000000000..dd8cff56f57a --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_create_or_update_minimum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_create_or_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.begin_create_or_update( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="exadbVmClusterName1", + resource={"location": "eastus"}, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/ExadbVmClusters_CreateOrUpdate_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_delete_maximum_set_gen.py new file mode 100644 index 000000000000..d450ea48ee2b --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_delete_maximum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.exadb_vm_clusters.begin_delete( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="resource1", + ).result() + + +# x-ms-original-file: 2026-06-01/ExadbVmClusters_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_delete_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_delete_minimum_set_gen.py new file mode 100644 index 000000000000..4eb9d6468358 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_delete_minimum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_delete_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.exadb_vm_clusters.begin_delete( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="exadaVmClusterName1", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/ExadbVmClusters_Delete_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_get_maximum_set_gen.py new file mode 100644 index 000000000000..dbde1dbec309 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.get( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/ExadbVmClusters_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_get_minimum_set_gen.py new file mode 100644 index 000000000000..3564d6ac3fb2 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.get( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="exadbVmClusterName1*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/ExadbVmClusters_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_resource_group_maximum_set_gen.py new file mode 100644 index 000000000000..409e44e8e0d1 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_resource_group_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_list_by_resource_group_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/ExadbVmClusters_ListByResourceGroup_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_resource_group_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_resource_group_minimum_set_gen.py new file mode 100644 index 000000000000..9a2ad9a4641d --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_resource_group_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_list_by_resource_group_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/ExadbVmClusters_ListByResourceGroup_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..6fbab9d7e0d4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/ExadbVmClusters_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_subscription_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_subscription_minimum_set_gen.py new file mode 100644 index 000000000000..4eacab798571 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_list_by_subscription_minimum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_list_by_subscription_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/ExadbVmClusters_ListBySubscription_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_remove_vms_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_remove_vms_maximum_set_gen.py index c4373fdfa766..8c0721bbf974 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_remove_vms_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_remove_vms_maximum_set_gen.py @@ -33,11 +33,11 @@ def main(): response = client.exadb_vm_clusters.begin_remove_vms( resource_group_name="rgopenapi", - exadb_vm_cluster_name="exadbVmClusterName1", + exadb_vm_cluster_name="resource1", body={ "dbNodes": [ { - "dbNodeId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Oracle.Database/exadbVmClusters/vmCluster/dbNodes/dbNodeName" + "dbNodeId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/exadbVmClusters/vmcluster1/dbNodes/node1" } ] }, @@ -45,6 +45,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/ExadbVmClusters_RemoveVms_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/ExadbVmClusters_RemoveVms_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_remove_vms_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_remove_vms_minimum_set_gen.py index 4b406c5b2c3e..382ed893c992 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_remove_vms_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_remove_vms_minimum_set_gen.py @@ -45,6 +45,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/ExadbVmClusters_RemoveVms_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/ExadbVmClusters_RemoveVms_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_update_maximum_set_gen.py new file mode 100644 index 000000000000..cce11463216a --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_update_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.begin_update( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="resource1", + properties={"properties": {"nodeCount": 12}, "tags": {"key1801": "example"}, "zones": ["example"]}, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/ExadbVmClusters_Update_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_update_minimum_set_gen.py new file mode 100644 index 000000000000..6c86e66558fd --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exadb_vm_clusters_update_minimum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exadb_vm_clusters_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exadb_vm_clusters.begin_update( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="exadbvmclusterq", + properties={"properties": {"nodeCount": 0}, "tags": {"str": "str"}, "zones": ["str"]}, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/ExadbVmClusters_Update_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_action_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_action_maximum_set_gen.py index abb700f066ca..0aa880c1d4b1 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_action_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_action_maximum_set_gen.py @@ -32,13 +32,13 @@ def main(): response = client.exascale_db_nodes.begin_action( resource_group_name="rgopenapi", - exadb_vm_cluster_name="exadbvmcluster1", - exascale_db_node_name="exascaledbnode1", + exadb_vm_cluster_name="resource1", + exascale_db_node_name="resource1", body={"action": "Start"}, ).result() print(response) -# x-ms-original-file: 2025-09-01/ExascaleDbNodes_Action_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/ExascaleDbNodes_Action_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_action_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_action_minimum_set_gen.py index 4f9b67fafeab..77eb9f8c56b8 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_action_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_action_minimum_set_gen.py @@ -39,6 +39,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/ExascaleDbNodes_Action_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/ExascaleDbNodes_Action_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_get_maximum_set_gen.py new file mode 100644 index 000000000000..3aa073d76596 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_get_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exascale_db_nodes_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exascale_db_nodes.get( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="resource1", + exascale_db_node_name="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/ExascaleDbNodes_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_get_minimum_set_gen.py new file mode 100644 index 000000000000..a67c88558091 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_get_minimum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exascale_db_nodes_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exascale_db_nodes.get( + resource_group_name="rgopenapi", + exadb_vm_cluster_name="vmcluster", + exascale_db_node_name="exascaledbnode1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/ExascaleDbNodes_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_list_by_parent_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_list_by_parent_maximum_set_gen.py index eee10559020a..3d3c177cfe02 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_list_by_parent_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_list_by_parent_maximum_set_gen.py @@ -32,12 +32,12 @@ def main(): response = client.exascale_db_nodes.list_by_parent( resource_group_name="rgopenapi", - exadb_vm_cluster_name="vmcluster", + exadb_vm_cluster_name="resource1", ) for item in response: print(item) -# x-ms-original-file: 2025-09-01/ExascaleDbNodes_ListByParent_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/ExascaleDbNodes_ListByParent_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_list_by_parent_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_list_by_parent_minimum_set_gen.py index dca6c89e06bd..9c7b6386a18e 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_list_by_parent_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_nodes_list_by_parent_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/ExascaleDbNodes_ListByParent_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/ExascaleDbNodes_ListByParent_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_create_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_create_maximum_set_gen.py index d9c85e86bf1e..53eda30118c5 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_create_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_create_maximum_set_gen.py @@ -33,26 +33,29 @@ def main(): response = client.exascale_db_storage_vaults.begin_create( resource_group_name="rgopenapi", - exascale_db_storage_vault_name="storagevault1", + exascale_db_storage_vault_name="resource1", resource={ - "location": "zuoudqbvlxerpjtlfooyqlb", + "location": "eastus", "properties": { "additionalFlashCacheInPercent": 0, - "description": "kgqvxvtegzwyppegpvqxnlslvetbjlgveofcpjddenhbpocyzwtswaeaetqkipcxyhedsymuljalirryldlbviuvidhssyiwodacajjnbpkbvbvzwzsjctsidchalyjkievnivikwnnypaojcvhmokddstxwiqxmbfmbvglfimseguwyvibwzllggjtwejdfgezoeuvjjbsyfozswihydzuscjrqnklewongumiljeordhqlsclwlmftzdoey", - "displayName": "storagevault1", - "highCapacityDatabaseStorage": {"availableSizeInGbs": 4, "totalSizeInGbs": 12}, - "highCapacityDatabaseStorageInput": {"totalSizeInGbs": 1}, + "autoscaleLimitInGbs": 10, + "description": "example", + "displayName": "resource1", + "exadataInfrastructureId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/cloudExadataInfrastructures/infra1", + "highCapacityDatabaseStorage": {"availableSizeInGbs": 26, "totalSizeInGbs": 18}, + "highCapacityDatabaseStorageInput": {"totalSizeInGbs": 24}, + "isAutoscaleEnabled": True, "lifecycleState": "Provisioning", "ocid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", - "timeZone": "hyjcftlal", + "timeZone": "2026-06-01T00:00:00Z", }, - "tags": {"key4521": "rrgotvwzckepkhgkbz"}, - "zones": ["npqjhyekyumfybqas"], + "tags": {"key4308": "example"}, + "zones": ["zsw"], }, ).result() print(response) -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_Create_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/ExascaleDbStorageVaults_Create_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_create_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_create_minimum_set_gen.py index 97e1d00c58f0..cae4305dae3a 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_create_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_create_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_Create_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/ExascaleDbStorageVaults_Create_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_delete_maximum_set_gen.py index bb2d56f2e0ca..de44b2b68845 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_delete_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_delete_maximum_set_gen.py @@ -32,10 +32,10 @@ def main(): client.exascale_db_storage_vaults.begin_delete( resource_group_name="rgopenapi", - exascale_db_storage_vault_name="storagevault1", + exascale_db_storage_vault_name="resource1", ).result() -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_Delete_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/ExascaleDbStorageVaults_Delete_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_delete_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_delete_minimum_set_gen.py index 82a1f8ca1b97..7e165b6836f3 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_delete_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_delete_minimum_set_gen.py @@ -36,6 +36,6 @@ def main(): ).result() -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_Delete_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/ExascaleDbStorageVaults_Delete_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_get_maximum_set_gen.py index 76c8d4f006c2..274fdab18cf6 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_get_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_get_maximum_set_gen.py @@ -32,11 +32,11 @@ def main(): response = client.exascale_db_storage_vaults.get( resource_group_name="rgopenapi", - exascale_db_storage_vault_name="storagevault1", + exascale_db_storage_vault_name="resource1", ) print(response) -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_Get_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/ExascaleDbStorageVaults_Get_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_get_minimum_set_gen.py index 4459209b1d75..1335fdebfaec 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_get_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_get_minimum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_Get_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/ExascaleDbStorageVaults_Get_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_resource_group_maximum_set_gen.py index a7d6cd1aeec5..4b49f719e765 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_resource_group_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_resource_group_maximum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_ListByResourceGroup_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/ExascaleDbStorageVaults_ListByResourceGroup_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_resource_group_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_resource_group_minimum_set_gen.py index b902bc84e132..1369ebb8f109 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_resource_group_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_resource_group_minimum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_ListByResourceGroup_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/ExascaleDbStorageVaults_ListByResourceGroup_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_subscription_maximum_set_gen.py index cbebca01477d..22276af39b10 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_subscription_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_subscription_maximum_set_gen.py @@ -35,6 +35,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_ListBySubscription_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/ExascaleDbStorageVaults_ListBySubscription_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_subscription_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_subscription_minimum_set_gen.py index 91df1b6cb6a2..95b426bc2a7a 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_subscription_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_list_by_subscription_minimum_set_gen.py @@ -35,6 +35,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_ListBySubscription_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/ExascaleDbStorageVaults_ListBySubscription_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_update_maximum_set_gen.py index bee4e182eff6..6a3dacbce1e3 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_update_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_update_maximum_set_gen.py @@ -32,12 +32,12 @@ def main(): response = client.exascale_db_storage_vaults.begin_update( resource_group_name="rgopenapi", - exascale_db_storage_vault_name="storagevault1", - properties={"tags": {"key6486": "fxbuboilsiapodppdtfls"}}, + exascale_db_storage_vault_name="resource1", + properties={"tags": {"key4191": "dwwnuodzbkj"}}, ).result() print(response) -# x-ms-original-file: 2025-09-01/ExascaleDbStorageVaults_Update_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/ExascaleDbStorageVaults_Update_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_update_minimum_set_gen.py new file mode 100644 index 000000000000..88d9ea75e062 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/exascale_db_storage_vaults_update_minimum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python exascale_db_storage_vaults_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.exascale_db_storage_vaults.begin_update( + resource_group_name="rgopenapi", + exascale_db_storage_vault_name="storagevault1", + properties={"tags": {"str": "str"}}, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/ExascaleDbStorageVaults_Update_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_get_maximum_set_gen.py index b5f4161e8161..2cc93140ab44 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_get_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_get_maximum_set_gen.py @@ -32,11 +32,11 @@ def main(): response = client.flex_components.get( location="eastus", - flex_component_name="flexname1", + flex_component_name="resource1", ) print(response) -# x-ms-original-file: 2025-09-01/FlexComponents_Get_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/FlexComponents_Get_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_list_by_parent_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_list_by_parent_maximum_set_gen.py index 2f8d76d5e47f..a3373fb0b798 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_list_by_parent_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_list_by_parent_maximum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/FlexComponents_ListByParent_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/FlexComponents_ListByParent_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_list_by_parent_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_list_by_parent_minimum_set_gen.py index 002b6aa97ad9..5891e5c4e6fd 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_list_by_parent_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/flex_components_list_by_parent_minimum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/FlexComponents_ListByParent_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/FlexComponents_ListByParent_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_get_maximum_set_gen.py index 3d8aabf28521..732eee6f0e55 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_get_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_get_maximum_set_gen.py @@ -32,12 +32,12 @@ def main(): response = client.gi_minor_versions.get( location="eastus", - giversionname="19.0.0.0", - gi_minor_version_name="minorversion", + giversionname="resource1", + gi_minor_version_name="resource1", ) print(response) -# x-ms-original-file: 2025-09-01/GiMinorVersions_Get_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/GiMinorVersions_Get_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_list_by_parent_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_list_by_parent_maximum_set_gen.py index 631a0a246cf7..005afb45ac40 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_list_by_parent_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_list_by_parent_maximum_set_gen.py @@ -32,12 +32,12 @@ def main(): response = client.gi_minor_versions.list_by_parent( location="eastus", - giversionname="name1", + giversionname="resource1", ) for item in response: print(item) -# x-ms-original-file: 2025-09-01/GiMinorVersions_ListByParent_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/GiMinorVersions_ListByParent_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_list_by_parent_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_list_by_parent_minimum_set_gen.py index bc430e90d9c7..feb47bb57008 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_list_by_parent_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_minor_versions_list_by_parent_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/GiMinorVersions_ListByParent_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/GiMinorVersions_ListByParent_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_get.py new file mode 100644 index 000000000000..fd5895d6a04d --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python gi_versions_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.gi_versions.get( + location="eastus", + giversionname="19.0.0.0", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/giVersions_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_get_maximum_set_gen.py new file mode 100644 index 000000000000..5cd432dc8f7e --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python gi_versions_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.gi_versions.get( + location="eastus", + giversionname="giversion1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/GiVersions_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_get_minimum_set_gen.py new file mode 100644 index 000000000000..8b46a778ca4b --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python gi_versions_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.gi_versions.get( + location="eastus", + giversionname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/GiVersions_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_list_by_location_maximum_set_gen.py index 115ebd9b7db2..1308f0d2496a 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_list_by_location_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_list_by_location_maximum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/GiVersions_ListByLocation_MaximumSet_Gen.json +# x-ms-original-file: 2026-06-01/GiVersions_ListByLocation_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_list_by_location_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_list_by_location_minimum_set_gen.py index 34e862119c3c..482def617f99 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_list_by_location_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/gi_versions_list_by_location_minimum_set_gen.py @@ -37,6 +37,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/GiVersions_ListByLocation_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/GiVersions_ListByLocation_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_assign_deployment_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_assign_deployment_maximum_set_gen.py new file mode 100644 index 000000000000..608104685fa8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_assign_deployment_maximum_set_gen.py @@ -0,0 +1,46 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_assign_deployment_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_connections.begin_assign_deployment( + resource_group_name="rgopenapi", + golden_gate_connection_name="resource1", + body={ + "deploymentId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/resources/resource1" + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_AssignDeployment_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..dcb182712e88 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_create_or_update_maximum_set_gen.py @@ -0,0 +1,61 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_connections.begin_create_or_update( + resource_group_name="rgopenapi", + golden_gate_connection_name="resource1", + resource={ + "location": "rtnrfzgdo", + "properties": { + "compartmentId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "connectionType": "ConnectionBaseProperties", + "displayName": "resource1", + "doesUseSecretIds": True, + "keyId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "lifecycleState": "CREATING", + "networkAnchorId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/networkAnchors/networkanchor1", + "ocid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "resourceAnchorId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/resourceAnchors/anchor1", + "routingMethod": "SHARED_SERVICE_ENDPOINT", + "vaultId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + }, + "tags": {"key7255": "example"}, + "zones": ["example"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_delete_maximum_set_gen.py new file mode 100644 index 000000000000..3d13b07e0e01 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_delete_maximum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.golden_gate_connections.begin_delete( + resource_group_name="rgopenapi", + golden_gate_connection_name="resource1", + ).result() + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_get_assigned_deployment_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_get_assigned_deployment_maximum_set_gen.py new file mode 100644 index 000000000000..2fd5b96561fb --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_get_assigned_deployment_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_get_assigned_deployment_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_connections.get_assigned_deployment( + resource_group_name="rgopenapi", + golden_gate_connection_name="resource1", + assignment_id="assignment1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_GetAssignedDeployment_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_get_maximum_set_gen.py new file mode 100644 index 000000000000..494b8630fcc9 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_connections.get( + resource_group_name="rgopenapi", + golden_gate_connection_name="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_list_assigned_deployments_by_parent_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_list_assigned_deployments_by_parent_maximum_set_gen.py new file mode 100644 index 000000000000..bb909b319d87 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_list_assigned_deployments_by_parent_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_list_assigned_deployments_by_parent_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_connections.list_assigned_deployments_by_parent( + resource_group_name="rgopenapi", + golden_gate_connection_name="resource1", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_ListAssignedDeploymentsByParent_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_list_by_resource_group_maximum_set_gen.py new file mode 100644 index 000000000000..80c1d2613f1e --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_list_by_resource_group_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_list_by_resource_group_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_connections.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_ListByResourceGroup_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..1d6fbbc96f96 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_connections.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_unassign_deployment_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_unassign_deployment_maximum_set_gen.py new file mode 100644 index 000000000000..a1c265145f88 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_unassign_deployment_maximum_set_gen.py @@ -0,0 +1,46 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_unassign_deployment_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_connections.begin_unassign_deployment( + resource_group_name="rgopenapi", + golden_gate_connection_name="resource1", + body={ + "deploymentId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/resources/resource1" + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_UnassignDeployment_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_update_maximum_set_gen.py new file mode 100644 index 000000000000..9a3a4b8f1693 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_connections_update_maximum_set_gen.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_connections_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_connections.begin_update( + resource_group_name="rgopenapi", + golden_gate_connection_name="resource1", + properties={ + "properties": { + "connectionType": "GOLDENGATE", + "displayName": "resource1", + "doesUseSecretIds": True, + "keyId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "routingMethod": "SHARED_SERVICE_ENDPOINT", + "vaultId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + }, + "tags": {"key3963": "example"}, + "zones": ["example"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateConnections_Update_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_assign_connection_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_assign_connection_maximum_set_gen.py new file mode 100644 index 000000000000..101b373a6757 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_assign_connection_maximum_set_gen.py @@ -0,0 +1,46 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_assign_connection_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_deployments.begin_assign_connection( + resource_group_name="rgopenapi", + golden_gate_deployment_name="resource1", + body={ + "connectionId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/resources/resource1" + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_AssignConnection_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..5125b074f526 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_create_or_update_maximum_set_gen.py @@ -0,0 +1,97 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_deployments.begin_create_or_update( + resource_group_name="rgopenapi", + golden_gate_deployment_name="resource1", + resource={ + "location": "eastus", + "properties": { + "backupSchedule": { + "bucketName": "resource1", + "compartmentId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "frequencyBackupScheduled": "Daily", + "isMetadataOnly": True, + "namespaceName": "qif", + "timeBackupScheduled": "2026-06-01T00:00:00Z", + }, + "category": "DataReplication", + "compartment": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "cpuCoreCount": 18, + "deploymentType": "Ogg", + "displayName": "vo", + "environmentType": "Production", + "isAutoScalingEnabled": True, + "isPublic": True, + "licenseModel": "LicenseIncluded", + "maintenanceConfiguration": { + "bundleReleaseUpgradePeriodInDays": 21, + "interimReleaseUpgradePeriodInDays": 28, + "isInterimReleaseAutoUpgradeEnabled": True, + "majorReleaseUpgradePeriodInDays": 5, + "securityPatchUpgradePeriodInDays": 10, + }, + "maintenanceWindow": {"day": "resource1", "startHour": 25}, + "networkAnchorId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/networkAnchors/networkanchor1", + "ocid": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "oggData": { + "adminPassword": "", + "adminUsername": "resource1", + "certificate": "example", + "credentialStore": "GoldenGate", + "deploymentName": "uzyxba", + "groupToRolesMapping": { + "administratorGroupId": "example", + "identityDomainId": "example", + "key": "example", + "operatorGroupId": "example", + "securityGroupId": "example", + "userGroupId": "example", + }, + "oggVersion": "example", + "passwordSecretId": "example", + }, + "resourceAnchorId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/resourceAnchors/anchor1", + "timeZone": "2026-06-01T00:00:00Z", + "version": "zhvgen", + }, + "tags": {"key4445": "zasewagrwgc"}, + "zones": ["example"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_delete_maximum_set_gen.py new file mode 100644 index 000000000000..35a0ff1d2fa3 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_delete_maximum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.golden_gate_deployments.begin_delete( + resource_group_name="rgopenapi", + golden_gate_deployment_name="resource1", + ).result() + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_get_assigned_connection_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_get_assigned_connection_maximum_set_gen.py new file mode 100644 index 000000000000..23169674baca --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_get_assigned_connection_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_get_assigned_connection_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_deployments.get_assigned_connection( + resource_group_name="rgopenapi", + golden_gate_deployment_name="resource1", + assignment_id="assignment1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_GetAssignedConnection_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_get_maximum_set_gen.py new file mode 100644 index 000000000000..1ae95042fe46 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_deployments.get( + resource_group_name="rgopenapi", + golden_gate_deployment_name="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_list_assigned_connections_by_parent_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_list_assigned_connections_by_parent_maximum_set_gen.py new file mode 100644 index 000000000000..62b402c4d948 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_list_assigned_connections_by_parent_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_list_assigned_connections_by_parent_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_deployments.list_assigned_connections_by_parent( + resource_group_name="rgopenapi", + golden_gate_deployment_name="resource1", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_ListAssignedConnectionsByParent_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_list_by_resource_group_maximum_set_gen.py new file mode 100644 index 000000000000..36c9afcf0a87 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_list_by_resource_group_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_list_by_resource_group_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_deployments.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_ListByResourceGroup_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..f2a3b9149a10 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_deployments.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_unassign_connection_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_unassign_connection_maximum_set_gen.py new file mode 100644 index 000000000000..fa14bef04394 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_unassign_connection_maximum_set_gen.py @@ -0,0 +1,46 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_unassign_connection_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_deployments.begin_unassign_connection( + resource_group_name="rgopenapi", + golden_gate_deployment_name="resource1", + body={ + "connectionId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/resources/resource1" + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_UnassignConnection_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_update_maximum_set_gen.py new file mode 100644 index 000000000000..e09e8fabc6d3 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/golden_gate_deployments_update_maximum_set_gen.py @@ -0,0 +1,66 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python golden_gate_deployments_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.golden_gate_deployments.begin_update( + resource_group_name="rgopenapi", + golden_gate_deployment_name="resource1", + properties={ + "properties": { + "backupSchedule": { + "bucketName": "resource1", + "compartmentId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "frequencyBackupScheduled": "Daily", + "isMetadataOnly": True, + "namespaceName": "qif", + "timeBackupScheduled": "2026-06-01T00:00:00Z", + }, + "cpuCoreCount": 4, + "licenseModel": "LicenseIncluded", + "maintenanceConfiguration": { + "bundleReleaseUpgradePeriodInDays": 21, + "interimReleaseUpgradePeriodInDays": 28, + "isInterimReleaseAutoUpgradeEnabled": True, + "majorReleaseUpgradePeriodInDays": 5, + "securityPatchUpgradePeriodInDays": 10, + }, + "maintenanceWindow": {"day": "resource1", "startHour": 25}, + }, + "tags": {"key8753": "example"}, + "zones": ["oipkwaadk"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/GoldenGateDeployments_Update_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..93a6b2f45c99 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_create_or_update_maximum_set_gen.py @@ -0,0 +1,67 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python network_anchors_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.network_anchors.begin_create_or_update( + resource_group_name="rgopenapi", + network_anchor_name="resource1", + resource={ + "location": "eastus", + "properties": { + "dnsForwardingRules": [{"domainNames": "ghs", "forwardingIpAddress": "example"}], + "dnsListeningEndpointAllowedCidrs": "toqgyp", + "isOracleDnsForwardingEndpointEnabled": True, + "isOracleDnsListeningEndpointEnabled": True, + "isOracleToAzureDnsZoneSyncEnabled": True, + "ociBackupCidrBlock": "example", + "ociSubnetId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "ociVcnDnsLabel": "example", + "ociVcnId": "ocid1.autonomousdatabase.oc1..aaaaa3klq", + "proximityPlacementGroup": { + "entityTypeIntendedToUse": "CloudExadataInfrastructure", + "proximityAnchorId": "example", + "proximityPlacementGroupId": "example", + }, + "resourceAnchorId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/resourceAnchors/anchor1", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "vnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1", + }, + "tags": {"key6589": "mcg"}, + "zones": ["zznbkklaih"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/NetworkAnchors_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_delete_maximum_set_gen.py new file mode 100644 index 000000000000..029c93329506 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_delete_maximum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python network_anchors_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.network_anchors.begin_delete( + resource_group_name="rgopenapi", + network_anchor_name="resource1", + ).result() + + +# x-ms-original-file: 2026-06-01/NetworkAnchors_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_get_maximum_set_gen.py new file mode 100644 index 000000000000..cbf6201bb21f --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python network_anchors_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.network_anchors.get( + resource_group_name="rgopenapi", + network_anchor_name="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/NetworkAnchors_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_resource_group_maximum_set_gen.py new file mode 100644 index 000000000000..838912921999 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_resource_group_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python network_anchors_list_by_resource_group_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.network_anchors.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/NetworkAnchors_ListByResourceGroup_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_resource_group_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_resource_group_minimum_set_gen.py new file mode 100644 index 000000000000..8e570a761203 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_resource_group_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python network_anchors_list_by_resource_group_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.network_anchors.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/NetworkAnchors_ListByResourceGroup_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..a32c52f5b67d --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python network_anchors_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.network_anchors.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/NetworkAnchors_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_subscription_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_subscription_minimum_set_gen.py new file mode 100644 index 000000000000..c4b15635e0a3 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_list_by_subscription_minimum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python network_anchors_list_by_subscription_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.network_anchors.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/NetworkAnchors_ListBySubscription_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_update_maximum_set_gen.py new file mode 100644 index 000000000000..7d15945400d5 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/network_anchors_update_maximum_set_gen.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python network_anchors_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.network_anchors.begin_update( + resource_group_name="rgopenapi", + network_anchor_name="resource1", + properties={ + "properties": { + "isOracleDnsForwardingEndpointEnabled": True, + "isOracleDnsListeningEndpointEnabled": True, + "isOracleToAzureDnsZoneSyncEnabled": True, + "ociBackupCidrBlock": "zll", + }, + "tags": {"key2518": "example"}, + "zones": ["example"], + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/NetworkAnchors_Update_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list.py index b573e8b3c705..cca9b1c080e1 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list.py @@ -35,6 +35,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/operations_list.json +# x-ms-original-file: 2025-11-01-preview/operations_list.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list_maximum_set_gen.py index dba9c23ef7a5..b51b72633b46 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list_maximum_set_gen.py @@ -35,6 +35,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/Operations_List_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/Operations_List_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list_minimum_set_gen.py index 3ea199b3b8d7..bb94a39b98a6 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/operations_list_minimum_set_gen.py @@ -35,6 +35,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/Operations_List_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/Operations_List_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions.py index b6e16d9c3f8f..33cae085bd37 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions.py @@ -35,6 +35,6 @@ def main(): ).result() -# x-ms-original-file: 2025-09-01/oracleSubscriptions_addAzureSubscriptions.json +# x-ms-original-file: 2025-11-01-preview/oracleSubscriptions_addAzureSubscriptions.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions_maximum_set_gen.py index 80753eaf31f9..dac45febf224 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions_maximum_set_gen.py @@ -35,6 +35,6 @@ def main(): ).result() -# x-ms-original-file: 2025-09-01/OracleSubscriptions_AddAzureSubscriptions_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_AddAzureSubscriptions_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions_minimum_set_gen.py index 2ee85c2aa93d..2f61f166f925 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_add_azure_subscriptions_minimum_set_gen.py @@ -35,6 +35,6 @@ def main(): ).result() -# x-ms-original-file: 2025-09-01/OracleSubscriptions_AddAzureSubscriptions_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_AddAzureSubscriptions_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_create.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_create.py new file mode 100644 index 000000000000..49b23edf73fb --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_create.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_create.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.begin_create_or_update( + resource={ + "plan": { + "name": "plan1", + "product": "product1", + "promotionCode": "none", + "publisher": "publisher1", + "version": "alpha", + }, + "properties": {}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/oracleSubscriptions_create.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..831de5d92d7f --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_create_or_update_maximum_set_gen.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.begin_create_or_update( + resource={ + "plan": { + "name": "plan1", + "product": "product1", + "promotionCode": "none", + "publisher": "publisher1", + "version": "alpha", + }, + "properties": { + "cloudAccountId": "ocid1..aaaaaa", + "cloudAccountState": "Pending", + "intent": "Retain", + "productCode": "aujimmjxyetnqkmjqrwapn", + "termUnit": "akzq", + }, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_create_or_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_create_or_update_minimum_set_gen.py new file mode 100644 index 000000000000..85b2b1923ce4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_create_or_update_minimum_set_gen.py @@ -0,0 +1,66 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_create_or_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.begin_create_or_update( + resource={ + "id": "str", + "name": "str", + "plan": {"name": "str", "product": "str", "publisher": "str", "promotionCode": "str", "version": "str"}, + "properties": { + "addSubscriptionOperationState": "str", + "azureSubscriptionIds": ["str"], + "cloudAccountId": "str", + "cloudAccountState": "str", + "intent": "str", + "lastOperationStatusDetail": "str", + "productCode": "str", + "provisioningState": "str", + "saasSubscriptionId": "str", + "termUnit": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_CreateOrUpdate_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_delete.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_delete.py new file mode 100644 index 000000000000..2c8cc1e5a5c0 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_delete.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.oracle_subscriptions.begin_delete().result() + + +# x-ms-original-file: 2025-11-01-preview/oracleSubscriptions_delete.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_delete_maximum_set_gen.py new file mode 100644 index 000000000000..115c2edfa7b5 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_delete_maximum_set_gen.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.oracle_subscriptions.begin_delete().result() + + +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_delete_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_delete_minimum_set_gen.py new file mode 100644 index 000000000000..5dd6c10bf20a --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_delete_minimum_set_gen.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_delete_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.oracle_subscriptions.begin_delete().result() + + +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_Delete_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_get.py new file mode 100644 index 000000000000..3388a3161bc4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_get.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.get() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/oracleSubscriptions_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_get_maximum_set_gen.py new file mode 100644 index 000000000000..926ee7caef9c --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_get_maximum_set_gen.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.get() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_get_minimum_set_gen.py new file mode 100644 index 000000000000..3a1308a19da5 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_get_minimum_set_gen.py @@ -0,0 +1,39 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.get() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links.py index f1bba9a3df5a..8d7fa41ef22e 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links.py @@ -34,6 +34,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/oracleSubscriptions_listActivationLinks.json +# x-ms-original-file: 2025-11-01-preview/oracleSubscriptions_listActivationLinks.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links_maximum_set_gen.py index 73f29d1e8d00..477b04d5f9ab 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links_maximum_set_gen.py @@ -34,6 +34,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/OracleSubscriptions_ListActivationLinks_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_ListActivationLinks_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links_minimum_set_gen.py index ed983977fce2..a666fc868a68 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_activation_links_minimum_set_gen.py @@ -34,6 +34,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/OracleSubscriptions_ListActivationLinks_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_ListActivationLinks_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_by_subscription.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_by_subscription.py new file mode 100644 index 000000000000..8da27427cb5d --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_by_subscription.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_list_by_subscription.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/oracleSubscriptions_listBySubscription.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..c6cfbea5938b --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_by_subscription_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_by_subscription_minimum_set_gen.py new file mode 100644 index 000000000000..1722ba97bd08 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_by_subscription_minimum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_list_by_subscription_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_ListBySubscription_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details.py index 23e106c1b74f..90211f95a65f 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details.py @@ -34,6 +34,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/oracleSubscriptions_listCloudAccountDetails.json +# x-ms-original-file: 2025-11-01-preview/oracleSubscriptions_listCloudAccountDetails.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details_maximum_set_gen.py index 6d2cfb87bcad..a37bd8fb7035 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details_maximum_set_gen.py @@ -34,6 +34,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/OracleSubscriptions_ListCloudAccountDetails_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_ListCloudAccountDetails_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details_minimum_set_gen.py index de211ff491ef..a68751157fe4 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_cloud_account_details_minimum_set_gen.py @@ -34,6 +34,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/OracleSubscriptions_ListCloudAccountDetails_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_ListCloudAccountDetails_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details.py index c97a0027dd32..db298aeb2d7d 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details.py @@ -34,6 +34,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/oracleSubscriptions_listSaasSubscriptionDetails.json +# x-ms-original-file: 2025-11-01-preview/oracleSubscriptions_listSaasSubscriptionDetails.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details_maximum_set_gen.py index acdd3c6084e6..9629fae362f6 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details_maximum_set_gen.py @@ -34,6 +34,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/OracleSubscriptions_ListSaasSubscriptionDetails_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_ListSaasSubscriptionDetails_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details_minimum_set_gen.py index 832029cc7abe..8a96a9708096 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_list_saas_subscription_details_minimum_set_gen.py @@ -34,6 +34,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/OracleSubscriptions_ListSaasSubscriptionDetails_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_ListSaasSubscriptionDetails_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_patch.py new file mode 100644 index 000000000000..263f0a45849b --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_patch.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_patch.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.begin_update( + properties={ + "plan": {"name": "str", "product": "str", "promotionCode": "str", "publisher": "str", "version": "str"}, + "properties": {"intent": "str", "productCode": "str"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/oracleSubscriptions_patch.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_update_maximum_set_gen.py index 7ca23f559c2f..c59a6c592b81 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_update_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_update_maximum_set_gen.py @@ -45,6 +45,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/OracleSubscriptions_Update_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_Update_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_update_minimum_set_gen.py new file mode 100644 index 000000000000..db4250ffc7d4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/oracle_subscriptions_update_minimum_set_gen.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python oracle_subscriptions_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.oracle_subscriptions.begin_update( + properties={ + "plan": {"name": "str", "product": "str", "promotionCode": "str", "publisher": "str", "version": "str"}, + "properties": {"intent": "str", "productCode": "str"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/OracleSubscriptions_Update_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..844bd7da3ccf --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_create_or_update_maximum_set_gen.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python resource_anchors_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.resource_anchors.begin_create_or_update( + resource_group_name="rgopenapi", + resource_anchor_name="resource1", + resource={ + "location": "qbkti", + "properties": {"linkedCompartmentId": "ocid1.autonomousdatabase.oc1..aaaaa3klq"}, + "tags": {"key2309": "example"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/ResourceAnchors_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_delete_maximum_set_gen.py new file mode 100644 index 000000000000..ed3664d85289 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_delete_maximum_set_gen.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python resource_anchors_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.resource_anchors.begin_delete( + resource_group_name="rgopenapi", + resource_anchor_name="resource1", + ).result() + + +# x-ms-original-file: 2026-06-01/ResourceAnchors_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_get_maximum_set_gen.py new file mode 100644 index 000000000000..d99f25ec9167 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python resource_anchors_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.resource_anchors.get( + resource_group_name="rgopenapi", + resource_anchor_name="resource1", + ) + print(response) + + +# x-ms-original-file: 2026-06-01/ResourceAnchors_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_resource_group_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_resource_group_maximum_set_gen.py new file mode 100644 index 000000000000..d6d53be6511a --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_resource_group_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python resource_anchors_list_by_resource_group_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.resource_anchors.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/ResourceAnchors_ListByResourceGroup_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_resource_group_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_resource_group_minimum_set_gen.py new file mode 100644 index 000000000000..e5134270ce35 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_resource_group_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python resource_anchors_list_by_resource_group_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.resource_anchors.list_by_resource_group( + resource_group_name="rgopenapi", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/ResourceAnchors_ListByResourceGroup_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_subscription_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_subscription_maximum_set_gen.py new file mode 100644 index 000000000000..c8133d718a99 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_subscription_maximum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python resource_anchors_list_by_subscription_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.resource_anchors.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2026-06-01/ResourceAnchors_ListBySubscription_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_subscription_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_subscription_minimum_set_gen.py new file mode 100644 index 000000000000..1377601e0e24 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_list_by_subscription_minimum_set_gen.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python resource_anchors_list_by_subscription_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.resource_anchors.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/ResourceAnchors_ListBySubscription_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_update_maximum_set_gen.py new file mode 100644 index 000000000000..c7a3a6c8a373 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/resource_anchors_update_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python resource_anchors_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.resource_anchors.begin_update( + resource_group_name="rgopenapi", + resource_anchor_name="resource1", + properties={"tags": {"key7593": "example"}}, + ).result() + print(response) + + +# x-ms-original-file: 2026-06-01/ResourceAnchors_Update_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_get.py new file mode 100644 index 000000000000..b10de1c15634 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python system_versions_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.system_versions.get( + location="eastus", + systemversionname="22.x", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/systemVersions_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_get_maximum_set_gen.py new file mode 100644 index 000000000000..de51734c348e --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_get_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python system_versions_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.system_versions.get( + location="eastus", + systemversionname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/SystemVersions_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_get_minimum_set_gen.py new file mode 100644 index 000000000000..6ff4863a9ab9 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_get_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python system_versions_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.system_versions.get( + location="eastus", + systemversionname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/SystemVersions_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_list_by_location.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_list_by_location.py new file mode 100644 index 000000000000..40ed92c9df74 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_list_by_location.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python system_versions_list_by_location.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.system_versions.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/systemVersions_listByLocation.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_list_by_location_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_list_by_location_maximum_set_gen.py new file mode 100644 index 000000000000..e136b6aea140 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_list_by_location_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python system_versions_list_by_location_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.system_versions.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/SystemVersions_ListByLocation_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_list_by_location_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_list_by_location_minimum_set_gen.py new file mode 100644 index 000000000000..4fe78e03d00d --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/system_versions_list_by_location_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python system_versions_list_by_location_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.system_versions.list_by_location( + location="eastus", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/SystemVersions_ListByLocation_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_create.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_create.py new file mode 100644 index 000000000000..3e157d8ea8c0 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_create.py @@ -0,0 +1,44 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python virtual_network_addresses_create.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.virtual_network_addresses.begin_create_or_update( + resource_group_name="rg000", + cloudvmclustername="cluster1", + virtualnetworkaddressname="hostname1", + resource={"properties": {"ipAddress": "192.168.0.1", "vmOcid": "ocid1..aaaa"}}, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/virtualNetworkAddresses_create.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_create_or_update_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_create_or_update_maximum_set_gen.py new file mode 100644 index 000000000000..02dcdc8338f9 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_create_or_update_maximum_set_gen.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python virtual_network_addresses_create_or_update_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.virtual_network_addresses.begin_create_or_update( + resource_group_name="rgopenapi", + cloudvmclustername="Replace this value with a string matching RegExp .*", + virtualnetworkaddressname="Replace this value with a string matching RegExp .*", + resource={ + "properties": { + "ipAddress": "192.168.0.1", + "lifecycleState": "Available", + "ocid": "ocid1..aaaaaa", + "vmOcid": "ocid1..aaaa", + } + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/VirtualNetworkAddresses_CreateOrUpdate_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_create_or_update_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_create_or_update_minimum_set_gen.py new file mode 100644 index 000000000000..53d60b6cf695 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_create_or_update_minimum_set_gen.py @@ -0,0 +1,66 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python virtual_network_addresses_create_or_update_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.virtual_network_addresses.begin_create_or_update( + resource_group_name="rgopenapi", + cloudvmclustername="Replace this value with a string matching RegExp .*", + virtualnetworkaddressname="Replace this value with a string matching RegExp .*", + resource={ + "id": "str", + "name": "str", + "properties": { + "domain": "str", + "ipAddress": "str", + "lifecycleDetails": "str", + "lifecycleState": "str", + "ocid": "str", + "provisioningState": "str", + "timeAssigned": "2020-02-20 00:00:00", + "vmOcid": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "type": "str", + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/VirtualNetworkAddresses_CreateOrUpdate_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_delete.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_delete.py new file mode 100644 index 000000000000..3600797381f1 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_delete.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python virtual_network_addresses_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.virtual_network_addresses.begin_delete( + resource_group_name="rg000", + cloudvmclustername="cluster1", + virtualnetworkaddressname="hostname1", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/virtualNetworkAddresses_delete.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_delete_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_delete_maximum_set_gen.py new file mode 100644 index 000000000000..5ccb7625ae55 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_delete_maximum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python virtual_network_addresses_delete_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.virtual_network_addresses.begin_delete( + resource_group_name="rgopenapi", + cloudvmclustername="Replace this value with a string matching RegExp .*", + virtualnetworkaddressname="Replace this value with a string matching RegExp .*", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/VirtualNetworkAddresses_Delete_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_delete_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_delete_minimum_set_gen.py new file mode 100644 index 000000000000..551a4365ebc8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_delete_minimum_set_gen.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python virtual_network_addresses_delete_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.virtual_network_addresses.begin_delete( + resource_group_name="rgopenapi", + cloudvmclustername="Replace this value with a string matching RegExp .*", + virtualnetworkaddressname="Replace this value with a string matching RegExp .*", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/VirtualNetworkAddresses_Delete_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_get.py new file mode 100644 index 000000000000..ad899997a322 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_get.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python virtual_network_addresses_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.virtual_network_addresses.get( + resource_group_name="rg000", + cloudvmclustername="cluster1", + virtualnetworkaddressname="hostname1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/virtualNetworkAddresses_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_get_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_get_maximum_set_gen.py new file mode 100644 index 000000000000..dbffd66ca163 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_get_maximum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python virtual_network_addresses_get_maximum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.virtual_network_addresses.get( + resource_group_name="rgopenapi", + cloudvmclustername="Replace this value with a string matching RegExp .*", + virtualnetworkaddressname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/VirtualNetworkAddresses_Get_MaximumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_get_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_get_minimum_set_gen.py new file mode 100644 index 000000000000..c86db7984cf4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_get_minimum_set_gen.py @@ -0,0 +1,43 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python virtual_network_addresses_get_minimum_set_gen.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.virtual_network_addresses.get( + resource_group_name="rgopenapi", + cloudvmclustername="Replace this value with a string matching RegExp .*", + virtualnetworkaddressname="Replace this value with a string matching RegExp .*", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/VirtualNetworkAddresses_Get_MinimumSet_Gen.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_list_by_parent_maximum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_list_by_parent_maximum_set_gen.py index 2b78fd668e4f..129fc125625e 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_list_by_parent_maximum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_list_by_parent_maximum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/VirtualNetworkAddresses_ListByParent_MaximumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/VirtualNetworkAddresses_ListByParent_MaximumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_list_by_parent_minimum_set_gen.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_list_by_parent_minimum_set_gen.py index 6bd016e125fe..f41b04fd14ff 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_list_by_parent_minimum_set_gen.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/virtual_network_addresses_list_by_parent_minimum_set_gen.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: 2025-09-01/VirtualNetworkAddresses_ListByParent_MinimumSet_Gen.json +# x-ms-original-file: 2025-11-01-preview/VirtualNetworkAddresses_ListByParent_MinimumSet_Gen.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_add_vms.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_add_vms.py index 488f4f089f40..51298461a60b 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_add_vms.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_add_vms.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/vmClusters_addVms.json +# x-ms-original-file: 2025-11-01-preview/vmClusters_addVms.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_create.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_create.py new file mode 100644 index 000000000000..829eab7c0447 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_create.py @@ -0,0 +1,81 @@ +# pylint: disable=line-too-long,useless-suppression +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python vm_clusters_create.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.begin_create_or_update( + resource_group_name="rg000", + cloudvmclustername="cluster1", + resource={ + "location": "eastus", + "properties": { + "backupSubnetCidr": "172.17.5.0/24", + "cloudExadataInfrastructureId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Oracle.Database/cloudExadataInfrastructures/infra1", + "clusterName": "cluster1", + "cpuCoreCount": 2, + "dataCollectionOptions": { + "isDiagnosticsEventsEnabled": False, + "isHealthMonitoringEnabled": False, + "isIncidentLogsEnabled": False, + }, + "dataStoragePercentage": 100, + "dataStorageSizeInTbs": 1000, + "dbNodeStorageSizeInGbs": 1000, + "dbServers": ["ocid1..aaaa"], + "displayName": "cluster 1", + "domain": "domain1", + "giVersion": "19.0.0.0", + "hostname": "hostname1", + "isLocalBackupEnabled": False, + "isSparseDiskgroupEnabled": False, + "licenseModel": "LicenseIncluded", + "memorySizeInGbs": 1000, + "nsgCidrs": [ + {"destinationPortRange": {"max": 1522, "min": 1520}, "source": "10.0.0.0/16"}, + {"source": "10.10.0.0/24"}, + ], + "ocpuCount": 3, + "scanListenerPortTcp": 1050, + "scanListenerPortTcpSsl": 1025, + "sshPublicKeys": ["ssh-key 1"], + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "timeZone": "UTC", + "vnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg000/providers/Microsoft.Network/virtualNetworks/vnet1", + }, + "tags": {"tagK1": "tagV1"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/vmClusters_create.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_delete.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_delete.py new file mode 100644 index 000000000000..1376b2e2a8c8 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_delete.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python vm_clusters_delete.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + client.cloud_vm_clusters.begin_delete( + resource_group_name="rg000", + cloudvmclustername="cluster1", + ).result() + + +# x-ms-original-file: 2025-11-01-preview/vmClusters_delete.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_get.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_get.py new file mode 100644 index 000000000000..c1b33571e7d5 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_get.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python vm_clusters_get.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.get( + resource_group_name="rg000", + cloudvmclustername="cluster1", + ) + print(response) + + +# x-ms-original-file: 2025-11-01-preview/vmClusters_get.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_by_resource_group.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_by_resource_group.py new file mode 100644 index 000000000000..07e8f00df61c --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_by_resource_group.py @@ -0,0 +1,42 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python vm_clusters_list_by_resource_group.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.list_by_resource_group( + resource_group_name="rg000", + ) + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/vmClusters_listByResourceGroup.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_by_subscription.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_by_subscription.py new file mode 100644 index 000000000000..2de9f8b56e94 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_by_subscription.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python vm_clusters_list_by_subscription.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.list_by_subscription() + for item in response: + print(item) + + +# x-ms-original-file: 2025-11-01-preview/vmClusters_listBySubscription.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_private_ip_addresses.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_private_ip_addresses.py index 0d70761f9e27..6eef875faefb 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_private_ip_addresses.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_list_private_ip_addresses.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/vmClusters_listPrivateIpAddresses.json +# x-ms-original-file: 2025-11-01-preview/vmClusters_listPrivateIpAddresses.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_patch.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_patch.py new file mode 100644 index 000000000000..f3395b135247 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_patch.py @@ -0,0 +1,63 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- + +from azure.identity import DefaultAzureCredential + +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +""" +# PREREQUISITES + pip install azure-identity + pip install azure-mgmt-oracledatabase +# USAGE + python vm_clusters_patch.py + + Before run the sample, please set the values of the client ID, tenant ID and client secret + of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, + AZURE_CLIENT_SECRET. For more info about how to get the value, please see: + https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal +""" + + +def main(): + client = OracleDatabaseMgmtClient( + credential=DefaultAzureCredential(), + subscription_id="SUBSCRIPTION_ID", + ) + + response = client.cloud_vm_clusters.begin_update( + resource_group_name="rg000", + cloudvmclustername="cluster1", + properties={ + "properties": { + "computeNodes": ["str"], + "cpuCoreCount": 0, + "dataCollectionOptions": { + "isDiagnosticsEventsEnabled": bool, + "isHealthMonitoringEnabled": bool, + "isIncidentLogsEnabled": bool, + }, + "dataStorageSizeInTbs": 0.0, + "dbNodeStorageSizeInGbs": 0, + "displayName": "str", + "fileSystemConfigurationDetails": [{"fileSystemSizeGb": 0, "mountPoint": "str"}], + "licenseModel": "str", + "memorySizeInGbs": 0, + "ocpuCount": 0.0, + "sshPublicKeys": ["str"], + "storageSizeInGbs": 0, + }, + "tags": {"str": "str"}, + }, + ).result() + print(response) + + +# x-ms-original-file: 2025-11-01-preview/vmClusters_patch.json +if __name__ == "__main__": + main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_remove_vms.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_remove_vms.py index 829390293dfc..84cec17dc529 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_remove_vms.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_samples/vm_clusters_remove_vms.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: 2025-09-01/vmClusters_removeVms.json +# x-ms-original-file: 2025-11-01-preview/vmClusters_removeVms.json if __name__ == "__main__": main() diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_autonomous_database_backups_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_autonomous_database_backups_operations.py index c0fdd654b9fa..bc5768134507 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_autonomous_database_backups_operations.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_autonomous_database_backups_operations.py @@ -30,6 +30,7 @@ def test_autonomous_database_backups_begin_create_or_update(self, resource_group "name": "str", "properties": { "autonomousDatabaseOcid": "str", + "backupDestination": "str", "backupType": "str", "databaseSizeInTbs": 0.0, "dbVersion": "str", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_autonomous_database_backups_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_autonomous_database_backups_operations_async.py index 116b3c90cd64..e3486a318476 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_autonomous_database_backups_operations_async.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_autonomous_database_backups_operations_async.py @@ -32,6 +32,7 @@ async def test_autonomous_database_backups_begin_create_or_update(self, resource "name": "str", "properties": { "autonomousDatabaseOcid": "str", + "backupDestination": "str", "backupType": "str", "databaseSizeInTbs": 0.0, "dbVersion": "str", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_exadata_infrastructures_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_exadata_infrastructures_operations.py index 1d7453693f55..c7a2072ab79e 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_exadata_infrastructures_operations.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_exadata_infrastructures_operations.py @@ -87,6 +87,12 @@ def test_cloud_exadata_infrastructures_begin_create_or_update(self, resource_gro "ociUrl": "str", "ocid": "str", "provisioningState": "str", + "proximityPlacementGroup": { + "entityTypeIntendedToUse": "str", + "proximityPlacementGroupId": "str", + "proximityAnchorId": "str", + }, + "resourceAnchorId": "str", "storageCount": 0, "storageServerType": "str", "storageServerVersion": "str", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_exadata_infrastructures_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_exadata_infrastructures_operations_async.py index 3f2eb480c8e0..12914412e801 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_exadata_infrastructures_operations_async.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_exadata_infrastructures_operations_async.py @@ -89,6 +89,12 @@ async def test_cloud_exadata_infrastructures_begin_create_or_update(self, resour "ociUrl": "str", "ocid": "str", "provisioningState": "str", + "proximityPlacementGroup": { + "entityTypeIntendedToUse": "str", + "proximityPlacementGroupId": "str", + "proximityAnchorId": "str", + }, + "resourceAnchorId": "str", "storageCount": 0, "storageServerType": "str", "storageServerVersion": "str", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_vm_clusters_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_vm_clusters_operations.py index eb26f22d0d3e..6578e50bec05 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_vm_clusters_operations.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_vm_clusters_operations.py @@ -69,6 +69,7 @@ def test_cloud_vm_clusters_begin_create_or_update(self, resource_group): "lifecycleState": "str", "objective": "str", }, + "isAcceleratedNetworkEnabled": bool, "isLocalBackupEnabled": bool, "isSparseDiskgroupEnabled": bool, "lastUpdateHistoryEntryId": "str", @@ -77,6 +78,7 @@ def test_cloud_vm_clusters_begin_create_or_update(self, resource_group): "lifecycleState": "str", "listenerPort": 0, "memorySizeInGbs": 0, + "networkAnchorId": "str", "nodeCount": 0, "nsgCidrs": [{"source": "str", "destinationPortRange": {"max": 0, "min": 0}}], "nsgUrl": "str", @@ -84,12 +86,20 @@ def test_cloud_vm_clusters_begin_create_or_update(self, resource_group): "ocid": "str", "ocpuCount": 0.0, "provisioningState": "str", + "proximityPlacementGroup": { + "entityTypeIntendedToUse": "str", + "proximityPlacementGroupId": "str", + "proximityAnchorId": "str", + }, + "recoStoragePercentage": 0, + "resourceAnchorId": "str", "scanDnsName": "str", "scanDnsRecordId": "str", "scanIpIds": ["str"], "scanListenerPortTcp": 0, "scanListenerPortTcpSsl": 0, "shape": "str", + "sparseStoragePercentage": 0, "storageManagementType": "str", "storageSizeInGbs": 0, "subnetOcid": "str", @@ -145,6 +155,7 @@ def test_cloud_vm_clusters_begin_update(self, resource_group): "dbNodeStorageSizeInGbs": 0, "displayName": "str", "fileSystemConfigurationDetails": [{"fileSystemSizeGb": 0, "mountPoint": "str"}], + "isAcceleratedNetworkEnabled": bool, "licenseModel": "str", "memorySizeInGbs": 0, "ocpuCount": 0.0, diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_vm_clusters_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_vm_clusters_operations_async.py index 3655847f9c4c..df92f3bc8841 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_vm_clusters_operations_async.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_cloud_vm_clusters_operations_async.py @@ -71,6 +71,7 @@ async def test_cloud_vm_clusters_begin_create_or_update(self, resource_group): "lifecycleState": "str", "objective": "str", }, + "isAcceleratedNetworkEnabled": bool, "isLocalBackupEnabled": bool, "isSparseDiskgroupEnabled": bool, "lastUpdateHistoryEntryId": "str", @@ -79,6 +80,7 @@ async def test_cloud_vm_clusters_begin_create_or_update(self, resource_group): "lifecycleState": "str", "listenerPort": 0, "memorySizeInGbs": 0, + "networkAnchorId": "str", "nodeCount": 0, "nsgCidrs": [{"source": "str", "destinationPortRange": {"max": 0, "min": 0}}], "nsgUrl": "str", @@ -86,12 +88,20 @@ async def test_cloud_vm_clusters_begin_create_or_update(self, resource_group): "ocid": "str", "ocpuCount": 0.0, "provisioningState": "str", + "proximityPlacementGroup": { + "entityTypeIntendedToUse": "str", + "proximityPlacementGroupId": "str", + "proximityAnchorId": "str", + }, + "recoStoragePercentage": 0, + "resourceAnchorId": "str", "scanDnsName": "str", "scanDnsRecordId": "str", "scanIpIds": ["str"], "scanListenerPortTcp": 0, "scanListenerPortTcpSsl": 0, "shape": "str", + "sparseStoragePercentage": 0, "storageManagementType": "str", "storageSizeInGbs": 0, "subnetOcid": "str", @@ -149,6 +159,7 @@ async def test_cloud_vm_clusters_begin_update(self, resource_group): "dbNodeStorageSizeInGbs": 0, "displayName": "str", "fileSystemConfigurationDetails": [{"fileSystemSizeGb": 0, "mountPoint": "str"}], + "isAcceleratedNetworkEnabled": bool, "licenseModel": "str", "memorySizeInGbs": 0, "ocpuCount": 0.0, diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_editions_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_editions_operations.py new file mode 100644 index 000000000000..a8dc6d94adfa --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_editions_operations.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestOracleDatabaseMgmtDatabaseEditionsOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(OracleDatabaseMgmtClient) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_database_editions_get(self, resource_group): + response = self.client.database_editions.get( + location="str", + databaseeditionname="str", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_database_editions_list_by_location(self, resource_group): + response = self.client.database_editions.list_by_location( + location="str", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_editions_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_editions_operations_async.py new file mode 100644 index 000000000000..de75e971b020 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_editions_operations_async.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.oracledatabase.aio import OracleDatabaseMgmtClient + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestOracleDatabaseMgmtDatabaseEditionsOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(OracleDatabaseMgmtClient, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_database_editions_get(self, resource_group): + response = await self.client.database_editions.get( + location="str", + databaseeditionname="str", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_database_editions_list_by_location(self, resource_group): + response = self.client.database_editions.list_by_location( + location="str", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_system_shape_resources_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_system_shape_resources_operations.py new file mode 100644 index 000000000000..7fa3a5c4347b --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_system_shape_resources_operations.py @@ -0,0 +1,40 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestOracleDatabaseMgmtDatabaseSystemShapeResourcesOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(OracleDatabaseMgmtClient) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_database_system_shape_resources_get(self, resource_group): + response = self.client.database_system_shape_resources.get( + location="str", + databasesystemshapename="str", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_database_system_shape_resources_list_by_location(self, resource_group): + response = self.client.database_system_shape_resources.list_by_location( + location="str", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_system_shape_resources_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_system_shape_resources_operations_async.py new file mode 100644 index 000000000000..68053ee41405 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_database_system_shape_resources_operations_async.py @@ -0,0 +1,41 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.oracledatabase.aio import OracleDatabaseMgmtClient + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestOracleDatabaseMgmtDatabaseSystemShapeResourcesOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(OracleDatabaseMgmtClient, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_database_system_shape_resources_get(self, resource_group): + response = await self.client.database_system_shape_resources.get( + location="str", + databasesystemshapename="str", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_database_system_shape_resources_list_by_location(self, resource_group): + response = self.client.database_system_shape_resources.list_by_location( + location="str", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_db_systems_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_db_systems_operations.py index 5dc690a9f90a..4af2594f94c3 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_db_systems_operations.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_db_systems_operations.py @@ -46,9 +46,15 @@ def test_db_systems_begin_create_or_update(self, resource_group): "source": "None", "sshPublicKeys": ["str"], "adminPassword": "str", + "characterSet": "str", "clusterName": "str", "computeCount": 0, "computeModel": "str", + "dataCollectionOptions": { + "isDiagnosticsEventsEnabled": bool, + "isHealthMonitoringEnabled": bool, + "isIncidentLogsEnabled": bool, + }, "dataStorageSizeInGbs": 0, "dbSystemOptions": {"storageManagement": "str"}, "diskRedundancy": "str", @@ -61,6 +67,7 @@ def test_db_systems_begin_create_or_update(self, resource_group): "lifecycleState": "str", "listenerPort": 0, "memorySizeInGbs": 0, + "ncharacterSet": "str", "nodeCount": 0, "ociUrl": "str", "ocid": "str", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_db_systems_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_db_systems_operations_async.py index f8ab372cf900..1e2645e2ebfd 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_db_systems_operations_async.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_db_systems_operations_async.py @@ -48,9 +48,15 @@ async def test_db_systems_begin_create_or_update(self, resource_group): "source": "None", "sshPublicKeys": ["str"], "adminPassword": "str", + "characterSet": "str", "clusterName": "str", "computeCount": 0, "computeModel": "str", + "dataCollectionOptions": { + "isDiagnosticsEventsEnabled": bool, + "isHealthMonitoringEnabled": bool, + "isIncidentLogsEnabled": bool, + }, "dataStorageSizeInGbs": 0, "dbSystemOptions": {"storageManagement": "str"}, "diskRedundancy": "str", @@ -63,6 +69,7 @@ async def test_db_systems_begin_create_or_update(self, resource_group): "lifecycleState": "str", "listenerPort": 0, "memorySizeInGbs": 0, + "ncharacterSet": "str", "nodeCount": 0, "ociUrl": "str", "ocid": "str", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_exascale_db_storage_vaults_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_exascale_db_storage_vaults_operations.py index 2b95c36c2c56..1eccc24c3eae 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_exascale_db_storage_vaults_operations.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_exascale_db_storage_vaults_operations.py @@ -44,9 +44,11 @@ def test_exascale_db_storage_vaults_begin_create(self, resource_group): "highCapacityDatabaseStorageInput": {"totalSizeInGbs": 0}, "additionalFlashCacheInPercent": 0, "attachedShapeAttributes": ["str"], + "autoscaleLimitInGbs": 0, "description": "str", "exadataInfrastructureId": "str", "highCapacityDatabaseStorage": {"availableSizeInGbs": 0, "totalSizeInGbs": 0}, + "isAutoscaleEnabled": bool, "lifecycleDetails": "str", "lifecycleState": "str", "ociUrl": "str", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_exascale_db_storage_vaults_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_exascale_db_storage_vaults_operations_async.py index 581e134517b2..50325bc24b84 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_exascale_db_storage_vaults_operations_async.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_exascale_db_storage_vaults_operations_async.py @@ -46,9 +46,11 @@ async def test_exascale_db_storage_vaults_begin_create(self, resource_group): "highCapacityDatabaseStorageInput": {"totalSizeInGbs": 0}, "additionalFlashCacheInPercent": 0, "attachedShapeAttributes": ["str"], + "autoscaleLimitInGbs": 0, "description": "str", "exadataInfrastructureId": "str", "highCapacityDatabaseStorage": {"availableSizeInGbs": 0, "totalSizeInGbs": 0}, + "isAutoscaleEnabled": bool, "lifecycleDetails": "str", "lifecycleState": "str", "ociUrl": "str", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_connections_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_connections_operations.py new file mode 100644 index 000000000000..7b3fe774eff4 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_connections_operations.py @@ -0,0 +1,157 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestOracleDatabaseMgmtGoldenGateConnectionsOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(OracleDatabaseMgmtClient) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_list_by_subscription(self, resource_group): + response = self.client.golden_gate_connections.list_by_subscription() + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_begin_create_or_update(self, resource_group): + response = self.client.golden_gate_connections.begin_create_or_update( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + resource={ + "location": "str", + "id": "str", + "name": "str", + "properties": "connection_base_properties", + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "tags": {"str": "str"}, + "type": "str", + "zones": ["str"], + }, + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_get(self, resource_group): + response = self.client.golden_gate_connections.get( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_begin_update(self, resource_group): + response = self.client.golden_gate_connections.begin_update( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + properties={ + "properties": { + "connectionType": "str", + "displayName": "str", + "doesUseSecretIds": bool, + "keyId": "str", + "routingMethod": "str", + "vaultId": "str", + }, + "tags": {"str": "str"}, + "zones": ["str"], + }, + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_begin_delete(self, resource_group): + response = self.client.golden_gate_connections.begin_delete( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_list_by_resource_group(self, resource_group): + response = self.client.golden_gate_connections.list_by_resource_group( + resource_group_name=resource_group.name, + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_begin_assign_deployment(self, resource_group): + response = self.client.golden_gate_connections.begin_assign_deployment( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + body={"deploymentId": "str"}, + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_begin_unassign_deployment(self, resource_group): + response = self.client.golden_gate_connections.begin_unassign_deployment( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + body={"deploymentId": "str"}, + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_list_assigned_deployments_by_parent(self, resource_group): + response = self.client.golden_gate_connections.list_assigned_deployments_by_parent( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_connections_get_assigned_deployment(self, resource_group): + response = self.client.golden_gate_connections.get_assigned_deployment( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + assignment_id="str", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_connections_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_connections_operations_async.py new file mode 100644 index 000000000000..3f4810a84829 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_connections_operations_async.py @@ -0,0 +1,168 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.oracledatabase.aio import OracleDatabaseMgmtClient + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestOracleDatabaseMgmtGoldenGateConnectionsOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(OracleDatabaseMgmtClient, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_list_by_subscription(self, resource_group): + response = self.client.golden_gate_connections.list_by_subscription() + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_begin_create_or_update(self, resource_group): + response = await ( + await self.client.golden_gate_connections.begin_create_or_update( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + resource={ + "location": "str", + "id": "str", + "name": "str", + "properties": "connection_base_properties", + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "tags": {"str": "str"}, + "type": "str", + "zones": ["str"], + }, + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_get(self, resource_group): + response = await self.client.golden_gate_connections.get( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_begin_update(self, resource_group): + response = await ( + await self.client.golden_gate_connections.begin_update( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + properties={ + "properties": { + "connectionType": "str", + "displayName": "str", + "doesUseSecretIds": bool, + "keyId": "str", + "routingMethod": "str", + "vaultId": "str", + }, + "tags": {"str": "str"}, + "zones": ["str"], + }, + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_begin_delete(self, resource_group): + response = await ( + await self.client.golden_gate_connections.begin_delete( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_list_by_resource_group(self, resource_group): + response = self.client.golden_gate_connections.list_by_resource_group( + resource_group_name=resource_group.name, + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_begin_assign_deployment(self, resource_group): + response = await ( + await self.client.golden_gate_connections.begin_assign_deployment( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + body={"deploymentId": "str"}, + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_begin_unassign_deployment(self, resource_group): + response = await ( + await self.client.golden_gate_connections.begin_unassign_deployment( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + body={"deploymentId": "str"}, + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_list_assigned_deployments_by_parent(self, resource_group): + response = self.client.golden_gate_connections.list_assigned_deployments_by_parent( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_connections_get_assigned_deployment(self, resource_group): + response = await self.client.golden_gate_connections.get_assigned_deployment( + resource_group_name=resource_group.name, + golden_gate_connection_name="str", + assignment_id="str", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_deployments_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_deployments_operations.py new file mode 100644 index 000000000000..e58f90ffebd5 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_deployments_operations.py @@ -0,0 +1,226 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.oracledatabase import OracleDatabaseMgmtClient + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer, recorded_by_proxy + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestOracleDatabaseMgmtGoldenGateDeploymentsOperations(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(OracleDatabaseMgmtClient) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_list_by_subscription(self, resource_group): + response = self.client.golden_gate_deployments.list_by_subscription() + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_begin_create_or_update(self, resource_group): + response = self.client.golden_gate_deployments.begin_create_or_update( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + resource={ + "location": "str", + "id": "str", + "name": "str", + "properties": { + "displayName": "str", + "networkAnchorId": "str", + "resourceAnchorId": "str", + "backupSchedule": { + "bucketName": "str", + "compartmentId": "str", + "frequencyBackupScheduled": "str", + "isMetadataOnly": bool, + "namespaceName": "str", + "timeBackupScheduled": "str", + }, + "category": "str", + "compartment": "str", + "cpuCoreCount": 0, + "deploymentType": "str", + "deploymentUrl": "str", + "environmentType": "str", + "ingressIps": ["str"], + "isAutoScalingEnabled": bool, + "isPublic": bool, + "licenseModel": "str", + "lifecycleDetails": "str", + "lifecycleState": "str", + "maintenanceConfiguration": { + "bundleReleaseUpgradePeriodInDays": 0, + "interimReleaseUpgradePeriodInDays": 0, + "isInterimReleaseAutoUpgradeEnabled": bool, + "majorReleaseUpgradePeriodInDays": 0, + "securityPatchUpgradePeriodInDays": 0, + }, + "maintenanceWindow": {"day": "str", "startHour": 0}, + "ocid": "str", + "oggData": { + "deploymentName": "str", + "adminPassword": "str", + "adminUsername": "str", + "certificate": "str", + "credentialStore": "str", + "groupToRolesMapping": { + "administratorGroupId": "str", + "identityDomainId": "str", + "key": "str", + "operatorGroupId": "str", + "securityGroupId": "str", + "userGroupId": "str", + }, + "oggVersion": "str", + "passwordSecretId": "str", + }, + "privateIpAddress": "str", + "provisioningState": "str", + "storageUtilizationInBytes": 0, + "timeCreated": "str", + "timeUpdated": "str", + "timeZone": "str", + "version": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "tags": {"str": "str"}, + "type": "str", + "zones": ["str"], + }, + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_get(self, resource_group): + response = self.client.golden_gate_deployments.get( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_begin_update(self, resource_group): + response = self.client.golden_gate_deployments.begin_update( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + properties={ + "properties": { + "backupSchedule": { + "bucketName": "str", + "compartmentId": "str", + "frequencyBackupScheduled": "str", + "isMetadataOnly": bool, + "namespaceName": "str", + "timeBackupScheduled": "str", + }, + "cpuCoreCount": 0, + "licenseModel": "str", + "maintenanceConfiguration": { + "bundleReleaseUpgradePeriodInDays": 0, + "interimReleaseUpgradePeriodInDays": 0, + "isInterimReleaseAutoUpgradeEnabled": bool, + "majorReleaseUpgradePeriodInDays": 0, + "securityPatchUpgradePeriodInDays": 0, + }, + "maintenanceWindow": {"day": "str", "startHour": 0}, + }, + "tags": {"str": "str"}, + "zones": ["str"], + }, + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_begin_delete(self, resource_group): + response = self.client.golden_gate_deployments.begin_delete( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_list_by_resource_group(self, resource_group): + response = self.client.golden_gate_deployments.list_by_resource_group( + resource_group_name=resource_group.name, + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_begin_assign_connection(self, resource_group): + response = self.client.golden_gate_deployments.begin_assign_connection( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + body={"connectionId": "str"}, + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_begin_unassign_connection(self, resource_group): + response = self.client.golden_gate_deployments.begin_unassign_connection( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + body={"connectionId": "str"}, + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_list_assigned_connections_by_parent(self, resource_group): + response = self.client.golden_gate_deployments.list_assigned_connections_by_parent( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + ) + result = [r for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy + def test_golden_gate_deployments_get_assigned_connection(self, resource_group): + response = self.client.golden_gate_deployments.get_assigned_connection( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + assignment_id="str", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_deployments_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_deployments_operations_async.py new file mode 100644 index 000000000000..f6063b716414 --- /dev/null +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_golden_gate_deployments_operations_async.py @@ -0,0 +1,237 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# Code generated by Microsoft (R) Python Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is regenerated. +# -------------------------------------------------------------------------- +import pytest +from azure.mgmt.oracledatabase.aio import OracleDatabaseMgmtClient + +from devtools_testutils import AzureMgmtRecordedTestCase, RandomNameResourceGroupPreparer +from devtools_testutils.aio import recorded_by_proxy_async + +AZURE_LOCATION = "eastus" + + +@pytest.mark.skip("you may need to update the auto-generated test case before run it") +class TestOracleDatabaseMgmtGoldenGateDeploymentsOperationsAsync(AzureMgmtRecordedTestCase): + def setup_method(self, method): + self.client = self.create_mgmt_client(OracleDatabaseMgmtClient, is_async=True) + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_list_by_subscription(self, resource_group): + response = self.client.golden_gate_deployments.list_by_subscription() + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_begin_create_or_update(self, resource_group): + response = await ( + await self.client.golden_gate_deployments.begin_create_or_update( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + resource={ + "location": "str", + "id": "str", + "name": "str", + "properties": { + "displayName": "str", + "networkAnchorId": "str", + "resourceAnchorId": "str", + "backupSchedule": { + "bucketName": "str", + "compartmentId": "str", + "frequencyBackupScheduled": "str", + "isMetadataOnly": bool, + "namespaceName": "str", + "timeBackupScheduled": "str", + }, + "category": "str", + "compartment": "str", + "cpuCoreCount": 0, + "deploymentType": "str", + "deploymentUrl": "str", + "environmentType": "str", + "ingressIps": ["str"], + "isAutoScalingEnabled": bool, + "isPublic": bool, + "licenseModel": "str", + "lifecycleDetails": "str", + "lifecycleState": "str", + "maintenanceConfiguration": { + "bundleReleaseUpgradePeriodInDays": 0, + "interimReleaseUpgradePeriodInDays": 0, + "isInterimReleaseAutoUpgradeEnabled": bool, + "majorReleaseUpgradePeriodInDays": 0, + "securityPatchUpgradePeriodInDays": 0, + }, + "maintenanceWindow": {"day": "str", "startHour": 0}, + "ocid": "str", + "oggData": { + "deploymentName": "str", + "adminPassword": "str", + "adminUsername": "str", + "certificate": "str", + "credentialStore": "str", + "groupToRolesMapping": { + "administratorGroupId": "str", + "identityDomainId": "str", + "key": "str", + "operatorGroupId": "str", + "securityGroupId": "str", + "userGroupId": "str", + }, + "oggVersion": "str", + "passwordSecretId": "str", + }, + "privateIpAddress": "str", + "provisioningState": "str", + "storageUtilizationInBytes": 0, + "timeCreated": "str", + "timeUpdated": "str", + "timeZone": "str", + "version": "str", + }, + "systemData": { + "createdAt": "2020-02-20 00:00:00", + "createdBy": "str", + "createdByType": "str", + "lastModifiedAt": "2020-02-20 00:00:00", + "lastModifiedBy": "str", + "lastModifiedByType": "str", + }, + "tags": {"str": "str"}, + "type": "str", + "zones": ["str"], + }, + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_get(self, resource_group): + response = await self.client.golden_gate_deployments.get( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + ) + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_begin_update(self, resource_group): + response = await ( + await self.client.golden_gate_deployments.begin_update( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + properties={ + "properties": { + "backupSchedule": { + "bucketName": "str", + "compartmentId": "str", + "frequencyBackupScheduled": "str", + "isMetadataOnly": bool, + "namespaceName": "str", + "timeBackupScheduled": "str", + }, + "cpuCoreCount": 0, + "licenseModel": "str", + "maintenanceConfiguration": { + "bundleReleaseUpgradePeriodInDays": 0, + "interimReleaseUpgradePeriodInDays": 0, + "isInterimReleaseAutoUpgradeEnabled": bool, + "majorReleaseUpgradePeriodInDays": 0, + "securityPatchUpgradePeriodInDays": 0, + }, + "maintenanceWindow": {"day": "str", "startHour": 0}, + }, + "tags": {"str": "str"}, + "zones": ["str"], + }, + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_begin_delete(self, resource_group): + response = await ( + await self.client.golden_gate_deployments.begin_delete( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_list_by_resource_group(self, resource_group): + response = self.client.golden_gate_deployments.list_by_resource_group( + resource_group_name=resource_group.name, + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_begin_assign_connection(self, resource_group): + response = await ( + await self.client.golden_gate_deployments.begin_assign_connection( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + body={"connectionId": "str"}, + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_begin_unassign_connection(self, resource_group): + response = await ( + await self.client.golden_gate_deployments.begin_unassign_connection( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + body={"connectionId": "str"}, + ) + ).result() # call '.result()' to poll until service return final result + + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_list_assigned_connections_by_parent(self, resource_group): + response = self.client.golden_gate_deployments.list_assigned_connections_by_parent( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + ) + result = [r async for r in response] + # please add some check logic here by yourself + # ... + + @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) + @recorded_by_proxy_async + async def test_golden_gate_deployments_get_assigned_connection(self, resource_group): + response = await self.client.golden_gate_deployments.get_assigned_connection( + resource_group_name=resource_group.name, + golden_gate_deployment_name="str", + assignment_id="str", + ) + + # please add some check logic here by yourself + # ... diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_network_anchors_operations.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_network_anchors_operations.py index 36ca497513a8..1b848aabe1df 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_network_anchors_operations.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_network_anchors_operations.py @@ -55,6 +55,11 @@ def test_network_anchors_begin_create_or_update(self, resource_group): "ociVcnDnsLabel": "str", "ociVcnId": "str", "provisioningState": "str", + "proximityPlacementGroup": { + "entityTypeIntendedToUse": "str", + "proximityPlacementGroupId": "str", + "proximityAnchorId": "str", + }, "vnetId": "str", }, "systemData": { diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_network_anchors_operations_async.py b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_network_anchors_operations_async.py index 5946a9bd9d29..ad9462cfd94a 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_network_anchors_operations_async.py +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/generated_tests/test_oracle_database_mgmt_network_anchors_operations_async.py @@ -57,6 +57,11 @@ async def test_network_anchors_begin_create_or_update(self, resource_group): "ociVcnDnsLabel": "str", "ociVcnId": "str", "provisioningState": "str", + "proximityPlacementGroup": { + "entityTypeIntendedToUse": "str", + "proximityPlacementGroupId": "str", + "proximityAnchorId": "str", + }, "vnetId": "str", }, "systemData": { diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/pyproject.toml b/sdk/oracledatabase/azure-mgmt-oracledatabase/pyproject.toml index 3432418c713c..d51beb16939f 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/pyproject.toml +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/pyproject.toml @@ -17,13 +17,13 @@ classifiers = [ "Programming Language :: Python", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", ] -requires-python = ">=3.9" +requires-python = ">=3.10" keywords = [ "azure", "azure sdk", diff --git a/sdk/oracledatabase/azure-mgmt-oracledatabase/tsp-location.yaml b/sdk/oracledatabase/azure-mgmt-oracledatabase/tsp-location.yaml index e6fb2c93fee0..c51b197c4dff 100644 --- a/sdk/oracledatabase/azure-mgmt-oracledatabase/tsp-location.yaml +++ b/sdk/oracledatabase/azure-mgmt-oracledatabase/tsp-location.yaml @@ -1,5 +1,5 @@ -directory: specification/oracle/Oracle.Database.Management -commit: 34499b0aa7b61a0e96a37d28aa282c9d2c345122 +directory: specification/oracle/resource-manager/Oracle.Database/OracleDatabase +commit: 4e6e13d398d4c2616237322a62394fc4f1dfeb81 repo: Azure/azure-rest-api-specs additionalDirectories: -- specification/oracle/Oracle.Database.Management/models +- specification/oracle/resource-manager/Oracle.Database/OracleDatabase/models