/** * 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 WAFV2 { namespace Model { /** *

Details for your use of the Bot Control managed rule group, * AWSManagedRulesBotControlRuleSet. This configuration is used in * ManagedRuleGroupConfig.

See Also:

AWS * API Reference

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

The inspection level to use for the Bot Control rule group. The common level * is the least expensive. The targeted level includes all common level rules and * adds rules with more advanced inspection criteria. For details, see WAF * Bot Control rule group in the WAF Developer Guide.

*/ inline const InspectionLevel& GetInspectionLevel() const{ return m_inspectionLevel; } /** *

The inspection level to use for the Bot Control rule group. The common level * is the least expensive. The targeted level includes all common level rules and * adds rules with more advanced inspection criteria. For details, see WAF * Bot Control rule group in the WAF Developer Guide.

*/ inline bool InspectionLevelHasBeenSet() const { return m_inspectionLevelHasBeenSet; } /** *

The inspection level to use for the Bot Control rule group. The common level * is the least expensive. The targeted level includes all common level rules and * adds rules with more advanced inspection criteria. For details, see WAF * Bot Control rule group in the WAF Developer Guide.

*/ inline void SetInspectionLevel(const InspectionLevel& value) { m_inspectionLevelHasBeenSet = true; m_inspectionLevel = value; } /** *

The inspection level to use for the Bot Control rule group. The common level * is the least expensive. The targeted level includes all common level rules and * adds rules with more advanced inspection criteria. For details, see WAF * Bot Control rule group in the WAF Developer Guide.

*/ inline void SetInspectionLevel(InspectionLevel&& value) { m_inspectionLevelHasBeenSet = true; m_inspectionLevel = std::move(value); } /** *

The inspection level to use for the Bot Control rule group. The common level * is the least expensive. The targeted level includes all common level rules and * adds rules with more advanced inspection criteria. For details, see WAF * Bot Control rule group in the WAF Developer Guide.

*/ inline AWSManagedRulesBotControlRuleSet& WithInspectionLevel(const InspectionLevel& value) { SetInspectionLevel(value); return *this;} /** *

The inspection level to use for the Bot Control rule group. The common level * is the least expensive. The targeted level includes all common level rules and * adds rules with more advanced inspection criteria. For details, see WAF * Bot Control rule group in the WAF Developer Guide.

*/ inline AWSManagedRulesBotControlRuleSet& WithInspectionLevel(InspectionLevel&& value) { SetInspectionLevel(std::move(value)); return *this;} private: InspectionLevel m_inspectionLevel; bool m_inspectionLevelHasBeenSet = false; }; } // namespace Model } // namespace WAFV2 } // namespace Aws