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

In a * GetByteMatchSet request, ByteMatchSet is a complex type that * contains the ByteMatchSetId and Name of a * ByteMatchSet, and the values that you specified when you updated * the ByteMatchSet.

A complex type that contains * ByteMatchTuple objects, which specify the parts of web requests * that you want AWS WAF to inspect and the values that you want AWS WAF to search * for. If a ByteMatchSet contains more than one * ByteMatchTuple object, a request needs to match the settings in * only one ByteMatchTuple to be considered a match.

See * Also:

AWS * API Reference

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

The ByteMatchSetId for a ByteMatchSet. You use * ByteMatchSetId to get information about a ByteMatchSet * (see GetByteMatchSet), update a ByteMatchSet (see * UpdateByteMatchSet), insert a ByteMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a ByteMatchSet from AWS WAF (see * DeleteByteMatchSet).

ByteMatchSetId is returned by * CreateByteMatchSet and by ListByteMatchSets.

*/ inline const Aws::String& GetByteMatchSetId() const{ return m_byteMatchSetId; } /** *

The ByteMatchSetId for a ByteMatchSet. You use * ByteMatchSetId to get information about a ByteMatchSet * (see GetByteMatchSet), update a ByteMatchSet (see * UpdateByteMatchSet), insert a ByteMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a ByteMatchSet from AWS WAF (see * DeleteByteMatchSet).

ByteMatchSetId is returned by * CreateByteMatchSet and by ListByteMatchSets.

*/ inline bool ByteMatchSetIdHasBeenSet() const { return m_byteMatchSetIdHasBeenSet; } /** *

The ByteMatchSetId for a ByteMatchSet. You use * ByteMatchSetId to get information about a ByteMatchSet * (see GetByteMatchSet), update a ByteMatchSet (see * UpdateByteMatchSet), insert a ByteMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a ByteMatchSet from AWS WAF (see * DeleteByteMatchSet).

ByteMatchSetId is returned by * CreateByteMatchSet and by ListByteMatchSets.

*/ inline void SetByteMatchSetId(const Aws::String& value) { m_byteMatchSetIdHasBeenSet = true; m_byteMatchSetId = value; } /** *

The ByteMatchSetId for a ByteMatchSet. You use * ByteMatchSetId to get information about a ByteMatchSet * (see GetByteMatchSet), update a ByteMatchSet (see * UpdateByteMatchSet), insert a ByteMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a ByteMatchSet from AWS WAF (see * DeleteByteMatchSet).

ByteMatchSetId is returned by * CreateByteMatchSet and by ListByteMatchSets.

*/ inline void SetByteMatchSetId(Aws::String&& value) { m_byteMatchSetIdHasBeenSet = true; m_byteMatchSetId = std::move(value); } /** *

The ByteMatchSetId for a ByteMatchSet. You use * ByteMatchSetId to get information about a ByteMatchSet * (see GetByteMatchSet), update a ByteMatchSet (see * UpdateByteMatchSet), insert a ByteMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a ByteMatchSet from AWS WAF (see * DeleteByteMatchSet).

ByteMatchSetId is returned by * CreateByteMatchSet and by ListByteMatchSets.

*/ inline void SetByteMatchSetId(const char* value) { m_byteMatchSetIdHasBeenSet = true; m_byteMatchSetId.assign(value); } /** *

The ByteMatchSetId for a ByteMatchSet. You use * ByteMatchSetId to get information about a ByteMatchSet * (see GetByteMatchSet), update a ByteMatchSet (see * UpdateByteMatchSet), insert a ByteMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a ByteMatchSet from AWS WAF (see * DeleteByteMatchSet).

ByteMatchSetId is returned by * CreateByteMatchSet and by ListByteMatchSets.

*/ inline ByteMatchSet& WithByteMatchSetId(const Aws::String& value) { SetByteMatchSetId(value); return *this;} /** *

The ByteMatchSetId for a ByteMatchSet. You use * ByteMatchSetId to get information about a ByteMatchSet * (see GetByteMatchSet), update a ByteMatchSet (see * UpdateByteMatchSet), insert a ByteMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a ByteMatchSet from AWS WAF (see * DeleteByteMatchSet).

ByteMatchSetId is returned by * CreateByteMatchSet and by ListByteMatchSets.

*/ inline ByteMatchSet& WithByteMatchSetId(Aws::String&& value) { SetByteMatchSetId(std::move(value)); return *this;} /** *

The ByteMatchSetId for a ByteMatchSet. You use * ByteMatchSetId to get information about a ByteMatchSet * (see GetByteMatchSet), update a ByteMatchSet (see * UpdateByteMatchSet), insert a ByteMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a ByteMatchSet from AWS WAF (see * DeleteByteMatchSet).

ByteMatchSetId is returned by * CreateByteMatchSet and by ListByteMatchSets.

*/ inline ByteMatchSet& WithByteMatchSetId(const char* value) { SetByteMatchSetId(value); return *this;} /** *

A friendly name or description of the ByteMatchSet. You can't change * Name after you create a ByteMatchSet.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

A friendly name or description of the ByteMatchSet. You can't change * Name after you create a ByteMatchSet.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

A friendly name or description of the ByteMatchSet. You can't change * Name after you create a ByteMatchSet.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

A friendly name or description of the ByteMatchSet. You can't change * Name after you create a ByteMatchSet.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

A friendly name or description of the ByteMatchSet. You can't change * Name after you create a ByteMatchSet.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

A friendly name or description of the ByteMatchSet. You can't change * Name after you create a ByteMatchSet.

*/ inline ByteMatchSet& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

