/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SecurityHub { namespace Model { /** *

A combination of ByteMatchSet, IPSet, and/or * SqlInjectionMatchSet objects that identify the web requests that * you want to allow, block, or count.

See Also:

AWS * API Reference

*/ class AwsWafRegionalWebAclRulesListDetails { public: AWS_SECURITYHUB_API AwsWafRegionalWebAclRulesListDetails(); AWS_SECURITYHUB_API AwsWafRegionalWebAclRulesListDetails(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API AwsWafRegionalWebAclRulesListDetails& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The action that WAF takes when a web request matches all conditions in the * rule, such as allow, block, or count the request.

*/ inline const AwsWafRegionalWebAclRulesListActionDetails& GetAction() const{ return m_action; } /** *

The action that WAF takes when a web request matches all conditions in the * rule, such as allow, block, or count the request.

*/ inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; } /** *

The action that WAF takes when a web request matches all conditions in the * rule, such as allow, block, or count the request.

*/ inline void SetAction(const AwsWafRegionalWebAclRulesListActionDetails& value) { m_actionHasBeenSet = true; m_action = value; } /** *

The action that WAF takes when a web request matches all conditions in the * rule, such as allow, block, or count the request.

*/ inline void SetAction(AwsWafRegionalWebAclRulesListActionDetails&& value) { m_actionHasBeenSet = true; m_action = std::move(value); } /** *

The action that WAF takes when a web request matches all conditions in the * rule, such as allow, block, or count the request.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithAction(const AwsWafRegionalWebAclRulesListActionDetails& value) { SetAction(value); return *this;} /** *

The action that WAF takes when a web request matches all conditions in the * rule, such as allow, block, or count the request.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithAction(AwsWafRegionalWebAclRulesListActionDetails&& value) { SetAction(std::move(value)); return *this;} /** *

Overrides the rule evaluation result in the rule group.

*/ inline const AwsWafRegionalWebAclRulesListOverrideActionDetails& GetOverrideAction() const{ return m_overrideAction; } /** *

Overrides the rule evaluation result in the rule group.

*/ inline bool OverrideActionHasBeenSet() const { return m_overrideActionHasBeenSet; } /** *

Overrides the rule evaluation result in the rule group.

*/ inline void SetOverrideAction(const AwsWafRegionalWebAclRulesListOverrideActionDetails& value) { m_overrideActionHasBeenSet = true; m_overrideAction = value; } /** *

Overrides the rule evaluation result in the rule group.

*/ inline void SetOverrideAction(AwsWafRegionalWebAclRulesListOverrideActionDetails&& value) { m_overrideActionHasBeenSet = true; m_overrideAction = std::move(value); } /** *

Overrides the rule evaluation result in the rule group.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithOverrideAction(const AwsWafRegionalWebAclRulesListOverrideActionDetails& value) { SetOverrideAction(value); return *this;} /** *

Overrides the rule evaluation result in the rule group.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithOverrideAction(AwsWafRegionalWebAclRulesListOverrideActionDetails&& value) { SetOverrideAction(std::move(value)); return *this;} /** *

The order in which WAF evaluates the rules in a web ACL.

*/ inline int GetPriority() const{ return m_priority; } /** *

The order in which WAF evaluates the rules in a web ACL.

*/ inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; } /** *

The order in which WAF evaluates the rules in a web ACL.

*/ inline void SetPriority(int value) { m_priorityHasBeenSet = true; m_priority = value; } /** *

The order in which WAF evaluates the rules in a web ACL.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithPriority(int value) { SetPriority(value); return *this;} /** *

The ID of an WAF Regional rule to associate with a web ACL.

*/ inline const Aws::String& GetRuleId() const{ return m_ruleId; } /** *

The ID of an WAF Regional rule to associate with a web ACL.

*/ inline bool RuleIdHasBeenSet() const { return m_ruleIdHasBeenSet; } /** *

The ID of an WAF Regional rule to associate with a web ACL.

*/ inline void SetRuleId(const Aws::String& value) { m_ruleIdHasBeenSet = true; m_ruleId = value; } /** *

The ID of an WAF Regional rule to associate with a web ACL.

*/ inline void SetRuleId(Aws::String&& value) { m_ruleIdHasBeenSet = true; m_ruleId = std::move(value); } /** *

The ID of an WAF Regional rule to associate with a web ACL.

*/ inline void SetRuleId(const char* value) { m_ruleIdHasBeenSet = true; m_ruleId.assign(value); } /** *

The ID of an WAF Regional rule to associate with a web ACL.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithRuleId(const Aws::String& value) { SetRuleId(value); return *this;} /** *

The ID of an WAF Regional rule to associate with a web ACL.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithRuleId(Aws::String&& value) { SetRuleId(std::move(value)); return *this;} /** *

The ID of an WAF Regional rule to associate with a web ACL.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithRuleId(const char* value) { SetRuleId(value); return *this;} /** *

For actions that are associated with a rule, the action that WAF takes when a * web request matches all conditions in a rule.

*/ inline const Aws::String& GetType() const{ return m_type; } /** *

For actions that are associated with a rule, the action that WAF takes when a * web request matches all conditions in a rule.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

For actions that are associated with a rule, the action that WAF takes when a * web request matches all conditions in a rule.

*/ inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; } /** *

For actions that are associated with a rule, the action that WAF takes when a * web request matches all conditions in a rule.

*/ inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

For actions that are associated with a rule, the action that WAF takes when a * web request matches all conditions in a rule.

*/ inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); } /** *

For actions that are associated with a rule, the action that WAF takes when a * web request matches all conditions in a rule.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithType(const Aws::String& value) { SetType(value); return *this;} /** *

For actions that are associated with a rule, the action that WAF takes when a * web request matches all conditions in a rule.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;} /** *

For actions that are associated with a rule, the action that WAF takes when a * web request matches all conditions in a rule.

*/ inline AwsWafRegionalWebAclRulesListDetails& WithType(const char* value) { SetType(value); return *this;} private: AwsWafRegionalWebAclRulesListActionDetails m_action; bool m_actionHasBeenSet = false; AwsWafRegionalWebAclRulesListOverrideActionDetails m_overrideAction; bool m_overrideActionHasBeenSet = false; int m_priority; bool m_priorityHasBeenSet = false; Aws::String m_ruleId; bool m_ruleIdHasBeenSet = false; Aws::String m_type; bool m_typeHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws