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

Contains one or more * countries that AWS WAF will search for.

See Also:

AWS API * Reference

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

The GeoMatchSetId for an GeoMatchSet. You use * GeoMatchSetId to get information about a GeoMatchSet * (see GeoMatchSet), update a GeoMatchSet (see * UpdateGeoMatchSet), insert a GeoMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a GeoMatchSet from AWS WAF (see * DeleteGeoMatchSet).

GeoMatchSetId is returned by * CreateGeoMatchSet and by ListGeoMatchSets.

*/ inline const Aws::String& GetGeoMatchSetId() const{ return m_geoMatchSetId; } /** *

The GeoMatchSetId for an GeoMatchSet. You use * GeoMatchSetId to get information about a GeoMatchSet * (see GeoMatchSet), update a GeoMatchSet (see * UpdateGeoMatchSet), insert a GeoMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a GeoMatchSet from AWS WAF (see * DeleteGeoMatchSet).

GeoMatchSetId is returned by * CreateGeoMatchSet and by ListGeoMatchSets.

*/ inline bool GeoMatchSetIdHasBeenSet() const { return m_geoMatchSetIdHasBeenSet; } /** *

The GeoMatchSetId for an GeoMatchSet. You use * GeoMatchSetId to get information about a GeoMatchSet * (see GeoMatchSet), update a GeoMatchSet (see * UpdateGeoMatchSet), insert a GeoMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a GeoMatchSet from AWS WAF (see * DeleteGeoMatchSet).

GeoMatchSetId is returned by * CreateGeoMatchSet and by ListGeoMatchSets.

*/ inline void SetGeoMatchSetId(const Aws::String& value) { m_geoMatchSetIdHasBeenSet = true; m_geoMatchSetId = value; } /** *

The GeoMatchSetId for an GeoMatchSet. You use * GeoMatchSetId to get information about a GeoMatchSet * (see GeoMatchSet), update a GeoMatchSet (see * UpdateGeoMatchSet), insert a GeoMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a GeoMatchSet from AWS WAF (see * DeleteGeoMatchSet).

GeoMatchSetId is returned by * CreateGeoMatchSet and by ListGeoMatchSets.

*/ inline void SetGeoMatchSetId(Aws::String&& value) { m_geoMatchSetIdHasBeenSet = true; m_geoMatchSetId = std::move(value); } /** *

The GeoMatchSetId for an GeoMatchSet. You use * GeoMatchSetId to get information about a GeoMatchSet * (see GeoMatchSet), update a GeoMatchSet (see * UpdateGeoMatchSet), insert a GeoMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a GeoMatchSet from AWS WAF (see * DeleteGeoMatchSet).

GeoMatchSetId is returned by * CreateGeoMatchSet and by ListGeoMatchSets.

*/ inline void SetGeoMatchSetId(const char* value) { m_geoMatchSetIdHasBeenSet = true; m_geoMatchSetId.assign(value); } /** *

The GeoMatchSetId for an GeoMatchSet. You use * GeoMatchSetId to get information about a GeoMatchSet * (see GeoMatchSet), update a GeoMatchSet (see * UpdateGeoMatchSet), insert a GeoMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a GeoMatchSet from AWS WAF (see * DeleteGeoMatchSet).

GeoMatchSetId is returned by * CreateGeoMatchSet and by ListGeoMatchSets.

*/ inline GeoMatchSet& WithGeoMatchSetId(const Aws::String& value) { SetGeoMatchSetId(value); return *this;} /** *

The GeoMatchSetId for an GeoMatchSet. You use * GeoMatchSetId to get information about a GeoMatchSet * (see GeoMatchSet), update a GeoMatchSet (see * UpdateGeoMatchSet), insert a GeoMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a GeoMatchSet from AWS WAF (see * DeleteGeoMatchSet).

GeoMatchSetId is returned by * CreateGeoMatchSet and by ListGeoMatchSets.

*/ inline GeoMatchSet& WithGeoMatchSetId(Aws::String&& value) { SetGeoMatchSetId(std::move(value)); return *this;} /** *

The GeoMatchSetId for an GeoMatchSet. You use * GeoMatchSetId to get information about a GeoMatchSet * (see GeoMatchSet), update a GeoMatchSet (see * UpdateGeoMatchSet), insert a GeoMatchSet into a * Rule or delete one from a Rule (see * UpdateRule), and delete a GeoMatchSet from AWS WAF (see * DeleteGeoMatchSet).

GeoMatchSetId is returned by * CreateGeoMatchSet and by ListGeoMatchSets.

*/ inline GeoMatchSet& WithGeoMatchSetId(const char* value) { SetGeoMatchSetId(value); return *this;} /** *

A friendly name or description of the GeoMatchSet. You can't change * the name of an GeoMatchSet after you create it.

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

A friendly name or description of the GeoMatchSet. You can't change * the name of an GeoMatchSet after you create it.

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

A friendly name or description of the GeoMatchSet. You can't change * the name of an GeoMatchSet after you create it.

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

A friendly name or description of the GeoMatchSet. You can't change * the name of an GeoMatchSet after you create it.

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

A friendly name or description of the GeoMatchSet. You can't change * the name of an GeoMatchSet after you create it.

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

A friendly name or description of the GeoMatchSet. You can't change * the name of an GeoMatchSet after you create it.

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

A friendly name or description of the GeoMatchSet. You can't change * the name of an GeoMatchSet after you create it.

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

A friendly name or description of the GeoMatchSet. You can't change * the name of an GeoMatchSet after you create it.

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

An array of GeoMatchConstraint objects, which contain the country that * you want AWS WAF to search for.

*/ inline const Aws::Vector& GetGeoMatchConstraints() const{ return m_geoMatchConstraints; } /** *

An array of GeoMatchConstraint objects, which contain the country that * you want AWS WAF to search for.

*/ inline bool GeoMatchConstraintsHasBeenSet() const { return m_geoMatchConstraintsHasBeenSet; } /** *

An array of GeoMatchConstraint objects, which contain the country that * you want AWS WAF to search for.

*/ inline void SetGeoMatchConstraints(const Aws::Vector& value) { m_geoMatchConstraintsHasBeenSet = true; m_geoMatchConstraints = value; } /** *

An array of GeoMatchConstraint objects, which contain the country that * you want AWS WAF to search for.

*/ inline void SetGeoMatchConstraints(Aws::Vector&& value) { m_geoMatchConstraintsHasBeenSet = true; m_geoMatchConstraints = std::move(value); } /** *

An array of GeoMatchConstraint objects, which contain the country that * you want AWS WAF to search for.

*/ inline GeoMatchSet& WithGeoMatchConstraints(const Aws::Vector& value) { SetGeoMatchConstraints(value); return *this;} /** *

An array of GeoMatchConstraint objects, which contain the country that * you want AWS WAF to search for.

*/ inline GeoMatchSet& WithGeoMatchConstraints(Aws::Vector&& value) { SetGeoMatchConstraints(std::move(value)); return *this;} /** *

An array of GeoMatchConstraint objects, which contain the country that * you want AWS WAF to search for.

*/ inline GeoMatchSet& AddGeoMatchConstraints(const GeoMatchConstraint& value) { m_geoMatchConstraintsHasBeenSet = true; m_geoMatchConstraints.push_back(value); return *this; } /** *

An array of GeoMatchConstraint objects, which contain the country that * you want AWS WAF to search for.

*/ inline GeoMatchSet& AddGeoMatchConstraints(GeoMatchConstraint&& value) { m_geoMatchConstraintsHasBeenSet = true; m_geoMatchConstraints.push_back(std::move(value)); return *this; } private: Aws::String m_geoMatchSetId; bool m_geoMatchSetIdHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::Vector m_geoMatchConstraints; bool m_geoMatchConstraintsHasBeenSet = false; }; } // namespace Model } // namespace WAF } // namespace Aws