Class CfnRateBasedRuleMixinProps.Builder
java.lang.Object
software.amazon.awscdk.cfnpropertymixins.services.wafregional.CfnRateBasedRuleMixinProps.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<CfnRateBasedRuleMixinProps>
- Enclosing interface:
CfnRateBasedRuleMixinProps
@Stability(Stable)
public static final class CfnRateBasedRuleMixinProps.Builder
extends Object
implements software.amazon.jsii.Builder<CfnRateBasedRuleMixinProps>
A builder for
CfnRateBasedRuleMixinProps-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()Builds the configured instance.matchPredicates(List<? extends Object> matchPredicates) Sets the value ofCfnRateBasedRuleMixinProps.getMatchPredicates()matchPredicates(IResolvable matchPredicates) Sets the value ofCfnRateBasedRuleMixinProps.getMatchPredicates()metricName(String metricName) Sets the value ofCfnRateBasedRuleMixinProps.getMetricName()Sets the value ofCfnRateBasedRuleMixinProps.getName()Sets the value ofCfnRateBasedRuleMixinProps.getRateKey()Sets the value ofCfnRateBasedRuleMixinProps.getRateLimit()
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
matchPredicates
@Stability(Stable) public CfnRateBasedRuleMixinProps.Builder matchPredicates(IResolvable matchPredicates) Sets the value ofCfnRateBasedRuleMixinProps.getMatchPredicates()- Parameters:
matchPredicates- ThePredicatesobject contains onePredicateelement for eachByteMatchSet,IPSet, orSqlInjectionMatchSet>object that you want to include in aRateBasedRule.- Returns:
this
-
matchPredicates
@Stability(Stable) public CfnRateBasedRuleMixinProps.Builder matchPredicates(List<? extends Object> matchPredicates) Sets the value ofCfnRateBasedRuleMixinProps.getMatchPredicates()- Parameters:
matchPredicates- ThePredicatesobject contains onePredicateelement for eachByteMatchSet,IPSet, orSqlInjectionMatchSet>object that you want to include in aRateBasedRule.- Returns:
this
-
metricName
Sets the value ofCfnRateBasedRuleMixinProps.getMetricName()- Parameters:
metricName- A name for the metrics for aRateBasedRule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF , including "All" and "Default_Action." You can't change the name of the metric after you create theRateBasedRule.- Returns:
this
-
name
Sets the value ofCfnRateBasedRuleMixinProps.getName()- Parameters:
name- A friendly name or description for aRateBasedRule. You can't change the name of aRateBasedRuleafter you create it.- Returns:
this
-
rateKey
Sets the value ofCfnRateBasedRuleMixinProps.getRateKey()- Parameters:
rateKey- The field that AWS WAF uses to determine if requests are likely arriving from single source and thus subject to rate monitoring. The only valid value forRateKeyisIP.IPindicates that requests arriving from the same IP address are subject to theRateLimitthat is specified in theRateBasedRule.- Returns:
this
-
rateLimit
Sets the value ofCfnRateBasedRuleMixinProps.getRateLimit()- Parameters:
rateLimit- The maximum number of requests, which have an identical value in the field specified by theRateKey, allowed in a five-minute period. If the number of requests exceeds theRateLimitand the other predicates specified in the rule are also met, AWS WAF triggers the action that is specified for this rule.- Returns:
this
-
build
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<CfnRateBasedRuleMixinProps>- Returns:
- a new instance of
CfnRateBasedRuleMixinProps - Throws:
NullPointerException- if any required attribute was not provided
-