/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace WAFRegional { 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.

For the action that is * associated with a rule in a WebACL, specifies the action that you * want AWS WAF to perform when a web request matches all of the conditions in a * rule. For the default action in a WebACL, specifies the action that * you want AWS WAF to take when a web request doesn't match all of the conditions * in any of the rules in a WebACL.

See Also:

AWS * API Reference

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

Specifies how you want AWS WAF to respond to requests that match the settings * in a Rule. Valid settings include the following:

  • * ALLOW: AWS WAF allows requests

  • * BLOCK: AWS WAF blocks requests

  • * COUNT: AWS WAF increments a counter of the requests that match all * of the conditions in the rule. AWS WAF then continues to inspect the web request * based on the remaining rules in the web ACL. You can't specify * COUNT for the default action for a WebACL.

  • *
*/ inline const WafActionType& GetType() const{ return m_type; } /** *

Specifies how you want AWS WAF to respond to requests that match the settings * in a Rule. Valid settings include the following:

  • * ALLOW: AWS WAF allows requests

  • * BLOCK: AWS WAF blocks requests

  • * COUNT: AWS WAF increments a counter of the requests that match all * of the conditions in the rule. AWS WAF then continues to inspect the web request * based on the remaining rules in the web ACL. You can't specify * COUNT for the default action for a WebACL.

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

Specifies how you want AWS WAF to respond to requests that match the settings * in a Rule. Valid settings include the following:

  • * ALLOW: AWS WAF allows requests

  • * BLOCK: AWS WAF blocks requests

  • * COUNT: AWS WAF increments a counter of the requests that match all * of the conditions in the rule. AWS WAF then continues to inspect the web request * based on the remaining rules in the web ACL. You can't specify * COUNT for the default action for a WebACL.

  • *
*/ inline void SetType(const WafActionType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

Specifies how you want AWS WAF to respond to requests that match the settings * in a Rule. Valid settings include the following:

  • * ALLOW: AWS WAF allows requests

  • * BLOCK: AWS WAF blocks requests

  • * COUNT: AWS WAF increments a counter of the requests that match all * of the conditions in the rule. AWS WAF then continues to inspect the web request * based on the remaining rules in the web ACL. You can't specify * COUNT for the default action for a WebACL.

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

Specifies how you want AWS WAF to respond to requests that match the settings * in a Rule. Valid settings include the following:

  • * ALLOW: AWS WAF allows requests

  • * BLOCK: AWS WAF blocks requests

  • * COUNT: AWS WAF increments a counter of the requests that match all * of the conditions in the rule. AWS WAF then continues to inspect the web request * based on the remaining rules in the web ACL. You can't specify * COUNT for the default action for a WebACL.

  • *
*/ inline WafAction& WithType(const WafActionType& value) { SetType(value); return *this;} /** *

Specifies how you want AWS WAF to respond to requests that match the settings * in a Rule. Valid settings include the following:

  • * ALLOW: AWS WAF allows requests

  • * BLOCK: AWS WAF blocks requests

  • * COUNT: AWS WAF increments a counter of the requests that match all * of the conditions in the rule. AWS WAF then continues to inspect the web request * based on the remaining rules in the web ACL. You can't specify * COUNT for the default action for a WebACL.

  • *
*/ inline WafAction& WithType(WafActionType&& value) { SetType(std::move(value)); return *this;} private: WafActionType m_type; bool m_typeHasBeenSet = false; }; } // namespace Model } // namespace WAFRegional } // namespace Aws