/** * 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 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.

In an * UpdateByteMatchSet request, ByteMatchSetUpdate specifies * whether to insert or delete a ByteMatchTuple and includes the settings * for the ByteMatchTuple.

See Also:

AWS * API Reference

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

Specifies whether to insert or delete a ByteMatchTuple.

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

Specifies whether to insert or delete a ByteMatchTuple.

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

Specifies whether to insert or delete a ByteMatchTuple.

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

Specifies whether to insert or delete a ByteMatchTuple.

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

Specifies whether to insert or delete a ByteMatchTuple.

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

Specifies whether to insert or delete a ByteMatchTuple.

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

Information about the part of a web request that you want AWS WAF to inspect * and the value that you want AWS WAF to search for. If you specify * DELETE for the value of Action, the * ByteMatchTuple values must exactly match the values in the * ByteMatchTuple that you want to delete from the * ByteMatchSet.

*/ inline const ByteMatchTuple& GetByteMatchTuple() const{ return m_byteMatchTuple; } /** *

Information about the part of a web request that you want AWS WAF to inspect * and the value that you want AWS WAF to search for. If you specify * DELETE for the value of Action, the * ByteMatchTuple values must exactly match the values in the * ByteMatchTuple that you want to delete from the * ByteMatchSet.

*/ inline bool ByteMatchTupleHasBeenSet() const { return m_byteMatchTupleHasBeenSet; } /** *

Information about the part of a web request that you want AWS WAF to inspect * and the value that you want AWS WAF to search for. If you specify * DELETE for the value of Action, the * ByteMatchTuple values must exactly match the values in the * ByteMatchTuple that you want to delete from the * ByteMatchSet.

*/ inline void SetByteMatchTuple(const ByteMatchTuple& value) { m_byteMatchTupleHasBeenSet = true; m_byteMatchTuple = value; } /** *

Information about the part of a web request that you want AWS WAF to inspect * and the value that you want AWS WAF to search for. If you specify * DELETE for the value of Action, the * ByteMatchTuple values must exactly match the values in the * ByteMatchTuple that you want to delete from the * ByteMatchSet.

*/ inline void SetByteMatchTuple(ByteMatchTuple&& value) { m_byteMatchTupleHasBeenSet = true; m_byteMatchTuple = std::move(value); } /** *

Information about the part of a web request that you want AWS WAF to inspect * and the value that you want AWS WAF to search for. If you specify * DELETE for the value of Action, the * ByteMatchTuple values must exactly match the values in the * ByteMatchTuple that you want to delete from the * ByteMatchSet.

*/ inline ByteMatchSetUpdate& WithByteMatchTuple(const ByteMatchTuple& value) { SetByteMatchTuple(value); return *this;} /** *

Information about the part of a web request that you want AWS WAF to inspect * and the value that you want AWS WAF to search for. If you specify * DELETE for the value of Action, the * ByteMatchTuple values must exactly match the values in the * ByteMatchTuple that you want to delete from the * ByteMatchSet.

*/ inline ByteMatchSetUpdate& WithByteMatchTuple(ByteMatchTuple&& value) { SetByteMatchTuple(std::move(value)); return *this;} private: ChangeAction m_action; bool m_actionHasBeenSet = false; ByteMatchTuple m_byteMatchTuple; bool m_byteMatchTupleHasBeenSet = false; }; } // namespace Model } // namespace WAFRegional } // namespace Aws