Interface ArcZonalShiftAsyncClient

All Superinterfaces:
AutoCloseable, AwsClient, SdkAutoCloseable, SdkClient

@Generated("software.amazon.awssdk:codegen") @ThreadSafe public interface ArcZonalShiftAsyncClient extends AwsClient
Service client for accessing AWS ARC - Zonal Shift asynchronously. This can be created using the static builder() method.

This is the API Reference Guide for the zonal shift feature of Amazon Route 53 Application Recovery Controller. This guide is for developers who need detailed information about zonal shift API actions, data types, and errors.

Zonal shift is in preview release for Amazon Route 53 Application Recovery Controller and is subject to change.

Zonal shift in Route 53 ARC enables you to move traffic for a load balancer resource away from an Availability Zone. Starting a zonal shift helps your application recover immediately, for example, from a developer's bad code deployment or from an AWS infrastructure failure in a single Availability Zone, reducing the impact and time lost from an issue in one zone.

Supported AWS resources are automatically registered with Route 53 ARC. Resources that are registered for zonal shifts in Route 53 ARC are managed resources in Route 53 ARC. You can start a zonal shift for any managed resource in your account in a Region. At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

Zonal shifts are temporary. You must specify an expiration when you start a zonal shift, of up to three days initially. If you want to still keep traffic away from an Availability Zone, you can update the zonal shift and set a new expiration. You can also cancel a zonal shift, before it expires, for example, if you're ready to restore traffic to the Availability Zone.

