Interface ShardedDatabaseServiceAsync

  • All Superinterfaces:
    AutoCloseable
    All Known Implementing Classes:
    ShardedDatabaseServiceAsyncClient

    @Generated(value="OracleSDKGenerator",
               comments="API Version: 20230301")
    public interface ShardedDatabaseServiceAsync
    extends AutoCloseable
    Use the Globally Distributed Database service APIs to create and manage distributed databases.
    • Method Detail

      • refreshClient

        void refreshClient()
        Rebuilds the client from scratch.

        Useful to refresh certificates.

      • setEndpoint

        void setEndpoint​(String endpoint)
        Sets the endpoint to call (ex, https://www.example.com).
        Parameters:
        endpoint - The endpoint of the serice.
      • getEndpoint

        String getEndpoint()
        Gets the set endpoint for REST call (ex, https://www.example.com)
      • setRegion

        void setRegion​(Region region)
        Sets the region to call (ex, Region.US_PHOENIX_1).

        Note, this will call setEndpoint after resolving the endpoint. If the service is not available in this region, however, an IllegalArgumentException will be raised.

        Parameters:
        region - The region of the service.
      • setRegion

        void setRegion​(String regionId)
        Sets the region to call (ex, ‘us-phoenix-1’).

        Note, this will first try to map the region ID to a known Region and call setRegion.

        If no known Region could be determined, it will create an endpoint based on the default endpoint format (Region.formatDefaultRegionEndpoint(Service, String) and then call setEndpoint.

        Parameters:
        regionId - The public region ID.
      • useRealmSpecificEndpointTemplate

        void useRealmSpecificEndpointTemplate​(boolean realmSpecificEndpointTemplateEnabled)
        Determines whether realm specific endpoint should be used or not.

        Set realmSpecificEndpointTemplateEnabled to “true” if the user wants to enable use of realm specific endpoint template, otherwise set it to “false”

        Parameters:
        realmSpecificEndpointTemplateEnabled - flag to enable the use of realm specific endpoint template
      • configureShardedDatabaseGsms

        Future<ConfigureShardedDatabaseGsmsResponse> configureShardedDatabaseGsms​(ConfigureShardedDatabaseGsmsRequest request,
                                                                                  AsyncHandler<ConfigureShardedDatabaseGsmsRequest,​ConfigureShardedDatabaseGsmsResponse> handler)
        Configure new Global Service Manager(GSM aka shard manager) instances for the sharded database.

        Specify the names of old GSM instances that need to be replaced via parameter oldGsmNames in the request payload. Also specify whether rotated GSM instances shall be provisioned with latest image of GSM software or the image used by existing GSM instances shall be used.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • configureSharding

        Future<ConfigureShardingResponse> configureSharding​(ConfigureShardingRequest request,
                                                            AsyncHandler<ConfigureShardingRequest,​ConfigureShardingResponse> handler)
        Once all components of sharded database are provisioned, and signed GSM certificates are successfully uploaded, this api shall be invoked to configure sharding on the sharded database.

        Note that this ‘ConfigureSharding’ API also needs to be invoked after successfully adding a new shard to the sharded database using PATCH api. If this API is not invoked after successfully adding a new shard, then that new shard will not be a participant in sharding topology of the sharded database.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • createPrivateEndpoint

        Future<CreatePrivateEndpointResponse> createPrivateEndpoint​(CreatePrivateEndpointRequest request,
                                                                    AsyncHandler<CreatePrivateEndpointRequest,​CreatePrivateEndpointResponse> handler)
        Creates a PrivateEndpoint.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • createShardedDatabase

        Future<CreateShardedDatabaseResponse> createShardedDatabase​(CreateShardedDatabaseRequest request,
                                                                    AsyncHandler<CreateShardedDatabaseRequest,​CreateShardedDatabaseResponse> handler)
        Creates a Sharded Database.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • deletePrivateEndpoint

        Future<DeletePrivateEndpointResponse> deletePrivateEndpoint​(DeletePrivateEndpointRequest request,
                                                                    AsyncHandler<DeletePrivateEndpointRequest,​DeletePrivateEndpointResponse> handler)
        Delete the given private endpoint.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • deleteShardedDatabase

        Future<DeleteShardedDatabaseResponse> deleteShardedDatabase​(DeleteShardedDatabaseRequest request,
                                                                    AsyncHandler<DeleteShardedDatabaseRequest,​DeleteShardedDatabaseResponse> handler)
        Terminate the given sharded databases.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • downloadGsmCertificateSigningRequest

        Future<DownloadGsmCertificateSigningRequestResponse> downloadGsmCertificateSigningRequest​(DownloadGsmCertificateSigningRequestRequest request,
                                                                                                  AsyncHandler<DownloadGsmCertificateSigningRequestRequest,​DownloadGsmCertificateSigningRequestResponse> handler)
        Generate the common certificate signing request for GSMs.

        Download the .csr file from API response. Users can use this .csr file to generate the CA signed certificate, and as a next step use ‘uploadSignedCertificateAndGenerateWallet’ API to upload the CA signed certificate to GSM, and generate wallets for the GSM instances of the sharded database.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • fetchConnectionString

        Future<FetchConnectionStringResponse> fetchConnectionString​(FetchConnectionStringRequest request,
                                                                    AsyncHandler<FetchConnectionStringRequest,​FetchConnectionStringResponse> handler)
        Gets the Sharded Database Connection Strings.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • generateGsmCertificateSigningRequest

        Future<GenerateGsmCertificateSigningRequestResponse> generateGsmCertificateSigningRequest​(GenerateGsmCertificateSigningRequestRequest request,
                                                                                                  AsyncHandler<GenerateGsmCertificateSigningRequestRequest,​GenerateGsmCertificateSigningRequestResponse> handler)
        Generate the certificate signing request for GSM instances of the sharded database.

        Once certificate signing request is generated, then customers can download the certificate signing request using ‘downloadGsmCertificateSigningRequest’ api call.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • generateWallet

        Future<GenerateWalletResponse> generateWallet​(GenerateWalletRequest request,
                                                      AsyncHandler<GenerateWalletRequest,​GenerateWalletResponse> handler)
        Generate the wallet associated with sharded database.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getPrivateEndpoint

        Future<GetPrivateEndpointResponse> getPrivateEndpoint​(GetPrivateEndpointRequest request,
                                                              AsyncHandler<GetPrivateEndpointRequest,​GetPrivateEndpointResponse> handler)
        Get the PrivateEndpoint resource.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getShardedDatabase

        Future<GetShardedDatabaseResponse> getShardedDatabase​(GetShardedDatabaseRequest request,
                                                              AsyncHandler<GetShardedDatabaseRequest,​GetShardedDatabaseResponse> handler)
        Gets the details of the Sharded database identified by given id.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getWorkRequest

        Future<GetWorkRequestResponse> getWorkRequest​(GetWorkRequestRequest request,
                                                      AsyncHandler<GetWorkRequestRequest,​GetWorkRequestResponse> handler)
        Gets details of the work request with the given ID.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listPrivateEndpoints

        Future<ListPrivateEndpointsResponse> listPrivateEndpoints​(ListPrivateEndpointsRequest request,
                                                                  AsyncHandler<ListPrivateEndpointsRequest,​ListPrivateEndpointsResponse> handler)
        List of PrivateEndpoints.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listShardedDatabases

        Future<ListShardedDatabasesResponse> listShardedDatabases​(ListShardedDatabasesRequest request,
                                                                  AsyncHandler<ListShardedDatabasesRequest,​ListShardedDatabasesResponse> handler)
        List of Sharded databases.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listWorkRequestErrors

        Future<ListWorkRequestErrorsResponse> listWorkRequestErrors​(ListWorkRequestErrorsRequest request,
                                                                    AsyncHandler<ListWorkRequestErrorsRequest,​ListWorkRequestErrorsResponse> handler)
        Returns a (paginated) list of errors for the work request with the given ID.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listWorkRequestLogs

        Future<ListWorkRequestLogsResponse> listWorkRequestLogs​(ListWorkRequestLogsRequest request,
                                                                AsyncHandler<ListWorkRequestLogsRequest,​ListWorkRequestLogsResponse> handler)
        Returns a (paginated) list of logs for the work request with the given ID.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listWorkRequests

        Future<ListWorkRequestsResponse> listWorkRequests​(ListWorkRequestsRequest request,
                                                          AsyncHandler<ListWorkRequestsRequest,​ListWorkRequestsResponse> handler)
        Lists the work requests in a compartment.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • patchShardedDatabase

        Future<PatchShardedDatabaseResponse> patchShardedDatabase​(PatchShardedDatabaseRequest request,
                                                                  AsyncHandler<PatchShardedDatabaseRequest,​PatchShardedDatabaseResponse> handler)
        Patch operation to add, remove or update shards to the sharded database topology.

        In single patch operation, multiple shards can be either added, or removed or updated. Combination of inserts, update and remove in single operation is not allowed.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • reinstateProxyInstance

        Future<ReinstateProxyInstanceResponse> reinstateProxyInstance​(ReinstateProxyInstanceRequest request,
                                                                      AsyncHandler<ReinstateProxyInstanceRequest,​ReinstateProxyInstanceResponse> handler)
        API to reinstate the proxy instances associated with the private endpoint.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • startShardedDatabase

        Future<StartShardedDatabaseResponse> startShardedDatabase​(StartShardedDatabaseRequest request,
                                                                  AsyncHandler<StartShardedDatabaseRequest,​StartShardedDatabaseResponse> handler)
        Start the shards, catalog and GSMs of Sharded Database.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • stopShardedDatabase

        Future<StopShardedDatabaseResponse> stopShardedDatabase​(StopShardedDatabaseRequest request,
                                                                AsyncHandler<StopShardedDatabaseRequest,​StopShardedDatabaseResponse> handler)
        Stop the shards, catalog and GSM instances for the sharded database.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • updatePrivateEndpoint

        Future<UpdatePrivateEndpointResponse> updatePrivateEndpoint​(UpdatePrivateEndpointRequest request,
                                                                    AsyncHandler<UpdatePrivateEndpointRequest,​UpdatePrivateEndpointResponse> handler)
        Updates the configuration of privateendpoint.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • updateShardedDatabase

        Future<UpdateShardedDatabaseResponse> updateShardedDatabase​(UpdateShardedDatabaseRequest request,
                                                                    AsyncHandler<UpdateShardedDatabaseRequest,​UpdateShardedDatabaseResponse> handler)
        Updates the configuration of sharded database.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • validateNetwork

        Future<ValidateNetworkResponse> validateNetwork​(ValidateNetworkRequest request,
                                                        AsyncHandler<ValidateNetworkRequest,​ValidateNetworkResponse> handler)
        Validate the network connectivity between components of sharded database.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.