Class CfnSafetyRuleProps.Builder

java.lang.Object
software.amazon.awscdk.services.route53recoverycontrol.CfnSafetyRuleProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnSafetyRuleProps>
Enclosing interface:
CfnSafetyRuleProps

@Stability(Stable) public static final class CfnSafetyRuleProps.Builder extends Object implements software.amazon.jsii.Builder<CfnSafetyRuleProps>
A builder for CfnSafetyRuleProps
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • controlPanelArn

      @Stability(Stable) public CfnSafetyRuleProps.Builder controlPanelArn(String controlPanelArn)
      Parameters:
      controlPanelArn - The Amazon Resource Name (ARN) of the control panel. This parameter is required.
      Returns:
      this
    • name

      @Stability(Stable) public CfnSafetyRuleProps.Builder name(String name)
      Parameters:
      name - The name of the assertion rule. This parameter is required. The name must be unique within a control panel. You can use any non-white space character in the name except the following: & > < ' (single quote) " (double quote) ; (semicolon)
      Returns:
      this
    • ruleConfig

      @Stability(Stable) public CfnSafetyRuleProps.Builder ruleConfig(IResolvable ruleConfig)
      Parameters:
      ruleConfig - The criteria that you set for specific assertion controls (routing controls) that designate how many control states must be ON as the result of a transaction. This parameter is required. For example, if you have three assertion controls, you might specify ATLEAST 2 for your rule configuration. This means that at least two assertion controls must be ON , so that at least two AWS Regions have traffic flowing to them.
      Returns:
      this
    • ruleConfig

      @Stability(Stable) public CfnSafetyRuleProps.Builder ruleConfig(CfnSafetyRule.RuleConfigProperty ruleConfig)
      Parameters:
      ruleConfig - The criteria that you set for specific assertion controls (routing controls) that designate how many control states must be ON as the result of a transaction. This parameter is required. For example, if you have three assertion controls, you might specify ATLEAST 2 for your rule configuration. This means that at least two assertion controls must be ON , so that at least two AWS Regions have traffic flowing to them.
      Returns:
      this
    • assertionRule

      @Stability(Stable) public CfnSafetyRuleProps.Builder assertionRule(IResolvable assertionRule)
      Parameters:
      assertionRule - An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is On after the transaction so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario.
      Returns:
      this
    • assertionRule

      @Stability(Stable) public CfnSafetyRuleProps.Builder assertionRule(CfnSafetyRule.AssertionRuleProperty assertionRule)
      Parameters:
      assertionRule - An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is On after the transaction so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario.
      Returns:
      this
    • gatingRule

      @Stability(Stable) public CfnSafetyRuleProps.Builder gatingRule(IResolvable gatingRule)
      Parameters:
      gatingRule - 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.
      Returns:
      this
    • gatingRule

      @Stability(Stable) public CfnSafetyRuleProps.Builder gatingRule(CfnSafetyRule.GatingRuleProperty gatingRule)
      Parameters:
      gatingRule - 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.
      Returns:
      this
    • tags

      @Stability(Stable) public CfnSafetyRuleProps.Builder tags(List<? extends CfnTag> tags)
      Parameters:
      tags - The tags associated with the safety rule.
      Returns:
      this
    • build

      @Stability(Stable) public CfnSafetyRuleProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnSafetyRuleProps>
      Returns:
      a new instance of CfnSafetyRuleProps
      Throws:
      NullPointerException - if any required attribute was not provided