For more information about using zonal shift, see the Amazon Route 53 Application Recovery Controller Developer Guide.

  • Field Details

  • Method Details

    • cancelZonalShift

      default CompletableFuture<CancelZonalShiftResponse> cancelZonalShift(CancelZonalShiftRequest cancelZonalShiftRequest)

      Cancel a zonal shift in Amazon Route 53 Application Recovery Controller that you've started for a resource in your AWS account in an AWS Region.

      Parameters:
      cancelZonalShiftRequest -
      Returns:
      A Java Future containing the result of the CancelZonalShift operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ConflictException The request could not be processed because of conflict in the current state of the resource.
      • ResourceNotFoundException The input requested a resource that was not found.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • cancelZonalShift

      default CompletableFuture<CancelZonalShiftResponse> cancelZonalShift(Consumer<CancelZonalShiftRequest.Builder> cancelZonalShiftRequest)

      Cancel a zonal shift in Amazon Route 53 Application Recovery Controller that you've started for a resource in your AWS account in an AWS Region.


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

      Parameters:
      cancelZonalShiftRequest - A Consumer that will call methods on CancelZonalShiftRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the CancelZonalShift operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ConflictException The request could not be processed because of conflict in the current state of the resource.
      • ResourceNotFoundException The input requested a resource that was not found.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getManagedResource

      default CompletableFuture<GetManagedResourceResponse> getManagedResource(GetManagedResourceRequest getManagedResourceRequest)

      Get information about a resource that's been registered for zonal shifts with Amazon Route 53 Application Recovery Controller in this AWS Region. Resources that are registered for zonal shifts are managed resources in Route 53 ARC.

      At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

      Parameters:
      getManagedResourceRequest -
      Returns:
      A Java Future containing the result of the GetManagedResource operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ResourceNotFoundException The input requested a resource that was not found.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getManagedResource

      default CompletableFuture<GetManagedResourceResponse> getManagedResource(Consumer<GetManagedResourceRequest.Builder> getManagedResourceRequest)

      Get information about a resource that's been registered for zonal shifts with Amazon Route 53 Application Recovery Controller in this AWS Region. Resources that are registered for zonal shifts are managed resources in Route 53 ARC.

      At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.


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

      Parameters:
      getManagedResourceRequest - A Consumer that will call methods on GetManagedResourceRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the GetManagedResource operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ResourceNotFoundException The input requested a resource that was not found.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listManagedResources

      default CompletableFuture<ListManagedResourcesResponse> listManagedResources(ListManagedResourcesRequest listManagedResourcesRequest)

      Lists all the resources in your AWS account in this AWS Region that are managed for zonal shifts in Amazon Route 53 Application Recovery Controller, and information about them. The information includes their Amazon Resource Names (ARNs), the Availability Zones the resources are deployed in, and the resource name.

      Parameters:
      listManagedResourcesRequest -
      Returns:
      A Java Future containing the result of the ListManagedResources operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listManagedResources

      default CompletableFuture<ListManagedResourcesResponse> listManagedResources(Consumer<ListManagedResourcesRequest.Builder> listManagedResourcesRequest)

      Lists all the resources in your AWS account in this AWS Region that are managed for zonal shifts in Amazon Route 53 Application Recovery Controller, and information about them. The information includes their Amazon Resource Names (ARNs), the Availability Zones the resources are deployed in, and the resource name.


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

      Parameters:
      listManagedResourcesRequest - A Consumer that will call methods on ListManagedResourcesRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the ListManagedResources operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listManagedResourcesPaginator

      default ListManagedResourcesPublisher listManagedResourcesPaginator(ListManagedResourcesRequest listManagedResourcesRequest)

      Lists all the resources in your AWS account in this AWS Region that are managed for zonal shifts in Amazon Route 53 Application Recovery Controller, and information about them. The information includes their Amazon Resource Names (ARNs), the Availability Zones the resources are deployed in, and the resource name.


      This is a variant of listManagedResources(software.amazon.awssdk.services.arczonalshift.model.ListManagedResourcesRequest) 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.arczonalshift.paginators.ListManagedResourcesPublisher publisher = client.listManagedResourcesPaginator(request);
       CompletableFuture<Void> future = publisher.subscribe(res -> { // Do something with the response });
       future.get();
       
       
      2) Using a custom subscriber
       
       software.amazon.awssdk.services.arczonalshift.paginators.ListManagedResourcesPublisher publisher = client.listManagedResourcesPaginator(request);
       publisher.subscribe(new Subscriber<software.amazon.awssdk.services.arczonalshift.model.ListManagedResourcesResponse>() {
       
       public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
       
       
       public void onNext(software.amazon.awssdk.services.arczonalshift.model.ListManagedResourcesResponse 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 listManagedResources(software.amazon.awssdk.services.arczonalshift.model.ListManagedResourcesRequest) operation.

      Parameters:
      listManagedResourcesRequest -
      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.
      • InternalServerException There was an internal server error.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listManagedResourcesPaginator

      default ListManagedResourcesPublisher listManagedResourcesPaginator(Consumer<ListManagedResourcesRequest.Builder> listManagedResourcesRequest)

      Lists all the resources in your AWS account in this AWS Region that are managed for zonal shifts in Amazon Route 53 Application Recovery Controller, and information about them. The information includes their Amazon Resource Names (ARNs), the Availability Zones the resources are deployed in, and the resource name.


      This is a variant of listManagedResources(software.amazon.awssdk.services.arczonalshift.model.ListManagedResourcesRequest) 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.arczonalshift.paginators.ListManagedResourcesPublisher publisher = client.listManagedResourcesPaginator(request);
       CompletableFuture<Void> future = publisher.subscribe(res -> { // Do something with the response });
       future.get();
       
       
      2) Using a custom subscriber
       
       software.amazon.awssdk.services.arczonalshift.paginators.ListManagedResourcesPublisher publisher = client.listManagedResourcesPaginator(request);
       publisher.subscribe(new Subscriber<software.amazon.awssdk.services.arczonalshift.model.ListManagedResourcesResponse>() {
       
       public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
       
       
       public void onNext(software.amazon.awssdk.services.arczonalshift.model.ListManagedResourcesResponse 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 listManagedResources(software.amazon.awssdk.services.arczonalshift.model.ListManagedResourcesRequest) operation.

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

      Parameters:
      listManagedResourcesRequest - A Consumer that will call methods on ListManagedResourcesRequest.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.
      • InternalServerException There was an internal server error.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listZonalShifts

      default CompletableFuture<ListZonalShiftsResponse> listZonalShifts(ListZonalShiftsRequest listZonalShiftsRequest)

      Lists all the active zonal shifts in Amazon Route 53 Application Recovery Controller in your AWS account in this AWS Region.

      Parameters:
      listZonalShiftsRequest -
      Returns:
      A Java Future containing the result of the ListZonalShifts operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listZonalShifts

      default CompletableFuture<ListZonalShiftsResponse> listZonalShifts(Consumer<ListZonalShiftsRequest.Builder> listZonalShiftsRequest)

      Lists all the active zonal shifts in Amazon Route 53 Application Recovery Controller in your AWS account in this AWS Region.


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

      Parameters:
      listZonalShiftsRequest - A Consumer that will call methods on ListZonalShiftsRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the ListZonalShifts operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listZonalShiftsPaginator

      default ListZonalShiftsPublisher listZonalShiftsPaginator(ListZonalShiftsRequest listZonalShiftsRequest)

      Lists all the active zonal shifts in Amazon Route 53 Application Recovery Controller in your AWS account in this AWS Region.


      This is a variant of listZonalShifts(software.amazon.awssdk.services.arczonalshift.model.ListZonalShiftsRequest) 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.arczonalshift.paginators.ListZonalShiftsPublisher publisher = client.listZonalShiftsPaginator(request);
       CompletableFuture<Void> future = publisher.subscribe(res -> { // Do something with the response });
       future.get();
       
       
      2) Using a custom subscriber
       
       software.amazon.awssdk.services.arczonalshift.paginators.ListZonalShiftsPublisher publisher = client.listZonalShiftsPaginator(request);
       publisher.subscribe(new Subscriber<software.amazon.awssdk.services.arczonalshift.model.ListZonalShiftsResponse>() {
       
       public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
       
       
       public void onNext(software.amazon.awssdk.services.arczonalshift.model.ListZonalShiftsResponse 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 listZonalShifts(software.amazon.awssdk.services.arczonalshift.model.ListZonalShiftsRequest) operation.

      Parameters:
      listZonalShiftsRequest -
      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.
      • InternalServerException There was an internal server error.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listZonalShiftsPaginator

      default ListZonalShiftsPublisher listZonalShiftsPaginator(Consumer<ListZonalShiftsRequest.Builder> listZonalShiftsRequest)

      Lists all the active zonal shifts in Amazon Route 53 Application Recovery Controller in your AWS account in this AWS Region.


      This is a variant of listZonalShifts(software.amazon.awssdk.services.arczonalshift.model.ListZonalShiftsRequest) 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.arczonalshift.paginators.ListZonalShiftsPublisher publisher = client.listZonalShiftsPaginator(request);
       CompletableFuture<Void> future = publisher.subscribe(res -> { // Do something with the response });
       future.get();
       
       
      2) Using a custom subscriber
       
       software.amazon.awssdk.services.arczonalshift.paginators.ListZonalShiftsPublisher publisher = client.listZonalShiftsPaginator(request);
       publisher.subscribe(new Subscriber<software.amazon.awssdk.services.arczonalshift.model.ListZonalShiftsResponse>() {
       
       public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
       
       
       public void onNext(software.amazon.awssdk.services.arczonalshift.model.ListZonalShiftsResponse 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 listZonalShifts(software.amazon.awssdk.services.arczonalshift.model.ListZonalShiftsRequest) operation.

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

      Parameters:
      listZonalShiftsRequest - A Consumer that will call methods on ListZonalShiftsRequest.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.
      • InternalServerException There was an internal server error.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • startZonalShift

      default CompletableFuture<StartZonalShiftResponse> startZonalShift(StartZonalShiftRequest startZonalShiftRequest)

      You start a zonal shift to temporarily move load balancer traffic away from an Availability Zone in a AWS Region, to help your application recover immediately, for example, from a developer's bad code deployment or from an AWS infrastructure failure in a single Availability Zone. You can start a zonal shift in Route 53 ARC only for managed resources in your account in an AWS Region. Resources are automatically registered with Route 53 ARC by AWS services.

      At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

      When you start a zonal shift, traffic for the resource is no longer routed to the Availability Zone. The zonal shift is created immediately in Route 53 ARC. However, it can take a short time, typically up to a few minutes, for existing, in-progress connections in the Availability Zone to complete.

      For more information, see Zonal shift in the Amazon Route 53 Application Recovery Controller Developer Guide.

      Parameters:
      startZonalShiftRequest -
      Returns:
      A Java Future containing the result of the StartZonalShift operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ConflictException The request could not be processed because of conflict in the current state of the resource.
      • ResourceNotFoundException The input requested a resource that was not found.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • startZonalShift

      default CompletableFuture<StartZonalShiftResponse> startZonalShift(Consumer<StartZonalShiftRequest.Builder> startZonalShiftRequest)

      You start a zonal shift to temporarily move load balancer traffic away from an Availability Zone in a AWS Region, to help your application recover immediately, for example, from a developer's bad code deployment or from an AWS infrastructure failure in a single Availability Zone. You can start a zonal shift in Route 53 ARC only for managed resources in your account in an AWS Region. Resources are automatically registered with Route 53 ARC by AWS services.

      At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

      When you start a zonal shift, traffic for the resource is no longer routed to the Availability Zone. The zonal shift is created immediately in Route 53 ARC. However, it can take a short time, typically up to a few minutes, for existing, in-progress connections in the Availability Zone to complete.

      For more information, see Zonal shift in the Amazon Route 53 Application Recovery Controller Developer Guide.


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

      Parameters:
      startZonalShiftRequest - A Consumer that will call methods on StartZonalShiftRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the StartZonalShift operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ConflictException The request could not be processed because of conflict in the current state of the resource.
      • ResourceNotFoundException The input requested a resource that was not found.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • updateZonalShift

      default CompletableFuture<UpdateZonalShiftResponse> updateZonalShift(UpdateZonalShiftRequest updateZonalShiftRequest)

      Update an active zonal shift in Amazon Route 53 Application Recovery Controller in your AWS account. You can update a zonal shift to set a new expiration, or edit or replace the comment for the zonal shift.

      Parameters:
      updateZonalShiftRequest -
      Returns:
      A Java Future containing the result of the UpdateZonalShift operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ConflictException The request could not be processed because of conflict in the current state of the resource.
      • ResourceNotFoundException The input requested a resource that was not found.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • updateZonalShift

      default CompletableFuture<UpdateZonalShiftResponse> updateZonalShift(Consumer<UpdateZonalShiftRequest.Builder> updateZonalShiftRequest)

      Update an active zonal shift in Amazon Route 53 Application Recovery Controller in your AWS account. You can update a zonal shift to set a new expiration, or edit or replace the comment for the zonal shift.


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

      Parameters:
      updateZonalShiftRequest - A Consumer that will call methods on UpdateZonalShiftRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the UpdateZonalShift operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions.
      • InternalServerException There was an internal server error.
      • ConflictException The request could not be processed because of conflict in the current state of the resource.
      • ResourceNotFoundException The input requested a resource that was not found.
      • ThrottlingException The request was denied due to request throttling.
      • ValidationException The input fails to satisfy the constraints specified by an AWS service.
      • AccessDeniedException You do not have sufficient access to perform this action.
      • 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.
      • ArcZonalShiftException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • serviceClientConfiguration

      default ArcZonalShiftServiceClientConfiguration 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

      static ArcZonalShiftAsyncClient create()
      Create a ArcZonalShiftAsyncClient 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 ArcZonalShiftAsyncClient.