/**
 * Database Service API
 * The API for the Database Service. Use this API to manage resources such as databases and DB Systems. For more information, see [Overview of the Database Service](/iaas/Content/Database/Concepts/databaseoverview.htm).

 * OpenAPI spec version: 20160918
 * Contact: sic_dbaas_cp_us_grp@oracle.com
 *
 * NOTE: This class is auto generated by OracleSDKGenerator.
 * Do not edit the class manually.
 *
 * Copyright (c) 2020, 2022, Oracle and/or its affiliates.  All rights reserved.
 * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
 */ import * as serviceRequests from "./request" ; import * as serviceResponses from "./response" ; import * as models from "./model" ; import { DatabaseClient } from "./client" ; import { genericWaiter , genericTerminalConditionWaiter , WaiterConfiguration } from "oci-common" ; import { waitForWorkRequest , WorkRequestClient , responses } from "oci-workrequests" ; export class DatabaseWaiter { public constructor ( private client , private workRequestClient , private readonly config ? ) { } param request return public async forActivateExadataInfrastructure ( request ) { const activateExadataInfrastructureResponse = await this . client . activateExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , activateExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : activateExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forAddStorageCapacityExadataInfrastructure ( request ) { const addStorageCapacityExadataInfrastructureResponse = await this . client . addStorageCapacityExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , addStorageCapacityExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : addStorageCapacityExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forAddVirtualMachineToVmCluster ( request ) { const addVirtualMachineToVmClusterResponse = await this . client . addVirtualMachineToVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , addVirtualMachineToVmClusterResponse . opcWorkRequestId ) ; return { response : addVirtualMachineToVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forAutonomousDatabaseManualRefresh ( request ) { const autonomousDatabaseManualRefreshResponse = await this . client . autonomousDatabaseManualRefresh ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , autonomousDatabaseManualRefreshResponse . opcWorkRequestId ) ; return { response : autonomousDatabaseManualRefreshResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeAutonomousContainerDatabaseCompartment ( request ) { const changeAutonomousContainerDatabaseCompartmentResponse = await this . client . changeAutonomousContainerDatabaseCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeAutonomousContainerDatabaseCompartmentResponse . opcWorkRequestId ) ; return { response : changeAutonomousContainerDatabaseCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeAutonomousDatabaseCompartment ( request ) { const changeAutonomousDatabaseCompartmentResponse = await this . client . changeAutonomousDatabaseCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeAutonomousDatabaseCompartmentResponse . opcWorkRequestId ) ; return { response : changeAutonomousDatabaseCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeAutonomousExadataInfrastructureCompartment ( request ) { const changeAutonomousExadataInfrastructureCompartmentResponse = await this . client . changeAutonomousExadataInfrastructureCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeAutonomousExadataInfrastructureCompartmentResponse . opcWorkRequestId ) ; return { response : changeAutonomousExadataInfrastructureCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeAutonomousVmClusterCompartment ( request ) { const changeAutonomousVmClusterCompartmentResponse = await this . client . changeAutonomousVmClusterCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeAutonomousVmClusterCompartmentResponse . opcWorkRequestId ) ; return { response : changeAutonomousVmClusterCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeBackupDestinationCompartment ( request ) { const changeBackupDestinationCompartmentResponse = await this . client . changeBackupDestinationCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeBackupDestinationCompartmentResponse . opcWorkRequestId ) ; return { response : changeBackupDestinationCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeCloudAutonomousVmClusterCompartment ( request ) { const changeCloudAutonomousVmClusterCompartmentResponse = await this . client . changeCloudAutonomousVmClusterCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeCloudAutonomousVmClusterCompartmentResponse . opcWorkRequestId ) ; return { response : changeCloudAutonomousVmClusterCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeCloudExadataInfrastructureCompartment ( request ) { const changeCloudExadataInfrastructureCompartmentResponse = await this . client . changeCloudExadataInfrastructureCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeCloudExadataInfrastructureCompartmentResponse . opcWorkRequestId ) ; return { response : changeCloudExadataInfrastructureCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeCloudVmClusterCompartment ( request ) { const changeCloudVmClusterCompartmentResponse = await this . client . changeCloudVmClusterCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeCloudVmClusterCompartmentResponse . opcWorkRequestId ) ; return { response : changeCloudVmClusterCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeDatabaseSoftwareImageCompartment ( request ) { const changeDatabaseSoftwareImageCompartmentResponse = await this . client . changeDatabaseSoftwareImageCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeDatabaseSoftwareImageCompartmentResponse . opcWorkRequestId ) ; return { response : changeDatabaseSoftwareImageCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeDbSystemCompartment ( request ) { const changeDbSystemCompartmentResponse = await this . client . changeDbSystemCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeDbSystemCompartmentResponse . opcWorkRequestId ) ; return { response : changeDbSystemCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeExadataInfrastructureCompartment ( request ) { const changeExadataInfrastructureCompartmentResponse = await this . client . changeExadataInfrastructureCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeExadataInfrastructureCompartmentResponse . opcWorkRequestId ) ; return { response : changeExadataInfrastructureCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeExternalContainerDatabaseCompartment ( request ) { const changeExternalContainerDatabaseCompartmentResponse = await this . client . changeExternalContainerDatabaseCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeExternalContainerDatabaseCompartmentResponse . opcWorkRequestId ) ; return { response : changeExternalContainerDatabaseCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeExternalNonContainerDatabaseCompartment ( request ) { const changeExternalNonContainerDatabaseCompartmentResponse = await this . client . changeExternalNonContainerDatabaseCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeExternalNonContainerDatabaseCompartmentResponse . opcWorkRequestId ) ; return { response : changeExternalNonContainerDatabaseCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeExternalPluggableDatabaseCompartment ( request ) { const changeExternalPluggableDatabaseCompartmentResponse = await this . client . changeExternalPluggableDatabaseCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeExternalPluggableDatabaseCompartmentResponse . opcWorkRequestId ) ; return { response : changeExternalPluggableDatabaseCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeKeyStoreCompartment ( request ) { const changeKeyStoreCompartmentResponse = await this . client . changeKeyStoreCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeKeyStoreCompartmentResponse . opcWorkRequestId ) ; return { response : changeKeyStoreCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forChangeVmClusterCompartment ( request ) { const changeVmClusterCompartmentResponse = await this . client . changeVmClusterCompartment ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , changeVmClusterCompartmentResponse . opcWorkRequestId ) ; return { response : changeVmClusterCompartmentResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCheckExternalDatabaseConnectorConnectionStatus ( request ) { const checkExternalDatabaseConnectorConnectionStatusResponse = await this . client . checkExternalDatabaseConnectorConnectionStatus ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , checkExternalDatabaseConnectorConnectionStatusResponse . opcWorkRequestId ) ; return { response : checkExternalDatabaseConnectorConnectionStatusResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCompleteExternalBackupJob ( request ) { const completeExternalBackupJobResponse = await this . client . completeExternalBackupJob ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , completeExternalBackupJobResponse . opcWorkRequestId ) ; return { response : completeExternalBackupJobResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forConfigureAutonomousDatabaseVaultKey ( request ) { const configureAutonomousDatabaseVaultKeyResponse = await this . client . configureAutonomousDatabaseVaultKey ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , configureAutonomousDatabaseVaultKeyResponse . opcWorkRequestId ) ; return { response : configureAutonomousDatabaseVaultKeyResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forConvertToPdb ( request ) { const convertToPdbResponse = await this . client . convertToPdb ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , convertToPdbResponse . opcWorkRequestId ) ; return { response : convertToPdbResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateAutonomousContainerDatabase ( request ) { const createAutonomousContainerDatabaseResponse = await this . client . createAutonomousContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createAutonomousContainerDatabaseResponse . opcWorkRequestId ) ; return { response : createAutonomousContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateAutonomousDatabase ( request ) { const createAutonomousDatabaseResponse = await this . client . createAutonomousDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createAutonomousDatabaseResponse . opcWorkRequestId ) ; return { response : createAutonomousDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateAutonomousDatabaseBackup ( request ) { const createAutonomousDatabaseBackupResponse = await this . client . createAutonomousDatabaseBackup ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createAutonomousDatabaseBackupResponse . opcWorkRequestId ) ; return { response : createAutonomousDatabaseBackupResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateAutonomousVmCluster ( request ) { const createAutonomousVmClusterResponse = await this . client . createAutonomousVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createAutonomousVmClusterResponse . opcWorkRequestId ) ; return { response : createAutonomousVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateBackup ( request ) { const createBackupResponse = await this . client . createBackup ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createBackupResponse . opcWorkRequestId ) ; return { response : createBackupResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateCloudAutonomousVmCluster ( request ) { const createCloudAutonomousVmClusterResponse = await this . client . createCloudAutonomousVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createCloudAutonomousVmClusterResponse . opcWorkRequestId ) ; return { response : createCloudAutonomousVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateCloudExadataInfrastructure ( request ) { const createCloudExadataInfrastructureResponse = await this . client . createCloudExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createCloudExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : createCloudExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateCloudVmCluster ( request ) { const createCloudVmClusterResponse = await this . client . createCloudVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createCloudVmClusterResponse . opcWorkRequestId ) ; return { response : createCloudVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateDataGuardAssociation ( request ) { const createDataGuardAssociationResponse = await this . client . createDataGuardAssociation ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createDataGuardAssociationResponse . opcWorkRequestId ) ; return { response : createDataGuardAssociationResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateDatabase ( request ) { const createDatabaseResponse = await this . client . createDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createDatabaseResponse . opcWorkRequestId ) ; return { response : createDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateDatabaseSoftwareImage ( request ) { const createDatabaseSoftwareImageResponse = await this . client . createDatabaseSoftwareImage ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createDatabaseSoftwareImageResponse . opcWorkRequestId ) ; return { response : createDatabaseSoftwareImageResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateDbHome ( request ) { const createDbHomeResponse = await this . client . createDbHome ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createDbHomeResponse . opcWorkRequestId ) ; return { response : createDbHomeResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateExadataInfrastructure ( request ) { const createExadataInfrastructureResponse = await this . client . createExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : createExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateExternalBackupJob ( request ) { const createExternalBackupJobResponse = await this . client . createExternalBackupJob ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createExternalBackupJobResponse . opcWorkRequestId ) ; return { response : createExternalBackupJobResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateExternalContainerDatabase ( request ) { const createExternalContainerDatabaseResponse = await this . client . createExternalContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createExternalContainerDatabaseResponse . opcWorkRequestId ) ; return { response : createExternalContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateExternalDatabaseConnector ( request ) { const createExternalDatabaseConnectorResponse = await this . client . createExternalDatabaseConnector ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createExternalDatabaseConnectorResponse . opcWorkRequestId ) ; return { response : createExternalDatabaseConnectorResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateExternalNonContainerDatabase ( request ) { const createExternalNonContainerDatabaseResponse = await this . client . createExternalNonContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createExternalNonContainerDatabaseResponse . opcWorkRequestId ) ; return { response : createExternalNonContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateExternalPluggableDatabase ( request ) { const createExternalPluggableDatabaseResponse = await this . client . createExternalPluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createExternalPluggableDatabaseResponse . opcWorkRequestId ) ; return { response : createExternalPluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreatePluggableDatabase ( request ) { const createPluggableDatabaseResponse = await this . client . createPluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createPluggableDatabaseResponse . opcWorkRequestId ) ; return { response : createPluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateVmCluster ( request ) { const createVmClusterResponse = await this . client . createVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createVmClusterResponse . opcWorkRequestId ) ; return { response : createVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forCreateVmClusterNetwork ( request ) { const createVmClusterNetworkResponse = await this . client . createVmClusterNetwork ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , createVmClusterNetworkResponse . opcWorkRequestId ) ; return { response : createVmClusterNetworkResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDbNodeAction ( request ) { const dbNodeActionResponse = await this . client . dbNodeAction ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , dbNodeActionResponse . opcWorkRequestId ) ; return { response : dbNodeActionResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteAutonomousDatabase ( request ) { const deleteAutonomousDatabaseResponse = await this . client . deleteAutonomousDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteAutonomousDatabaseResponse . opcWorkRequestId ) ; return { response : deleteAutonomousDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteAutonomousVmCluster ( request ) { const deleteAutonomousVmClusterResponse = await this . client . deleteAutonomousVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteAutonomousVmClusterResponse . opcWorkRequestId ) ; return { response : deleteAutonomousVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteBackup ( request ) { const deleteBackupResponse = await this . client . deleteBackup ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteBackupResponse . opcWorkRequestId ) ; return { response : deleteBackupResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteCloudAutonomousVmCluster ( request ) { const deleteCloudAutonomousVmClusterResponse = await this . client . deleteCloudAutonomousVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteCloudAutonomousVmClusterResponse . opcWorkRequestId ) ; return { response : deleteCloudAutonomousVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteCloudExadataInfrastructure ( request ) { const deleteCloudExadataInfrastructureResponse = await this . client . deleteCloudExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteCloudExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : deleteCloudExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteCloudVmCluster ( request ) { const deleteCloudVmClusterResponse = await this . client . deleteCloudVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteCloudVmClusterResponse . opcWorkRequestId ) ; return { response : deleteCloudVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteDatabase ( request ) { const deleteDatabaseResponse = await this . client . deleteDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteDatabaseResponse . opcWorkRequestId ) ; return { response : deleteDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteDatabaseSoftwareImage ( request ) { const deleteDatabaseSoftwareImageResponse = await this . client . deleteDatabaseSoftwareImage ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteDatabaseSoftwareImageResponse . opcWorkRequestId ) ; return { response : deleteDatabaseSoftwareImageResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteDbHome ( request ) { const deleteDbHomeResponse = await this . client . deleteDbHome ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteDbHomeResponse . opcWorkRequestId ) ; return { response : deleteDbHomeResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteExadataInfrastructure ( request ) { const deleteExadataInfrastructureResponse = await this . client . deleteExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : deleteExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteExternalContainerDatabase ( request ) { const deleteExternalContainerDatabaseResponse = await this . client . deleteExternalContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteExternalContainerDatabaseResponse . opcWorkRequestId ) ; return { response : deleteExternalContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteExternalDatabaseConnector ( request ) { const deleteExternalDatabaseConnectorResponse = await this . client . deleteExternalDatabaseConnector ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteExternalDatabaseConnectorResponse . opcWorkRequestId ) ; return { response : deleteExternalDatabaseConnectorResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteExternalNonContainerDatabase ( request ) { const deleteExternalNonContainerDatabaseResponse = await this . client . deleteExternalNonContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteExternalNonContainerDatabaseResponse . opcWorkRequestId ) ; return { response : deleteExternalNonContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteExternalPluggableDatabase ( request ) { const deleteExternalPluggableDatabaseResponse = await this . client . deleteExternalPluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteExternalPluggableDatabaseResponse . opcWorkRequestId ) ; return { response : deleteExternalPluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeletePluggableDatabase ( request ) { const deletePluggableDatabaseResponse = await this . client . deletePluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deletePluggableDatabaseResponse . opcWorkRequestId ) ; return { response : deletePluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteVmCluster ( request ) { const deleteVmClusterResponse = await this . client . deleteVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteVmClusterResponse . opcWorkRequestId ) ; return { response : deleteVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeleteVmClusterNetwork ( request ) { const deleteVmClusterNetworkResponse = await this . client . deleteVmClusterNetwork ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deleteVmClusterNetworkResponse . opcWorkRequestId ) ; return { response : deleteVmClusterNetworkResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDeregisterAutonomousDatabaseDataSafe ( request ) { const deregisterAutonomousDatabaseDataSafeResponse = await this . client . deregisterAutonomousDatabaseDataSafe ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , deregisterAutonomousDatabaseDataSafeResponse . opcWorkRequestId ) ; return { response : deregisterAutonomousDatabaseDataSafeResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDisableAutonomousDatabaseManagement ( request ) { const disableAutonomousDatabaseManagementResponse = await this . client . disableAutonomousDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , disableAutonomousDatabaseManagementResponse . opcWorkRequestId ) ; return { response : disableAutonomousDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDisableAutonomousDatabaseOperationsInsights ( request ) { const disableAutonomousDatabaseOperationsInsightsResponse = await this . client . disableAutonomousDatabaseOperationsInsights ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , disableAutonomousDatabaseOperationsInsightsResponse . opcWorkRequestId ) ; return { response : disableAutonomousDatabaseOperationsInsightsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDisableDatabaseManagement ( request ) { const disableDatabaseManagementResponse = await this . client . disableDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , disableDatabaseManagementResponse . opcWorkRequestId ) ; return { response : disableDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDisableExternalContainerDatabaseDatabaseManagement ( request ) { const disableExternalContainerDatabaseDatabaseManagementResponse = await this . client . disableExternalContainerDatabaseDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , disableExternalContainerDatabaseDatabaseManagementResponse . opcWorkRequestId ) ; return { response : disableExternalContainerDatabaseDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDisableExternalNonContainerDatabaseDatabaseManagement ( request ) { const disableExternalNonContainerDatabaseDatabaseManagementResponse = await this . client . disableExternalNonContainerDatabaseDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , disableExternalNonContainerDatabaseDatabaseManagementResponse . opcWorkRequestId ) ; return { response : disableExternalNonContainerDatabaseDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDisableExternalNonContainerDatabaseOperationsInsights ( request ) { const disableExternalNonContainerDatabaseOperationsInsightsResponse = await this . client . disableExternalNonContainerDatabaseOperationsInsights ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , disableExternalNonContainerDatabaseOperationsInsightsResponse . opcWorkRequestId ) ; return { response : disableExternalNonContainerDatabaseOperationsInsightsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDisableExternalPluggableDatabaseDatabaseManagement ( request ) { const disableExternalPluggableDatabaseDatabaseManagementResponse = await this . client . disableExternalPluggableDatabaseDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , disableExternalPluggableDatabaseDatabaseManagementResponse . opcWorkRequestId ) ; return { response : disableExternalPluggableDatabaseDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forDisableExternalPluggableDatabaseOperationsInsights ( request ) { const disableExternalPluggableDatabaseOperationsInsightsResponse = await this . client . disableExternalPluggableDatabaseOperationsInsights ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , disableExternalPluggableDatabaseOperationsInsightsResponse . opcWorkRequestId ) ; return { response : disableExternalPluggableDatabaseOperationsInsightsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forEnableAutonomousDatabaseManagement ( request ) { const enableAutonomousDatabaseManagementResponse = await this . client . enableAutonomousDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , enableAutonomousDatabaseManagementResponse . opcWorkRequestId ) ; return { response : enableAutonomousDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forEnableAutonomousDatabaseOperationsInsights ( request ) { const enableAutonomousDatabaseOperationsInsightsResponse = await this . client . enableAutonomousDatabaseOperationsInsights ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , enableAutonomousDatabaseOperationsInsightsResponse . opcWorkRequestId ) ; return { response : enableAutonomousDatabaseOperationsInsightsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forEnableDatabaseManagement ( request ) { const enableDatabaseManagementResponse = await this . client . enableDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , enableDatabaseManagementResponse . opcWorkRequestId ) ; return { response : enableDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forEnableExternalContainerDatabaseDatabaseManagement ( request ) { const enableExternalContainerDatabaseDatabaseManagementResponse = await this . client . enableExternalContainerDatabaseDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , enableExternalContainerDatabaseDatabaseManagementResponse . opcWorkRequestId ) ; return { response : enableExternalContainerDatabaseDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forEnableExternalNonContainerDatabaseDatabaseManagement ( request ) { const enableExternalNonContainerDatabaseDatabaseManagementResponse = await this . client . enableExternalNonContainerDatabaseDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , enableExternalNonContainerDatabaseDatabaseManagementResponse . opcWorkRequestId ) ; return { response : enableExternalNonContainerDatabaseDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forEnableExternalNonContainerDatabaseOperationsInsights ( request ) { const enableExternalNonContainerDatabaseOperationsInsightsResponse = await this . client . enableExternalNonContainerDatabaseOperationsInsights ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , enableExternalNonContainerDatabaseOperationsInsightsResponse . opcWorkRequestId ) ; return { response : enableExternalNonContainerDatabaseOperationsInsightsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forEnableExternalPluggableDatabaseDatabaseManagement ( request ) { const enableExternalPluggableDatabaseDatabaseManagementResponse = await this . client . enableExternalPluggableDatabaseDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , enableExternalPluggableDatabaseDatabaseManagementResponse . opcWorkRequestId ) ; return { response : enableExternalPluggableDatabaseDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forEnableExternalPluggableDatabaseOperationsInsights ( request ) { const enableExternalPluggableDatabaseOperationsInsightsResponse = await this . client . enableExternalPluggableDatabaseOperationsInsights ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , enableExternalPluggableDatabaseOperationsInsightsResponse . opcWorkRequestId ) ; return { response : enableExternalPluggableDatabaseOperationsInsightsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forFailOverAutonomousDatabase ( request ) { const failOverAutonomousDatabaseResponse = await this . client . failOverAutonomousDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , failOverAutonomousDatabaseResponse . opcWorkRequestId ) ; return { response : failOverAutonomousDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forFailoverAutonomousContainerDatabaseDataguardAssociation ( request ) { const failoverAutonomousContainerDatabaseDataguardAssociationResponse = await this . client . failoverAutonomousContainerDatabaseDataguardAssociation ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , failoverAutonomousContainerDatabaseDataguardAssociationResponse . opcWorkRequestId ) ; return { response : failoverAutonomousContainerDatabaseDataguardAssociationResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forFailoverDataGuardAssociation ( request ) { const failoverDataGuardAssociationResponse = await this . client . failoverDataGuardAssociation ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , failoverDataGuardAssociationResponse . opcWorkRequestId ) ; return { response : failoverDataGuardAssociationResponse , workRequestResponse : getWorkRequestResponse } ; } param request param targetStates return public async forAutonomousContainerDatabase ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getAutonomousContainerDatabase ( request ) , response => targetStates . includes ( response . autonomousContainerDatabase . lifecycleState ! ) , targetStates . includes ( models . AutonomousContainerDatabase . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forAutonomousContainerDatabaseDataguardAssociation ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getAutonomousContainerDatabaseDataguardAssociation ( request ) , response => targetStates . includes ( response . autonomousContainerDatabaseDataguardAssociation . lifecycleState ! ) , targetStates . includes ( models . AutonomousContainerDatabaseDataguardAssociation . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forAutonomousDatabase ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getAutonomousDatabase ( request ) , response => targetStates . includes ( response . autonomousDatabase . lifecycleState ! ) , targetStates . includes ( models . AutonomousDatabase . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forAutonomousDatabaseBackup ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getAutonomousDatabaseBackup ( request ) , response => targetStates . includes ( response . autonomousDatabaseBackup . lifecycleState ! ) , targetStates . includes ( models . AutonomousDatabaseBackup . LifecycleState . Deleted ) ) ; } param request param targetStates return public async forAutonomousDatabaseDataguardAssociation ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getAutonomousDatabaseDataguardAssociation ( request ) , response => targetStates . includes ( response . autonomousDatabaseDataguardAssociation . lifecycleState ! ) , targetStates . includes ( models . AutonomousDatabaseDataguardAssociation . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forAutonomousDatabaseWallet ( request , ... targetStates ) { return genericWaiter ( this . config , ( ) => this . client . getAutonomousDatabaseWallet ( request ) , response => targetStates . includes ( response . autonomousDatabaseWallet . lifecycleState ! ) ) ; } param request param targetStates return public async forAutonomousExadataInfrastructure ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getAutonomousExadataInfrastructure ( request ) , response => targetStates . includes ( response . autonomousExadataInfrastructure . lifecycleState ! ) , targetStates . includes ( models . AutonomousExadataInfrastructure . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forAutonomousPatch ( request , ... targetStates ) { return genericWaiter ( this . config , ( ) => this . client . getAutonomousPatch ( request ) , response => targetStates . includes ( response . autonomousPatch . lifecycleState ! ) ) ; } param request param targetStates return public async forAutonomousVmCluster ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getAutonomousVmCluster ( request ) , response => targetStates . includes ( response . autonomousVmCluster . lifecycleState ! ) , targetStates . includes ( models . AutonomousVmCluster . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forBackup ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getBackup ( request ) , response => targetStates . includes ( response . backup . lifecycleState ! ) , targetStates . includes ( models . Backup . LifecycleState . Deleted ) ) ; } param request param targetStates return public async forBackupDestination ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getBackupDestination ( request ) , response => targetStates . includes ( response . backupDestination . lifecycleState ! ) , targetStates . includes ( models . BackupDestination . LifecycleState . Deleted ) ) ; } param request param targetStates return public async forCloudAutonomousVmCluster ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getCloudAutonomousVmCluster ( request ) , response => targetStates . includes ( response . cloudAutonomousVmCluster . lifecycleState ! ) , targetStates . includes ( models . CloudAutonomousVmCluster . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forCloudExadataInfrastructure ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getCloudExadataInfrastructure ( request ) , response => targetStates . includes ( response . cloudExadataInfrastructure . lifecycleState ! ) , targetStates . includes ( models . CloudExadataInfrastructure . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forCloudVmCluster ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getCloudVmCluster ( request ) , response => targetStates . includes ( response . cloudVmCluster . lifecycleState ! ) , targetStates . includes ( models . CloudVmCluster . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forConsoleConnection ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getConsoleConnection ( request ) , response => targetStates . includes ( response . consoleConnection . lifecycleState ! ) , targetStates . includes ( models . ConsoleConnection . LifecycleState . Deleted ) ) ; } param request param targetStates return public async forDataGuardAssociation ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getDataGuardAssociation ( request ) , response => targetStates . includes ( response . dataGuardAssociation . lifecycleState ! ) , targetStates . includes ( models . DataGuardAssociation . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forDatabase ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getDatabase ( request ) , response => targetStates . includes ( response . database . lifecycleState ! ) , targetStates . includes ( models . Database . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forDatabaseSoftwareImage ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getDatabaseSoftwareImage ( request ) , response => targetStates . includes ( response . databaseSoftwareImage . lifecycleState ! ) , targetStates . includes ( models . DatabaseSoftwareImage . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forDatabaseUpgradeHistoryEntry ( request , ... targetStates ) { return genericWaiter ( this . config , ( ) => this . client . getDatabaseUpgradeHistoryEntry ( request ) , response => targetStates . includes ( response . databaseUpgradeHistoryEntry . lifecycleState ! ) ) ; } param request param targetStates return public async forDbHome ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getDbHome ( request ) , response => targetStates . includes ( response . dbHome . lifecycleState ! ) , targetStates . includes ( models . DbHome . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forDbNode ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getDbNode ( request ) , response => targetStates . includes ( response . dbNode . lifecycleState ! ) , targetStates . includes ( models . DbNode . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forDbServer ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getDbServer ( request ) , response => targetStates . includes ( response . dbServer . lifecycleState ! ) , targetStates . includes ( models . DbServer . LifecycleState . Deleted ) ) ; } param request param targetStates return public async forDbSystem ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getDbSystem ( request ) , response => targetStates . includes ( response . dbSystem . lifecycleState ! ) , targetStates . includes ( models . DbSystem . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forExadataInfrastructure ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getExadataInfrastructure ( request ) , response => targetStates . includes ( response . exadataInfrastructure . lifecycleState ! ) , targetStates . includes ( models . ExadataInfrastructure . LifecycleState . Deleted ) ) ; } param request param targetStates return public async forExadataIormConfig ( request , ... targetStates ) { return genericWaiter ( this . config , ( ) => this . client . getExadataIormConfig ( request ) , response => targetStates . includes ( response . exadataIormConfig . lifecycleState ! ) ) ; } param request param targetStates return public async forExternalContainerDatabase ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getExternalContainerDatabase ( request ) , response => targetStates . includes ( response . externalContainerDatabase . lifecycleState ! ) , targetStates . includes ( models . ExternalContainerDatabase . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forExternalDatabaseConnector ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getExternalDatabaseConnector ( request ) , response => targetStates . includes ( response . externalDatabaseConnector . lifecycleState ! ) , targetStates . includes ( models . ExternalDatabaseConnector . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forExternalNonContainerDatabase ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getExternalNonContainerDatabase ( request ) , response => targetStates . includes ( response . externalNonContainerDatabase . lifecycleState ! ) , targetStates . includes ( models . ExternalNonContainerDatabase . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forExternalPluggableDatabase ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getExternalPluggableDatabase ( request ) , response => targetStates . includes ( response . externalPluggableDatabase . lifecycleState ! ) , targetStates . includes ( models . ExternalPluggableDatabase . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forKeyStore ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getKeyStore ( request ) , response => targetStates . includes ( response . keyStore . lifecycleState ! ) , targetStates . includes ( models . KeyStore . LifecycleState . Deleted ) ) ; } param request param targetStates return public async forMaintenanceRun ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getMaintenanceRun ( request ) , response => targetStates . includes ( response . maintenanceRun . lifecycleState ! ) , targetStates . includes ( models . MaintenanceRun . LifecycleState . Deleted ) ) ; } param request param targetStates return public async forPdbConversionHistoryEntry ( request , ... targetStates ) { return genericWaiter ( this . config , ( ) => this . client . getPdbConversionHistoryEntry ( request ) , response => targetStates . includes ( response . pdbConversionHistoryEntry . lifecycleState ! ) ) ; } param request param targetStates return public async forPluggableDatabase ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getPluggableDatabase ( request ) , response => targetStates . includes ( response . pluggableDatabase . lifecycleState ! ) , targetStates . includes ( models . PluggableDatabase . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forVmCluster ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getVmCluster ( request ) , response => targetStates . includes ( response . vmCluster . lifecycleState ! ) , targetStates . includes ( models . VmCluster . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forVmClusterNetwork ( request , ... targetStates ) { return genericTerminalConditionWaiter ( this . config , ( ) => this . client . getVmClusterNetwork ( request ) , response => targetStates . includes ( response . vmClusterNetwork . lifecycleState ! ) , targetStates . includes ( models . VmClusterNetwork . LifecycleState . Terminated ) ) ; } param request param targetStates return public async forVmClusterUpdate ( request , ... targetStates ) { return genericWaiter ( this . config , ( ) => this . client . getVmClusterUpdate ( request ) , response => targetStates . includes ( response . vmClusterUpdate . lifecycleState ! ) ) ; } param request param targetStates return public async forVmClusterUpdateHistoryEntry ( request , ... targetStates ) { return genericWaiter ( this . config , ( ) => this . client . getVmClusterUpdateHistoryEntry ( request ) , response => targetStates . includes ( response . vmClusterUpdateHistoryEntry . lifecycleState ! ) ) ; } param request return public async forLaunchAutonomousExadataInfrastructure ( request ) { const launchAutonomousExadataInfrastructureResponse = await this . client . launchAutonomousExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , launchAutonomousExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : launchAutonomousExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forLaunchDbSystem ( request ) { const launchDbSystemResponse = await this . client . launchDbSystem ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , launchDbSystemResponse . opcWorkRequestId ) ; return { response : launchDbSystemResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forLocalClonePluggableDatabase ( request ) { const localClonePluggableDatabaseResponse = await this . client . localClonePluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , localClonePluggableDatabaseResponse . opcWorkRequestId ) ; return { response : localClonePluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forMigrateExadataDbSystemResourceModel ( request ) { const migrateExadataDbSystemResourceModelResponse = await this . client . migrateExadataDbSystemResourceModel ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , migrateExadataDbSystemResourceModelResponse . opcWorkRequestId ) ; return { response : migrateExadataDbSystemResourceModelResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forMigrateVaultKey ( request ) { const migrateVaultKeyResponse = await this . client . migrateVaultKey ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , migrateVaultKeyResponse . opcWorkRequestId ) ; return { response : migrateVaultKeyResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forModifyDatabaseManagement ( request ) { const modifyDatabaseManagementResponse = await this . client . modifyDatabaseManagement ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , modifyDatabaseManagementResponse . opcWorkRequestId ) ; return { response : modifyDatabaseManagementResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRegisterAutonomousDatabaseDataSafe ( request ) { const registerAutonomousDatabaseDataSafeResponse = await this . client . registerAutonomousDatabaseDataSafe ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , registerAutonomousDatabaseDataSafeResponse . opcWorkRequestId ) ; return { response : registerAutonomousDatabaseDataSafeResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forReinstateAutonomousContainerDatabaseDataguardAssociation ( request ) { const reinstateAutonomousContainerDatabaseDataguardAssociationResponse = await this . client . reinstateAutonomousContainerDatabaseDataguardAssociation ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , reinstateAutonomousContainerDatabaseDataguardAssociationResponse . opcWorkRequestId ) ; return { response : reinstateAutonomousContainerDatabaseDataguardAssociationResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forReinstateDataGuardAssociation ( request ) { const reinstateDataGuardAssociationResponse = await this . client . reinstateDataGuardAssociation ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , reinstateDataGuardAssociationResponse . opcWorkRequestId ) ; return { response : reinstateDataGuardAssociationResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRemoteClonePluggableDatabase ( request ) { const remoteClonePluggableDatabaseResponse = await this . client . remoteClonePluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , remoteClonePluggableDatabaseResponse . opcWorkRequestId ) ; return { response : remoteClonePluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRemoveVirtualMachineFromVmCluster ( request ) { const removeVirtualMachineFromVmClusterResponse = await this . client . removeVirtualMachineFromVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , removeVirtualMachineFromVmClusterResponse . opcWorkRequestId ) ; return { response : removeVirtualMachineFromVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRestartAutonomousContainerDatabase ( request ) { const restartAutonomousContainerDatabaseResponse = await this . client . restartAutonomousContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , restartAutonomousContainerDatabaseResponse . opcWorkRequestId ) ; return { response : restartAutonomousContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRestartAutonomousDatabase ( request ) { const restartAutonomousDatabaseResponse = await this . client . restartAutonomousDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , restartAutonomousDatabaseResponse . opcWorkRequestId ) ; return { response : restartAutonomousDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRestoreAutonomousDatabase ( request ) { const restoreAutonomousDatabaseResponse = await this . client . restoreAutonomousDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , restoreAutonomousDatabaseResponse . opcWorkRequestId ) ; return { response : restoreAutonomousDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRestoreDatabase ( request ) { const restoreDatabaseResponse = await this . client . restoreDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , restoreDatabaseResponse . opcWorkRequestId ) ; return { response : restoreDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRotateAutonomousContainerDatabaseEncryptionKey ( request ) { const rotateAutonomousContainerDatabaseEncryptionKeyResponse = await this . client . rotateAutonomousContainerDatabaseEncryptionKey ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , rotateAutonomousContainerDatabaseEncryptionKeyResponse . opcWorkRequestId ) ; return { response : rotateAutonomousContainerDatabaseEncryptionKeyResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRotateAutonomousDatabaseEncryptionKey ( request ) { const rotateAutonomousDatabaseEncryptionKeyResponse = await this . client . rotateAutonomousDatabaseEncryptionKey ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , rotateAutonomousDatabaseEncryptionKeyResponse . opcWorkRequestId ) ; return { response : rotateAutonomousDatabaseEncryptionKeyResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRotateCloudAutonomousVmClusterOrdsCerts ( request ) { const rotateCloudAutonomousVmClusterOrdsCertsResponse = await this . client . rotateCloudAutonomousVmClusterOrdsCerts ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , rotateCloudAutonomousVmClusterOrdsCertsResponse . opcWorkRequestId ) ; return { response : rotateCloudAutonomousVmClusterOrdsCertsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRotateCloudAutonomousVmClusterSslCerts ( request ) { const rotateCloudAutonomousVmClusterSslCertsResponse = await this . client . rotateCloudAutonomousVmClusterSslCerts ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , rotateCloudAutonomousVmClusterSslCertsResponse . opcWorkRequestId ) ; return { response : rotateCloudAutonomousVmClusterSslCertsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRotateOrdsCerts ( request ) { const rotateOrdsCertsResponse = await this . client . rotateOrdsCerts ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , rotateOrdsCertsResponse . opcWorkRequestId ) ; return { response : rotateOrdsCertsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRotateSslCerts ( request ) { const rotateSslCertsResponse = await this . client . rotateSslCerts ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , rotateSslCertsResponse . opcWorkRequestId ) ; return { response : rotateSslCertsResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forRotateVaultKey ( request ) { const rotateVaultKeyResponse = await this . client . rotateVaultKey ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , rotateVaultKeyResponse . opcWorkRequestId ) ; return { response : rotateVaultKeyResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forScanExternalContainerDatabasePluggableDatabases ( request ) { const scanExternalContainerDatabasePluggableDatabasesResponse = await this . client . scanExternalContainerDatabasePluggableDatabases ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , scanExternalContainerDatabasePluggableDatabasesResponse . opcWorkRequestId ) ; return { response : scanExternalContainerDatabasePluggableDatabasesResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forStartAutonomousDatabase ( request ) { const startAutonomousDatabaseResponse = await this . client . startAutonomousDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , startAutonomousDatabaseResponse . opcWorkRequestId ) ; return { response : startAutonomousDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forStartPluggableDatabase ( request ) { const startPluggableDatabaseResponse = await this . client . startPluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , startPluggableDatabaseResponse . opcWorkRequestId ) ; return { response : startPluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forStopAutonomousDatabase ( request ) { const stopAutonomousDatabaseResponse = await this . client . stopAutonomousDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , stopAutonomousDatabaseResponse . opcWorkRequestId ) ; return { response : stopAutonomousDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forStopPluggableDatabase ( request ) { const stopPluggableDatabaseResponse = await this . client . stopPluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , stopPluggableDatabaseResponse . opcWorkRequestId ) ; return { response : stopPluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forSwitchoverAutonomousContainerDatabaseDataguardAssociation ( request ) { const switchoverAutonomousContainerDatabaseDataguardAssociationResponse = await this . client . switchoverAutonomousContainerDatabaseDataguardAssociation ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , switchoverAutonomousContainerDatabaseDataguardAssociationResponse . opcWorkRequestId ) ; return { response : switchoverAutonomousContainerDatabaseDataguardAssociationResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forSwitchoverAutonomousDatabase ( request ) { const switchoverAutonomousDatabaseResponse = await this . client . switchoverAutonomousDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , switchoverAutonomousDatabaseResponse . opcWorkRequestId ) ; return { response : switchoverAutonomousDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forSwitchoverDataGuardAssociation ( request ) { const switchoverDataGuardAssociationResponse = await this . client . switchoverDataGuardAssociation ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , switchoverDataGuardAssociationResponse . opcWorkRequestId ) ; return { response : switchoverDataGuardAssociationResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forTerminateAutonomousContainerDatabase ( request ) { const terminateAutonomousContainerDatabaseResponse = await this . client . terminateAutonomousContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , terminateAutonomousContainerDatabaseResponse . opcWorkRequestId ) ; return { response : terminateAutonomousContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forTerminateAutonomousExadataInfrastructure ( request ) { const terminateAutonomousExadataInfrastructureResponse = await this . client . terminateAutonomousExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , terminateAutonomousExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : terminateAutonomousExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forTerminateDbSystem ( request ) { const terminateDbSystemResponse = await this . client . terminateDbSystem ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , terminateDbSystemResponse . opcWorkRequestId ) ; return { response : terminateDbSystemResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateAutonomousContainerDatabase ( request ) { const updateAutonomousContainerDatabaseResponse = await this . client . updateAutonomousContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateAutonomousContainerDatabaseResponse . opcWorkRequestId ) ; return { response : updateAutonomousContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateAutonomousDatabase ( request ) { const updateAutonomousDatabaseResponse = await this . client . updateAutonomousDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateAutonomousDatabaseResponse . opcWorkRequestId ) ; return { response : updateAutonomousDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateAutonomousDatabaseRegionalWallet ( request ) { const updateAutonomousDatabaseRegionalWalletResponse = await this . client . updateAutonomousDatabaseRegionalWallet ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateAutonomousDatabaseRegionalWalletResponse . opcWorkRequestId ) ; return { response : updateAutonomousDatabaseRegionalWalletResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateAutonomousDatabaseWallet ( request ) { const updateAutonomousDatabaseWalletResponse = await this . client . updateAutonomousDatabaseWallet ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateAutonomousDatabaseWalletResponse . opcWorkRequestId ) ; return { response : updateAutonomousDatabaseWalletResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateAutonomousExadataInfrastructure ( request ) { const updateAutonomousExadataInfrastructureResponse = await this . client . updateAutonomousExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateAutonomousExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : updateAutonomousExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateAutonomousVmCluster ( request ) { const updateAutonomousVmClusterResponse = await this . client . updateAutonomousVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateAutonomousVmClusterResponse . opcWorkRequestId ) ; return { response : updateAutonomousVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateCloudAutonomousVmCluster ( request ) { const updateCloudAutonomousVmClusterResponse = await this . client . updateCloudAutonomousVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateCloudAutonomousVmClusterResponse . opcWorkRequestId ) ; return { response : updateCloudAutonomousVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateCloudExadataInfrastructure ( request ) { const updateCloudExadataInfrastructureResponse = await this . client . updateCloudExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateCloudExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : updateCloudExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateCloudVmCluster ( request ) { const updateCloudVmClusterResponse = await this . client . updateCloudVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateCloudVmClusterResponse . opcWorkRequestId ) ; return { response : updateCloudVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateCloudVmClusterIormConfig ( request ) { const updateCloudVmClusterIormConfigResponse = await this . client . updateCloudVmClusterIormConfig ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateCloudVmClusterIormConfigResponse . opcWorkRequestId ) ; return { response : updateCloudVmClusterIormConfigResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateDataGuardAssociation ( request ) { const updateDataGuardAssociationResponse = await this . client . updateDataGuardAssociation ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateDataGuardAssociationResponse . opcWorkRequestId ) ; return { response : updateDataGuardAssociationResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateDatabase ( request ) { const updateDatabaseResponse = await this . client . updateDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateDatabaseResponse . opcWorkRequestId ) ; return { response : updateDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateDbHome ( request ) { const updateDbHomeResponse = await this . client . updateDbHome ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateDbHomeResponse . opcWorkRequestId ) ; return { response : updateDbHomeResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateDbSystem ( request ) { const updateDbSystemResponse = await this . client . updateDbSystem ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateDbSystemResponse . opcWorkRequestId ) ; return { response : updateDbSystemResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateExadataInfrastructure ( request ) { const updateExadataInfrastructureResponse = await this . client . updateExadataInfrastructure ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateExadataInfrastructureResponse . opcWorkRequestId ) ; return { response : updateExadataInfrastructureResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateExadataIormConfig ( request ) { const updateExadataIormConfigResponse = await this . client . updateExadataIormConfig ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateExadataIormConfigResponse . opcWorkRequestId ) ; return { response : updateExadataIormConfigResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateExternalContainerDatabase ( request ) { const updateExternalContainerDatabaseResponse = await this . client . updateExternalContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateExternalContainerDatabaseResponse . opcWorkRequestId ) ; return { response : updateExternalContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateExternalDatabaseConnector ( request ) { const updateExternalDatabaseConnectorResponse = await this . client . updateExternalDatabaseConnector ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateExternalDatabaseConnectorResponse . opcWorkRequestId ) ; return { response : updateExternalDatabaseConnectorResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateExternalNonContainerDatabase ( request ) { const updateExternalNonContainerDatabaseResponse = await this . client . updateExternalNonContainerDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateExternalNonContainerDatabaseResponse . opcWorkRequestId ) ; return { response : updateExternalNonContainerDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateExternalPluggableDatabase ( request ) { const updateExternalPluggableDatabaseResponse = await this . client . updateExternalPluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateExternalPluggableDatabaseResponse . opcWorkRequestId ) ; return { response : updateExternalPluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdatePluggableDatabase ( request ) { const updatePluggableDatabaseResponse = await this . client . updatePluggableDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updatePluggableDatabaseResponse . opcWorkRequestId ) ; return { response : updatePluggableDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateVmCluster ( request ) { const updateVmClusterResponse = await this . client . updateVmCluster ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateVmClusterResponse . opcWorkRequestId ) ; return { response : updateVmClusterResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpdateVmClusterNetwork ( request ) { const updateVmClusterNetworkResponse = await this . client . updateVmClusterNetwork ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , updateVmClusterNetworkResponse . opcWorkRequestId ) ; return { response : updateVmClusterNetworkResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forUpgradeDatabase ( request ) { const upgradeDatabaseResponse = await this . client . upgradeDatabase ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , upgradeDatabaseResponse . opcWorkRequestId ) ; return { response : upgradeDatabaseResponse , workRequestResponse : getWorkRequestResponse } ; } param request return public async forValidateVmClusterNetwork ( request ) { const validateVmClusterNetworkResponse = await this . client . validateVmClusterNetwork ( request ) ; const getWorkRequestResponse = await waitForWorkRequest ( this . config , this . workRequestClient , validateVmClusterNetworkResponse . opcWorkRequestId ) ; return { response : validateVmClusterNetworkResponse , workRequestResponse : getWorkRequestResponse } ; } }