Interface CfnSafetyRule.GatingRuleProperty

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnSafetyRule.GatingRuleProperty.Jsii$Proxy
Enclosing class:
CfnSafetyRule

@Stability(Stable) public static interface CfnSafetyRule.GatingRuleProperty extends software.amazon.jsii.JsiiSerializable
A gating rule verifies that a gating routing control or set of gating routing controls, evaluates as true, based on a rule configuration that you specify, which allows a set of routing control state changes to complete.

For example, if you specify one gating routing control and you set the Type in the rule configuration to OR , that indicates that you must set the gating routing control to On for the rule to evaluate as true; that is, for the gating control switch to be On. When you do that, then you can update the routing control states for the target routing controls that you specify in the gating rule.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.route53recoverycontrol.*;
 GatingRuleProperty gatingRuleProperty = GatingRuleProperty.builder()
         .gatingControls(List.of("gatingControls"))
         .targetControls(List.of("targetControls"))
         .waitPeriodMs(123)
         .build();
 
  • Method Details

    • getGatingControls

      @Stability(Stable) @NotNull List<String> getGatingControls()
      An array of gating routing control Amazon Resource Names (ARNs).

      For a simple on-off switch, specify the ARN for one routing control. The gating routing controls are evaluated by the rule configuration that you specify to determine if the target routing control states can be changed.

    • getTargetControls

      @Stability(Stable) @NotNull List<String> getTargetControls()
      An array of target routing control Amazon Resource Names (ARNs) for which the states can only be updated if the rule configuration that you specify evaluates to true for the gating routing control.

      As a simple example, if you have a single gating control, it acts as an overall on-off switch for a set of target routing controls. You can use this to manually override automated failover, for example.

    • getWaitPeriodMs

      @Stability(Stable) @NotNull Number getWaitPeriodMs()
      An evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.

      This helps prevent flapping of state. The wait period is 5000 ms by default, but you can choose a custom value.

    • builder

      @Stability(Stable) static CfnSafetyRule.GatingRuleProperty.Builder builder()
      Returns:
      a CfnSafetyRule.GatingRuleProperty.Builder of CfnSafetyRule.GatingRuleProperty