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

This is AWS WAF Classic documentation. For more information, * see AWS * WAF Classic in the developer guide.

For the latest version of AWS * WAF, use the AWS WAFV2 API and see the AWS * WAF Developer Guide. With the latest version, AWS WAF has a single set of * endpoints for regional and global use.

Specifies whether to * insert a Rule into or delete a Rule from a * WebACL.

See Also:

AWS * API Reference

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

Specifies whether to insert a Rule into or delete a * Rule from a WebACL.

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

Specifies whether to insert a Rule into or delete a * Rule from a WebACL.

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

Specifies whether to insert a Rule into or delete a * Rule from a WebACL.

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

Specifies whether to insert a Rule into or delete a * Rule from a WebACL.

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

Specifies whether to insert a Rule into or delete a * Rule from a WebACL.

*/ inline WebACLUpdate& WithAction(const ChangeAction& value) { SetAction(value); return *this;} /** *

Specifies whether to insert a Rule into or delete a * Rule from a WebACL.

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

The ActivatedRule object in an UpdateWebACL request * specifies a Rule that you want to insert or delete, the priority of * the Rule in the WebACL, and the action that you want * AWS WAF to take when a web request matches the Rule * (ALLOW, BLOCK, or COUNT).

*/ inline const ActivatedRule& GetActivatedRule() const{ return m_activatedRule; } /** *

The ActivatedRule object in an UpdateWebACL request * specifies a Rule that you want to insert or delete, the priority of * the Rule in the WebACL, and the action that you want * AWS WAF to take when a web request matches the Rule * (ALLOW, BLOCK, or COUNT).

*/ inline bool ActivatedRuleHasBeenSet() const { return m_activatedRuleHasBeenSet; } /** *

The ActivatedRule object in an UpdateWebACL request * specifies a Rule that you want to insert or delete, the priority of * the Rule in the WebACL, and the action that you want * AWS WAF to take when a web request matches the Rule * (ALLOW, BLOCK, or COUNT).

*/ inline void SetActivatedRule(const ActivatedRule& value) { m_activatedRuleHasBeenSet = true; m_activatedRule = value; } /** *

The ActivatedRule object in an UpdateWebACL request * specifies a Rule that you want to insert or delete, the priority of * the Rule in the WebACL, and the action that you want * AWS WAF to take when a web request matches the Rule * (ALLOW, BLOCK, or COUNT).

*/ inline void SetActivatedRule(ActivatedRule&& value) { m_activatedRuleHasBeenSet = true; m_activatedRule = std::move(value); } /** *

The ActivatedRule object in an UpdateWebACL request * specifies a Rule that you want to insert or delete, the priority of * the Rule in the WebACL, and the action that you want * AWS WAF to take when a web request matches the Rule * (ALLOW, BLOCK, or COUNT).

*/ inline WebACLUpdate& WithActivatedRule(const ActivatedRule& value) { SetActivatedRule(value); return *this;} /** *

The ActivatedRule object in an UpdateWebACL request * specifies a Rule that you want to insert or delete, the priority of * the Rule in the WebACL, and the action that you want * AWS WAF to take when a web request matches the Rule * (ALLOW, BLOCK, or COUNT).

*/ inline WebACLUpdate& WithActivatedRule(ActivatedRule&& value) { SetActivatedRule(std::move(value)); return *this;} private: ChangeAction m_action; bool m_actionHasBeenSet = false; ActivatedRule m_activatedRule; bool m_activatedRuleHasBeenSet = false; }; } // namespace Model } // namespace WAF } // namespace Aws