A friendly name or description of the ByteMatchSet. You can't change * Name after you create a ByteMatchSet.

*/ inline ByteMatchSet& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

A friendly name or description of the ByteMatchSet. You can't change * Name after you create a ByteMatchSet.

*/ inline ByteMatchSet& WithName(const char* value) { SetName(value); return *this;} /** *

Specifies the bytes (typically a string that corresponds with ASCII * characters) that you want AWS WAF to search for in web requests, the location in * requests that you want AWS WAF to search, and other settings.

*/ inline const Aws::Vector& GetByteMatchTuples() const{ return m_byteMatchTuples; } /** *

Specifies the bytes (typically a string that corresponds with ASCII * characters) that you want AWS WAF to search for in web requests, the location in * requests that you want AWS WAF to search, and other settings.

*/ inline bool ByteMatchTuplesHasBeenSet() const { return m_byteMatchTuplesHasBeenSet; } /** *

Specifies the bytes (typically a string that corresponds with ASCII * characters) that you want AWS WAF to search for in web requests, the location in * requests that you want AWS WAF to search, and other settings.

*/ inline void SetByteMatchTuples(const Aws::Vector& value) { m_byteMatchTuplesHasBeenSet = true; m_byteMatchTuples = value; } /** *

Specifies the bytes (typically a string that corresponds with ASCII * characters) that you want AWS WAF to search for in web requests, the location in * requests that you want AWS WAF to search, and other settings.

*/ inline void SetByteMatchTuples(Aws::Vector&& value) { m_byteMatchTuplesHasBeenSet = true; m_byteMatchTuples = std::move(value); } /** *

Specifies the bytes (typically a string that corresponds with ASCII * characters) that you want AWS WAF to search for in web requests, the location in * requests that you want AWS WAF to search, and other settings.

*/ inline ByteMatchSet& WithByteMatchTuples(const Aws::Vector& value) { SetByteMatchTuples(value); return *this;} /** *

Specifies the bytes (typically a string that corresponds with ASCII * characters) that you want AWS WAF to search for in web requests, the location in * requests that you want AWS WAF to search, and other settings.

*/ inline ByteMatchSet& WithByteMatchTuples(Aws::Vector&& value) { SetByteMatchTuples(std::move(value)); return *this;} /** *

Specifies the bytes (typically a string that corresponds with ASCII * characters) that you want AWS WAF to search for in web requests, the location in * requests that you want AWS WAF to search, and other settings.

*/ inline ByteMatchSet& AddByteMatchTuples(const ByteMatchTuple& value) { m_byteMatchTuplesHasBeenSet = true; m_byteMatchTuples.push_back(value); return *this; } /** *

Specifies the bytes (typically a string that corresponds with ASCII * characters) that you want AWS WAF to search for in web requests, the location in * requests that you want AWS WAF to search, and other settings.

*/ inline ByteMatchSet& AddByteMatchTuples(ByteMatchTuple&& value) { m_byteMatchTuplesHasBeenSet = true; m_byteMatchTuples.push_back(std::move(value)); return *this; } private: Aws::String m_byteMatchSetId; bool m_byteMatchSetIdHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::Vector m_byteMatchTuples; bool m_byteMatchTuplesHasBeenSet = false; }; } // namespace Model } // namespace WAF } // namespace Aws