/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the route53-recovery-cluster-2019-12-02.normal.json service model. */ using System; using System.Runtime.ExceptionServices; using System.Threading; using System.Threading.Tasks; using System.Collections.Generic; using System.Net; using Amazon.Route53RecoveryCluster.Model; using Amazon.Route53RecoveryCluster.Model.Internal.MarshallTransformations; using Amazon.Route53RecoveryCluster.Internal; using Amazon.Runtime; using Amazon.Runtime.Internal; using Amazon.Runtime.Internal.Auth; using Amazon.Runtime.Internal.Transform; namespace Amazon.Route53RecoveryCluster { /// /// Implementation for accessing Route53RecoveryCluster /// /// Welcome to the Routing Control (Recovery Cluster) API Reference Guide for Amazon Route /// 53 Application Recovery Controller. /// /// /// /// With Route 53 ARC, you can use routing control with extreme reliability to recover /// applications by rerouting traffic across Availability Zones or Amazon Web Services /// Regions. Routing controls are simple on/off switches hosted on a highly available /// cluster in Route 53 ARC. A cluster provides a set of five redundant Regional endpoints /// against which you can run API calls to get or update the state of routing controls. /// To implement failover, you set one routing control On and another one Off, to reroute /// traffic from one Availability Zone or Amazon Web Services Region to another. /// /// /// /// Be aware that you must specify a Regional endpoint for a cluster when you work /// with API cluster operations to get or update routing control states in Route 53 ARC. /// In addition, you must specify the US West (Oregon) Region for Route 53 ARC API calls. /// For example, use the parameter --region us-west-2 with AWS CLI commands. /// For more information, see /// Get and update routing control states using the API in the Amazon Route 53 Application /// Recovery Controller Developer Guide. /// /// /// /// This API guide includes information about the API operations for how to get and update /// routing control states in Route 53 ARC. To work with routing control in Route 53 ARC, /// you must first create the required components (clusters, control panels, and routing /// controls) using the recovery cluster configuration API. /// /// /// /// For more information about working with routing control in Route 53 ARC, see the following: /// /// /// public partial class AmazonRoute53RecoveryClusterClient : AmazonServiceClient, IAmazonRoute53RecoveryCluster { private static IServiceMetadata serviceMetadata = new AmazonRoute53RecoveryClusterMetadata(); private IRoute53RecoveryClusterPaginatorFactory _paginators; /// /// Paginators for the service /// public IRoute53RecoveryClusterPaginatorFactory Paginators { get { if (this._paginators == null) { this._paginators = new Route53RecoveryClusterPaginatorFactory(this); } return this._paginators; } } #region Constructors /// /// Constructs AmazonRoute53RecoveryClusterClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// public AmazonRoute53RecoveryClusterClient() : base(FallbackCredentialsFactory.GetCredentials(), new AmazonRoute53RecoveryClusterConfig()) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The region to connect. public AmazonRoute53RecoveryClusterClient(RegionEndpoint region) : base(FallbackCredentialsFactory.GetCredentials(), new AmazonRoute53RecoveryClusterConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The AmazonRoute53RecoveryClusterClient Configuration Object public AmazonRoute53RecoveryClusterClient(AmazonRoute53RecoveryClusterConfig config) : base(FallbackCredentialsFactory.GetCredentials(config), config){} /// /// Constructs AmazonRoute53RecoveryClusterClient with AWS Credentials /// /// AWS Credentials public AmazonRoute53RecoveryClusterClient(AWSCredentials credentials) : this(credentials, new AmazonRoute53RecoveryClusterConfig()) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with AWS Credentials /// /// AWS Credentials /// The region to connect. public AmazonRoute53RecoveryClusterClient(AWSCredentials credentials, RegionEndpoint region) : this(credentials, new AmazonRoute53RecoveryClusterConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with AWS Credentials and an /// AmazonRoute53RecoveryClusterClient Configuration object. /// /// AWS Credentials /// The AmazonRoute53RecoveryClusterClient Configuration Object public AmazonRoute53RecoveryClusterClient(AWSCredentials credentials, AmazonRoute53RecoveryClusterConfig clientConfig) : base(credentials, clientConfig) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key public AmazonRoute53RecoveryClusterClient(string awsAccessKeyId, string awsSecretAccessKey) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonRoute53RecoveryClusterConfig()) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// The region to connect. public AmazonRoute53RecoveryClusterClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonRoute53RecoveryClusterConfig() {RegionEndpoint=region}) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with AWS Access Key ID, AWS Secret Key and an /// AmazonRoute53RecoveryClusterClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// The AmazonRoute53RecoveryClusterClient Configuration Object public AmazonRoute53RecoveryClusterClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonRoute53RecoveryClusterConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, clientConfig) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token public AmazonRoute53RecoveryClusterClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonRoute53RecoveryClusterConfig()) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The region to connect. public AmazonRoute53RecoveryClusterClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonRoute53RecoveryClusterConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonRoute53RecoveryClusterClient with AWS Access Key ID, AWS Secret Key and an /// AmazonRoute53RecoveryClusterClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The AmazonRoute53RecoveryClusterClient Configuration Object public AmazonRoute53RecoveryClusterClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonRoute53RecoveryClusterConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig) { } #endregion #region Overrides /// /// Creates the signer for the service. /// protected override AbstractAWSSigner CreateSigner() { return new AWS4Signer(); } /// /// Customize the pipeline /// /// protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline) { pipeline.RemoveHandler(); pipeline.AddHandlerAfter(new AmazonRoute53RecoveryClusterEndpointResolver()); } /// /// Capture metadata for the service. /// protected override IServiceMetadata ServiceMetadata { get { return serviceMetadata; } } #endregion #region Dispose /// /// Disposes the service client. /// protected override void Dispose(bool disposing) { base.Dispose(disposing); } #endregion #region GetRoutingControlState /// /// Get the state for a routing control. A routing control is a simple on/off switch that /// you can use to route traffic to cells. When a routing control state is On, traffic /// flows to a cell. When the state is Off, traffic does not flow. /// /// /// /// Before you can create a routing control, you must first create a cluster, and then /// host the control in a control panel on the cluster. For more information, see /// Create routing control structures in the Amazon Route 53 Application Recovery /// Controller Developer Guide. You access one of the endpoints for the cluster to get /// or update the routing control state to redirect traffic for your application. /// /// /// /// You must specify Regional endpoints when you work with API cluster operations /// to get or update routing control states in Route 53 ARC. /// /// /// /// To see a code example for getting a routing control state, including accessing Regional /// cluster endpoints in sequence, see API /// examples in the Amazon Route 53 Application Recovery Controller Developer Guide. /// /// /// /// Learn more about working with routing controls in the following topics in the Amazon /// Route 53 Application Recovery Controller Developer Guide: /// /// /// /// Container for the necessary parameters to execute the GetRoutingControlState service method. /// /// The response from the GetRoutingControlState service method, as returned by Route53RecoveryCluster. /// /// You don't have sufficient permissions to perform this action. /// /// /// The cluster endpoint isn't available. Try another cluster endpoint. /// /// /// There was an unexpected error during processing of the request. /// /// /// The request references a routing control or control panel that was not found. /// /// /// The request was denied because of request throttling. /// /// /// There was a validation error on the request. /// /// REST API Reference for GetRoutingControlState Operation public virtual GetRoutingControlStateResponse GetRoutingControlState(GetRoutingControlStateRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetRoutingControlStateRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRoutingControlStateResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Get the state for a routing control. A routing control is a simple on/off switch that /// you can use to route traffic to cells. When a routing control state is On, traffic /// flows to a cell. When the state is Off, traffic does not flow. /// /// /// /// Before you can create a routing control, you must first create a cluster, and then /// host the control in a control panel on the cluster. For more information, see /// Create routing control structures in the Amazon Route 53 Application Recovery /// Controller Developer Guide. You access one of the endpoints for the cluster to get /// or update the routing control state to redirect traffic for your application. /// /// /// /// You must specify Regional endpoints when you work with API cluster operations /// to get or update routing control states in Route 53 ARC. /// /// /// /// To see a code example for getting a routing control state, including accessing Regional /// cluster endpoints in sequence, see API /// examples in the Amazon Route 53 Application Recovery Controller Developer Guide. /// /// /// /// Learn more about working with routing controls in the following topics in the Amazon /// Route 53 Application Recovery Controller Developer Guide: /// /// /// /// Container for the necessary parameters to execute the GetRoutingControlState service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetRoutingControlState service method, as returned by Route53RecoveryCluster. /// /// You don't have sufficient permissions to perform this action. /// /// /// The cluster endpoint isn't available. Try another cluster endpoint. /// /// /// There was an unexpected error during processing of the request. /// /// /// The request references a routing control or control panel that was not found. /// /// /// The request was denied because of request throttling. /// /// /// There was a validation error on the request. /// /// REST API Reference for GetRoutingControlState Operation public virtual Task GetRoutingControlStateAsync(GetRoutingControlStateRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetRoutingControlStateRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRoutingControlStateResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListRoutingControls /// /// List routing control names and Amazon Resource Names (ARNs), as well as the routing /// control state for each routing control, along with the control panel name and control /// panel ARN for the routing controls. If you specify a control panel ARN, this call /// lists the routing controls in the control panel. Otherwise, it lists all the routing /// controls in the cluster. /// /// /// /// A routing control is a simple on/off switch in Route 53 ARC that you can use to route /// traffic to cells. When a routing control state is On, traffic flows to a cell. When /// the state is Off, traffic does not flow. /// /// /// /// Before you can create a routing control, you must first create a cluster, and then /// host the control in a control panel on the cluster. For more information, see /// Create routing control structures in the Amazon Route 53 Application Recovery /// Controller Developer Guide. You access one of the endpoints for the cluster to get /// or update the routing control state to redirect traffic for your application. /// /// /// /// You must specify Regional endpoints when you work with API cluster operations /// to use this API operation to list routing controls in Route 53 ARC. /// /// /// /// Learn more about working with routing controls in the following topics in the Amazon /// Route 53 Application Recovery Controller Developer Guide: /// /// /// /// Container for the necessary parameters to execute the ListRoutingControls service method. /// /// The response from the ListRoutingControls service method, as returned by Route53RecoveryCluster. /// /// You don't have sufficient permissions to perform this action. /// /// /// The cluster endpoint isn't available. Try another cluster endpoint. /// /// /// There was an unexpected error during processing of the request. /// /// /// The request references a routing control or control panel that was not found. /// /// /// The request was denied because of request throttling. /// /// /// There was a validation error on the request. /// /// REST API Reference for ListRoutingControls Operation public virtual ListRoutingControlsResponse ListRoutingControls(ListRoutingControlsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListRoutingControlsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRoutingControlsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// List routing control names and Amazon Resource Names (ARNs), as well as the routing /// control state for each routing control, along with the control panel name and control /// panel ARN for the routing controls. If you specify a control panel ARN, this call /// lists the routing controls in the control panel. Otherwise, it lists all the routing /// controls in the cluster. /// /// /// /// A routing control is a simple on/off switch in Route 53 ARC that you can use to route /// traffic to cells. When a routing control state is On, traffic flows to a cell. When /// the state is Off, traffic does not flow. /// /// /// /// Before you can create a routing control, you must first create a cluster, and then /// host the control in a control panel on the cluster. For more information, see /// Create routing control structures in the Amazon Route 53 Application Recovery /// Controller Developer Guide. You access one of the endpoints for the cluster to get /// or update the routing control state to redirect traffic for your application. /// /// /// /// You must specify Regional endpoints when you work with API cluster operations /// to use this API operation to list routing controls in Route 53 ARC. /// /// /// /// Learn more about working with routing controls in the following topics in the Amazon /// Route 53 Application Recovery Controller Developer Guide: /// /// /// /// Container for the necessary parameters to execute the ListRoutingControls service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListRoutingControls service method, as returned by Route53RecoveryCluster. /// /// You don't have sufficient permissions to perform this action. /// /// /// The cluster endpoint isn't available. Try another cluster endpoint. /// /// /// There was an unexpected error during processing of the request. /// /// /// The request references a routing control or control panel that was not found. /// /// /// The request was denied because of request throttling. /// /// /// There was a validation error on the request. /// /// REST API Reference for ListRoutingControls Operation public virtual Task ListRoutingControlsAsync(ListRoutingControlsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListRoutingControlsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRoutingControlsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateRoutingControlState /// /// Set the state of the routing control to reroute traffic. You can set the value to /// be On or Off. When the state is On, traffic flows to a cell. When the state is Off, /// traffic does not flow. /// /// /// /// With Route 53 ARC, you can add safety rules for routing controls, which are safeguards /// for routing control state updates that help prevent unexpected outcomes, like fail /// open traffic routing. However, there are scenarios when you might want to bypass the /// routing control safeguards that are enforced with safety rules that you've configured. /// For example, you might want to fail over quickly for disaster recovery, and one or /// more safety rules might be unexpectedly preventing you from updating a routing control /// state to reroute traffic. In a "break glass" scenario like this, you can override /// one or more safety rules to change a routing control state and fail over your application. /// /// /// /// The SafetyRulesToOverride property enables you override one or more safety /// rules and update routing control states. For more information, see /// Override safety rules to reroute traffic in the Amazon Route 53 Application Recovery /// Controller Developer Guide. /// /// /// /// You must specify Regional endpoints when you work with API cluster operations /// to get or update routing control states in Route 53 ARC. /// /// /// /// To see a code example for getting a routing control state, including accessing Regional /// cluster endpoints in sequence, see API /// examples in the Amazon Route 53 Application Recovery Controller Developer Guide. /// /// /// /// Container for the necessary parameters to execute the UpdateRoutingControlState service method. /// /// The response from the UpdateRoutingControlState service method, as returned by Route53RecoveryCluster. /// /// You don't have sufficient permissions to perform this action. /// /// /// There was a conflict with this request. Try again. /// /// /// The cluster endpoint isn't available. Try another cluster endpoint. /// /// /// There was an unexpected error during processing of the request. /// /// /// The request references a routing control or control panel that was not found. /// /// /// The request was denied because of request throttling. /// /// /// There was a validation error on the request. /// /// REST API Reference for UpdateRoutingControlState Operation public virtual UpdateRoutingControlStateResponse UpdateRoutingControlState(UpdateRoutingControlStateRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRoutingControlStateRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRoutingControlStateResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Set the state of the routing control to reroute traffic. You can set the value to /// be On or Off. When the state is On, traffic flows to a cell. When the state is Off, /// traffic does not flow. /// /// /// /// With Route 53 ARC, you can add safety rules for routing controls, which are safeguards /// for routing control state updates that help prevent unexpected outcomes, like fail /// open traffic routing. However, there are scenarios when you might want to bypass the /// routing control safeguards that are enforced with safety rules that you've configured. /// For example, you might want to fail over quickly for disaster recovery, and one or /// more safety rules might be unexpectedly preventing you from updating a routing control /// state to reroute traffic. In a "break glass" scenario like this, you can override /// one or more safety rules to change a routing control state and fail over your application. /// /// /// /// The SafetyRulesToOverride property enables you override one or more safety /// rules and update routing control states. For more information, see /// Override safety rules to reroute traffic in the Amazon Route 53 Application Recovery /// Controller Developer Guide. /// /// /// /// You must specify Regional endpoints when you work with API cluster operations /// to get or update routing control states in Route 53 ARC. /// /// /// /// To see a code example for getting a routing control state, including accessing Regional /// cluster endpoints in sequence, see API /// examples in the Amazon Route 53 Application Recovery Controller Developer Guide. /// /// /// /// Container for the necessary parameters to execute the UpdateRoutingControlState service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateRoutingControlState service method, as returned by Route53RecoveryCluster. /// /// You don't have sufficient permissions to perform this action. /// /// /// There was a conflict with this request. Try again. /// /// /// The cluster endpoint isn't available. Try another cluster endpoint. /// /// /// There was an unexpected error during processing of the request. /// /// /// The request references a routing control or control panel that was not found. /// /// /// The request was denied because of request throttling. /// /// /// There was a validation error on the request. /// /// REST API Reference for UpdateRoutingControlState Operation public virtual Task UpdateRoutingControlStateAsync(UpdateRoutingControlStateRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRoutingControlStateRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRoutingControlStateResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateRoutingControlStates /// /// Set multiple routing control states. You can set the value for each state to be On /// or Off. When the state is On, traffic flows to a cell. When it's Off, traffic does /// not flow. /// /// /// /// With Route 53 ARC, you can add safety rules for routing controls, which are safeguards /// for routing control state updates that help prevent unexpected outcomes, like fail /// open traffic routing. However, there are scenarios when you might want to bypass the /// routing control safeguards that are enforced with safety rules that you've configured. /// For example, you might want to fail over quickly for disaster recovery, and one or /// more safety rules might be unexpectedly preventing you from updating a routing control /// state to reroute traffic. In a "break glass" scenario like this, you can override /// one or more safety rules to change a routing control state and fail over your application. /// /// /// /// The SafetyRulesToOverride property enables you override one or more safety /// rules and update routing control states. For more information, see /// Override safety rules to reroute traffic in the Amazon Route 53 Application Recovery /// Controller Developer Guide. /// /// /// /// You must specify Regional endpoints when you work with API cluster operations /// to get or update routing control states in Route 53 ARC. /// /// /// /// To see a code example for getting a routing control state, including accessing Regional /// cluster endpoints in sequence, see API /// examples in the Amazon Route 53 Application Recovery Controller Developer Guide. /// /// /// /// Container for the necessary parameters to execute the UpdateRoutingControlStates service method. /// /// The response from the UpdateRoutingControlStates service method, as returned by Route53RecoveryCluster. /// /// You don't have sufficient permissions to perform this action. /// /// /// There was a conflict with this request. Try again. /// /// /// The cluster endpoint isn't available. Try another cluster endpoint. /// /// /// There was an unexpected error during processing of the request. /// /// /// The request references a routing control or control panel that was not found. /// /// /// The request can't update that many routing control states at the same time. Try again /// with fewer routing control states. /// /// /// The request was denied because of request throttling. /// /// /// There was a validation error on the request. /// /// REST API Reference for UpdateRoutingControlStates Operation public virtual UpdateRoutingControlStatesResponse UpdateRoutingControlStates(UpdateRoutingControlStatesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRoutingControlStatesRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRoutingControlStatesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Set multiple routing control states. You can set the value for each state to be On /// or Off. When the state is On, traffic flows to a cell. When it's Off, traffic does /// not flow. /// /// /// /// With Route 53 ARC, you can add safety rules for routing controls, which are safeguards /// for routing control state updates that help prevent unexpected outcomes, like fail /// open traffic routing. However, there are scenarios when you might want to bypass the /// routing control safeguards that are enforced with safety rules that you've configured. /// For example, you might want to fail over quickly for disaster recovery, and one or /// more safety rules might be unexpectedly preventing you from updating a routing control /// state to reroute traffic. In a "break glass" scenario like this, you can override /// one or more safety rules to change a routing control state and fail over your application. /// /// /// /// The SafetyRulesToOverride property enables you override one or more safety /// rules and update routing control states. For more information, see /// Override safety rules to reroute traffic in the Amazon Route 53 Application Recovery /// Controller Developer Guide. /// /// /// /// You must specify Regional endpoints when you work with API cluster operations /// to get or update routing control states in Route 53 ARC. /// /// /// /// To see a code example for getting a routing control state, including accessing Regional /// cluster endpoints in sequence, see API /// examples in the Amazon Route 53 Application Recovery Controller Developer Guide. /// /// /// /// Container for the necessary parameters to execute the UpdateRoutingControlStates service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateRoutingControlStates service method, as returned by Route53RecoveryCluster. /// /// You don't have sufficient permissions to perform this action. /// /// /// There was a conflict with this request. Try again. /// /// /// The cluster endpoint isn't available. Try another cluster endpoint. /// /// /// There was an unexpected error during processing of the request. /// /// /// The request references a routing control or control panel that was not found. /// /// /// The request can't update that many routing control states at the same time. Try again /// with fewer routing control states. /// /// /// The request was denied because of request throttling. /// /// /// There was a validation error on the request. /// /// REST API Reference for UpdateRoutingControlStates Operation public virtual Task UpdateRoutingControlStatesAsync(UpdateRoutingControlStatesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRoutingControlStatesRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRoutingControlStatesResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion } }