Interface MigrationHubConfigAsyncClient

All Superinterfaces:
AutoCloseable, AwsClient, SdkAutoCloseable, SdkClient

@Generated("software.amazon.awssdk:codegen") @ThreadSafe public interface MigrationHubConfigAsyncClient extends AwsClient
Service client for accessing AWS Migration Hub Config asynchronously. This can be created using the static builder() method.The asynchronous client performs non-blocking I/O when configured with any SdkAsyncHttpClient supported in the SDK. However, full non-blocking is not guaranteed as the async client may perform blocking calls in some cases such as credentials retrieval and endpoint discovery as part of the async API call.

The AWS Migration Hub home region APIs are available specifically for working with your Migration Hub home region. You can use these APIs to determine a home region, as well as to create and work with controls that describe the home region.

  • You must make API calls for write actions (create, notify, associate, disassociate, import, or put) while in your home region, or a HomeRegionNotSetException error is returned.

  • API calls for read actions (list, describe, stop, and delete) are permitted outside of your home region.

  • If you call a write API outside the home region, an InvalidInputException is returned.

  • You can call GetHomeRegion action to obtain the account's Migration Hub home region.

For specific API usage, see the sections that follow in this AWS Migration Hub Home Region API reference.

  • Field Details

  • Method Details

    • createHomeRegionControl

      default CompletableFuture<CreateHomeRegionControlResponse> createHomeRegionControl(CreateHomeRegionControlRequest createHomeRegionControlRequest)

      This API sets up the home region for the calling account only.

      Parameters:
      createHomeRegionControlRequest -
      Returns:
      A Java Future containing the result of the CreateHomeRegionControl operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • DryRunOperationException Exception raised to indicate that authorization of an action was successful, when the DryRun flag is set to true.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • createHomeRegionControl

      default CompletableFuture<CreateHomeRegionControlResponse> createHomeRegionControl(Consumer<CreateHomeRegionControlRequest.Builder> createHomeRegionControlRequest)

      This API sets up the home region for the calling account only.


      This is a convenience which creates an instance of the CreateHomeRegionControlRequest.Builder avoiding the need to create one manually via CreateHomeRegionControlRequest.builder()

      Parameters:
      createHomeRegionControlRequest - A Consumer that will call methods on CreateHomeRegionControlRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the CreateHomeRegionControl operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • DryRunOperationException Exception raised to indicate that authorization of an action was successful, when the DryRun flag is set to true.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • deleteHomeRegionControl

      default CompletableFuture<DeleteHomeRegionControlResponse> deleteHomeRegionControl(DeleteHomeRegionControlRequest deleteHomeRegionControlRequest)

      This operation deletes the home region configuration for the calling account. The operation does not delete discovery or migration tracking data in the home region.

      Parameters:
      deleteHomeRegionControlRequest -
      Returns:
      A Java Future containing the result of the DeleteHomeRegionControl operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • deleteHomeRegionControl

      default CompletableFuture<DeleteHomeRegionControlResponse> deleteHomeRegionControl(Consumer<DeleteHomeRegionControlRequest.Builder> deleteHomeRegionControlRequest)

      This operation deletes the home region configuration for the calling account. The operation does not delete discovery or migration tracking data in the home region.


      This is a convenience which creates an instance of the DeleteHomeRegionControlRequest.Builder avoiding the need to create one manually via DeleteHomeRegionControlRequest.builder()

      Parameters:
      deleteHomeRegionControlRequest - A Consumer that will call methods on DeleteHomeRegionControlRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the DeleteHomeRegionControl operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • describeHomeRegionControls

      default CompletableFuture<DescribeHomeRegionControlsResponse> describeHomeRegionControls(DescribeHomeRegionControlsRequest describeHomeRegionControlsRequest)

      This API permits filtering on the ControlId and HomeRegion fields.

      Parameters:
      describeHomeRegionControlsRequest -
      Returns:
      A Java Future containing the result of the DescribeHomeRegionControls operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • describeHomeRegionControls

      default CompletableFuture<DescribeHomeRegionControlsResponse> describeHomeRegionControls(Consumer<DescribeHomeRegionControlsRequest.Builder> describeHomeRegionControlsRequest)

      This API permits filtering on the ControlId and HomeRegion fields.


      This is a convenience which creates an instance of the DescribeHomeRegionControlsRequest.Builder avoiding the need to create one manually via DescribeHomeRegionControlsRequest.builder()

      Parameters:
      describeHomeRegionControlsRequest - A Consumer that will call methods on DescribeHomeRegionControlsRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the DescribeHomeRegionControls operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • describeHomeRegionControlsPaginator

      default DescribeHomeRegionControlsPublisher describeHomeRegionControlsPaginator(DescribeHomeRegionControlsRequest describeHomeRegionControlsRequest)

      This is a variant of describeHomeRegionControls(software.amazon.awssdk.services.migrationhubconfig.model.DescribeHomeRegionControlsRequest) operation. The return type is a custom publisher that can be subscribed to request a stream of response pages. SDK will internally handle making service calls for you.

      When the operation is called, an instance of this class is returned. At this point, no service calls are made yet and so there is no guarantee that the request is valid. If there are errors in your request, you will see the failures only after you start streaming the data. The subscribe method should be called as a request to start streaming data. For more info, see Publisher.subscribe(org.reactivestreams.Subscriber). Each call to the subscribe method will result in a new Subscription i.e., a new contract to stream data from the starting request.

      The following are few ways to use the response class:

      1) Using the subscribe helper method
       
       software.amazon.awssdk.services.migrationhubconfig.paginators.DescribeHomeRegionControlsPublisher publisher = client.describeHomeRegionControlsPaginator(request);
       CompletableFuture<Void> future = publisher.subscribe(res -> { // Do something with the response });
       future.get();
       
       
      2) Using a custom subscriber
       
       software.amazon.awssdk.services.migrationhubconfig.paginators.DescribeHomeRegionControlsPublisher publisher = client.describeHomeRegionControlsPaginator(request);
       publisher.subscribe(new Subscriber<software.amazon.awssdk.services.migrationhubconfig.model.DescribeHomeRegionControlsResponse>() {
       
       public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
       
       
       public void onNext(software.amazon.awssdk.services.migrationhubconfig.model.DescribeHomeRegionControlsResponse response) { //... };
       });
       
      As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the describeHomeRegionControls(software.amazon.awssdk.services.migrationhubconfig.model.DescribeHomeRegionControlsRequest) operation.

      Parameters:
      describeHomeRegionControlsRequest -
      Returns:
      A custom publisher that can be subscribed to request a stream of response pages.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • describeHomeRegionControlsPaginator

      default DescribeHomeRegionControlsPublisher describeHomeRegionControlsPaginator(Consumer<DescribeHomeRegionControlsRequest.Builder> describeHomeRegionControlsRequest)

      This is a variant of describeHomeRegionControls(software.amazon.awssdk.services.migrationhubconfig.model.DescribeHomeRegionControlsRequest) operation. The return type is a custom publisher that can be subscribed to request a stream of response pages. SDK will internally handle making service calls for you.

      When the operation is called, an instance of this class is returned. At this point, no service calls are made yet and so there is no guarantee that the request is valid. If there are errors in your request, you will see the failures only after you start streaming the data. The subscribe method should be called as a request to start streaming data. For more info, see Publisher.subscribe(org.reactivestreams.Subscriber). Each call to the subscribe method will result in a new Subscription i.e., a new contract to stream data from the starting request.

      The following are few ways to use the response class:

      1) Using the subscribe helper method
       
       software.amazon.awssdk.services.migrationhubconfig.paginators.DescribeHomeRegionControlsPublisher publisher = client.describeHomeRegionControlsPaginator(request);
       CompletableFuture<Void> future = publisher.subscribe(res -> { // Do something with the response });
       future.get();
       
       
      2) Using a custom subscriber
       
       software.amazon.awssdk.services.migrationhubconfig.paginators.DescribeHomeRegionControlsPublisher publisher = client.describeHomeRegionControlsPaginator(request);
       publisher.subscribe(new Subscriber<software.amazon.awssdk.services.migrationhubconfig.model.DescribeHomeRegionControlsResponse>() {
       
       public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
       
       
       public void onNext(software.amazon.awssdk.services.migrationhubconfig.model.DescribeHomeRegionControlsResponse response) { //... };
       });
       
      As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the describeHomeRegionControls(software.amazon.awssdk.services.migrationhubconfig.model.DescribeHomeRegionControlsRequest) operation.


      This is a convenience which creates an instance of the DescribeHomeRegionControlsRequest.Builder avoiding the need to create one manually via DescribeHomeRegionControlsRequest.builder()

      Parameters:
      describeHomeRegionControlsRequest - A Consumer that will call methods on DescribeHomeRegionControlsRequest.Builder to create a request.
      Returns:
      A custom publisher that can be subscribed to request a stream of response pages.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getHomeRegion

      default CompletableFuture<GetHomeRegionResponse> getHomeRegion(GetHomeRegionRequest getHomeRegionRequest)

      Returns the calling account’s home region, if configured. This API is used by other AWS services to determine the regional endpoint for calling AWS Application Discovery Service and Migration Hub. You must call GetHomeRegion at least once before you call any other AWS Application Discovery Service and AWS Migration Hub APIs, to obtain the account's Migration Hub home region.

      Parameters:
      getHomeRegionRequest -
      Returns:
      A Java Future containing the result of the GetHomeRegion operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getHomeRegion

      default CompletableFuture<GetHomeRegionResponse> getHomeRegion(Consumer<GetHomeRegionRequest.Builder> getHomeRegionRequest)

      Returns the calling account’s home region, if configured. This API is used by other AWS services to determine the regional endpoint for calling AWS Application Discovery Service and Migration Hub. You must call GetHomeRegion at least once before you call any other AWS Application Discovery Service and AWS Migration Hub APIs, to obtain the account's Migration Hub home region.


      This is a convenience which creates an instance of the GetHomeRegionRequest.Builder avoiding the need to create one manually via GetHomeRegionRequest.builder()

      Parameters:
      getHomeRegionRequest - A Consumer that will call methods on GetHomeRegionRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the GetHomeRegion operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • InternalServerErrorException Exception raised when an internal, configuration, or dependency error is encountered.
      • ServiceUnavailableException Exception raised when a request fails due to temporary unavailability of the service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • ThrottlingException The request was denied due to request throttling.
      • InvalidInputException Exception raised when the provided input violates a policy constraint or is entered in the wrong format or data type.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • MigrationHubConfigException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • serviceClientConfiguration

      default MigrationHubConfigServiceClientConfiguration serviceClientConfiguration()
      Description copied from interface: SdkClient
      The SDK service client configuration exposes client settings to the user, e.g., ClientOverrideConfiguration
      Specified by:
      serviceClientConfiguration in interface AwsClient
      Specified by:
      serviceClientConfiguration in interface SdkClient
      Returns:
      SdkServiceClientConfiguration
    • create

      Create a MigrationHubConfigAsyncClient with the region loaded from the DefaultAwsRegionProviderChain and credentials loaded from the DefaultCredentialsProvider.
    • builder

      Create a builder that can be used to configure and create a MigrationHubConfigAsyncClient.