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

Specifies custom configurations for the associations between the web ACL and * protected resources.

Use this to customize the maximum size of the * request body that your protected CloudFront distributions forward to WAF for * inspection. The default is 16 KB (16,384 kilobytes).

You are * charged additional fees when your protected resources forward body sizes that * are larger than the default. For more information, see WAF Pricing.

See * Also:

AWS * API Reference

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

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline const Aws::Map& GetRequestBody() const{ return m_requestBody; } /** *

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline bool RequestBodyHasBeenSet() const { return m_requestBodyHasBeenSet; } /** *

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline void SetRequestBody(const Aws::Map& value) { m_requestBodyHasBeenSet = true; m_requestBody = value; } /** *

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline void SetRequestBody(Aws::Map&& value) { m_requestBodyHasBeenSet = true; m_requestBody = std::move(value); } /** *

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline AssociationConfig& WithRequestBody(const Aws::Map& value) { SetRequestBody(value); return *this;} /** *

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline AssociationConfig& WithRequestBody(Aws::Map&& value) { SetRequestBody(std::move(value)); return *this;} /** *

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline AssociationConfig& AddRequestBody(const AssociatedResourceType& key, const RequestBodyAssociatedResourceTypeConfig& value) { m_requestBodyHasBeenSet = true; m_requestBody.emplace(key, value); return *this; } /** *

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline AssociationConfig& AddRequestBody(AssociatedResourceType&& key, const RequestBodyAssociatedResourceTypeConfig& value) { m_requestBodyHasBeenSet = true; m_requestBody.emplace(std::move(key), value); return *this; } /** *

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline AssociationConfig& AddRequestBody(const AssociatedResourceType& key, RequestBodyAssociatedResourceTypeConfig&& value) { m_requestBodyHasBeenSet = true; m_requestBody.emplace(key, std::move(value)); return *this; } /** *

Customizes the maximum size of the request body that your protected * CloudFront distributions forward to WAF for inspection. The default size is 16 * KB (16,384 kilobytes).

You are charged additional fees when your * protected resources forward body sizes that are larger than the default. For * more information, see WAF * Pricing.

*/ inline AssociationConfig& AddRequestBody(AssociatedResourceType&& key, RequestBodyAssociatedResourceTypeConfig&& value) { m_requestBodyHasBeenSet = true; m_requestBody.emplace(std::move(key), std::move(value)); return *this; } private: Aws::Map m_requestBody; bool m_requestBodyHasBeenSet = false; }; } // namespace Model } // namespace WAFV2 } // namespace Aws