/* * 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.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.Route53RecoveryCluster.Model { /// /// Container for the parameters to the UpdateRoutingControlStates operation. /// 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. /// /// /// public partial class UpdateRoutingControlStatesRequest : AmazonRoute53RecoveryClusterRequest { private List _safetyRulesToOverride = new List(); private List _updateRoutingControlStateEntries = new List(); /// /// Gets and sets the property SafetyRulesToOverride. /// /// The Amazon Resource Names (ARNs) for the safety rules that you want to override when /// you're updating routing control states. You can override one safety rule or multiple /// safety rules by including one or more ARNs, separated by commas. /// /// /// /// For more information, see /// Override safety rules to reroute traffic in the Amazon Route 53 Application Recovery /// Controller Developer Guide. /// /// public List SafetyRulesToOverride { get { return this._safetyRulesToOverride; } set { this._safetyRulesToOverride = value; } } // Check to see if SafetyRulesToOverride property is set internal bool IsSetSafetyRulesToOverride() { return this._safetyRulesToOverride != null && this._safetyRulesToOverride.Count > 0; } /// /// Gets and sets the property UpdateRoutingControlStateEntries. /// /// A set of routing control entries that you want to update. /// /// [AWSProperty(Required=true)] public List UpdateRoutingControlStateEntries { get { return this._updateRoutingControlStateEntries; } set { this._updateRoutingControlStateEntries = value; } } // Check to see if UpdateRoutingControlStateEntries property is set internal bool IsSetUpdateRoutingControlStateEntries() { return this._updateRoutingControlStateEntries != null && this._updateRoutingControlStateEntries.Count > 0; } } }