/** * 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 Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace Route53 { namespace Model { /** *

A complex type that contains the codes and full continent, country, and * subdivision names for the specified geolocation code.

See * Also:

AWS * API Reference

*/ class GeoLocationDetails { public: AWS_ROUTE53_API GeoLocationDetails(); AWS_ROUTE53_API GeoLocationDetails(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ROUTE53_API GeoLocationDetails& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ROUTE53_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const; /** *

The two-letter code for the continent.

*/ inline const Aws::String& GetContinentCode() const{ return m_continentCode; } /** *

The two-letter code for the continent.

*/ inline bool ContinentCodeHasBeenSet() const { return m_continentCodeHasBeenSet; } /** *

The two-letter code for the continent.

*/ inline void SetContinentCode(const Aws::String& value) { m_continentCodeHasBeenSet = true; m_continentCode = value; } /** *

The two-letter code for the continent.

*/ inline void SetContinentCode(Aws::String&& value) { m_continentCodeHasBeenSet = true; m_continentCode = std::move(value); } /** *

The two-letter code for the continent.

*/ inline void SetContinentCode(const char* value) { m_continentCodeHasBeenSet = true; m_continentCode.assign(value); } /** *

The two-letter code for the continent.

*/ inline GeoLocationDetails& WithContinentCode(const Aws::String& value) { SetContinentCode(value); return *this;} /** *

The two-letter code for the continent.

*/ inline GeoLocationDetails& WithContinentCode(Aws::String&& value) { SetContinentCode(std::move(value)); return *this;} /** *

The two-letter code for the continent.

*/ inline GeoLocationDetails& WithContinentCode(const char* value) { SetContinentCode(value); return *this;} /** *

The full name of the continent.

*/ inline const Aws::String& GetContinentName() const{ return m_continentName; } /** *

The full name of the continent.

*/ inline bool ContinentNameHasBeenSet() const { return m_continentNameHasBeenSet; } /** *

The full name of the continent.

*/ inline void SetContinentName(const Aws::String& value) { m_continentNameHasBeenSet = true; m_continentName = value; } /** *

The full name of the continent.

*/ inline void SetContinentName(Aws::String&& value) { m_continentNameHasBeenSet = true; m_continentName = std::move(value); } /** *

The full name of the continent.

*/ inline void SetContinentName(const char* value) { m_continentNameHasBeenSet = true; m_continentName.assign(value); } /** *

The full name of the continent.

*/ inline GeoLocationDetails& WithContinentName(const Aws::String& value) { SetContinentName(value); return *this;} /** *

The full name of the continent.

*/ inline GeoLocationDetails& WithContinentName(Aws::String&& value) { SetContinentName(std::move(value)); return *this;} /** *

The full name of the continent.

*/ inline GeoLocationDetails& WithContinentName(const char* value) { SetContinentName(value); return *this;} /** *

The two-letter code for the country.

*/ inline const Aws::String& GetCountryCode() const{ return m_countryCode; } /** *

The two-letter code for the country.

*/ inline bool CountryCodeHasBeenSet() const { return m_countryCodeHasBeenSet; } /** *

The two-letter code for the country.

*/ inline void SetCountryCode(const Aws::String& value) { m_countryCodeHasBeenSet = true; m_countryCode = value; } /** *

The two-letter code for the country.

*/ inline void SetCountryCode(Aws::String&& value) { m_countryCodeHasBeenSet = true; m_countryCode = std::move(value); } /** *

The two-letter code for the country.

*/ inline void SetCountryCode(const char* value) { m_countryCodeHasBeenSet = true; m_countryCode.assign(value); } /** *

The two-letter code for the country.

*/ inline GeoLocationDetails& WithCountryCode(const Aws::String& value) { SetCountryCode(value); return *this;} /** *

The two-letter code for the country.

*/ inline GeoLocationDetails& WithCountryCode(Aws::String&& value) { SetCountryCode(std::move(value)); return *this;} /** *

The two-letter code for the country.

*/ inline GeoLocationDetails& WithCountryCode(const char* value) { SetCountryCode(value); return *this;} /** *

The name of the country.

*/ inline const Aws::String& GetCountryName() const{ return m_countryName; } /** *

The name of the country.

*/ inline bool CountryNameHasBeenSet() const { return m_countryNameHasBeenSet; } /** *

The name of the country.

*/ inline void SetCountryName(const Aws::String& value) { m_countryNameHasBeenSet = true; m_countryName = value; } /** *

The name of the country.

*/ inline void SetCountryName(Aws::String&& value) { m_countryNameHasBeenSet = true; m_countryName = std::move(value); } /** *

The name of the country.

*/ inline void SetCountryName(const char* value) { m_countryNameHasBeenSet = true; m_countryName.assign(value); } /** *

The name of the country.

*/ inline GeoLocationDetails& WithCountryName(const Aws::String& value) { SetCountryName(value); return *this;} /** *

The name of the country.

*/ inline GeoLocationDetails& WithCountryName(Aws::String&& value) { SetCountryName(std::move(value)); return *this;} /** *

The name of the country.

*/ inline GeoLocationDetails& WithCountryName(const char* value) { SetCountryName(value); return *this;} /** *

The code for the subdivision, such as a particular state within the United * States. For a list of US state abbreviations, see Appendix B: Two–Letter State and * Possession Abbreviations on the United States Postal Service website. For a * list of all supported subdivision codes, use the ListGeoLocations * API.

*/ inline const Aws::String& GetSubdivisionCode() const{ return m_subdivisionCode; } /** *

The code for the subdivision, such as a particular state within the United * States. For a list of US state abbreviations, see Appendix B: Two–Letter State and * Possession Abbreviations on the United States Postal Service website. For a * list of all supported subdivision codes, use the ListGeoLocations * API.

*/ inline bool SubdivisionCodeHasBeenSet() const { return m_subdivisionCodeHasBeenSet; } /** *

The code for the subdivision, such as a particular state within the United * States. For a list of US state abbreviations, see Appendix B: Two–Letter State and * Possession Abbreviations on the United States Postal Service website. For a * list of all supported subdivision codes, use the ListGeoLocations * API.

*/ inline void SetSubdivisionCode(const Aws::String& value) { m_subdivisionCodeHasBeenSet = true; m_subdivisionCode = value; } /** *

The code for the subdivision, such as a particular state within the United * States. For a list of US state abbreviations, see Appendix B: Two–Letter State and * Possession Abbreviations on the United States Postal Service website. For a * list of all supported subdivision codes, use the ListGeoLocations * API.

*/ inline void SetSubdivisionCode(Aws::String&& value) { m_subdivisionCodeHasBeenSet = true; m_subdivisionCode = std::move(value); } /** *

The code for the subdivision, such as a particular state within the United * States. For a list of US state abbreviations, see Appendix B: Two–Letter State and * Possession Abbreviations on the United States Postal Service website. For a * list of all supported subdivision codes, use the ListGeoLocations * API.

*/ inline void SetSubdivisionCode(const char* value) { m_subdivisionCodeHasBeenSet = true; m_subdivisionCode.assign(value); } /** *

The code for the subdivision, such as a particular state within the United * States. For a list of US state abbreviations, see Appendix B: Two–Letter State and * Possession Abbreviations on the United States Postal Service website. For a * list of all supported subdivision codes, use the ListGeoLocations * API.

*/ inline GeoLocationDetails& WithSubdivisionCode(const Aws::String& value) { SetSubdivisionCode(value); return *this;} /** *

The code for the subdivision, such as a particular state within the United * States. For a list of US state abbreviations, see Appendix B: Two–Letter State and * Possession Abbreviations on the United States Postal Service website. For a * list of all supported subdivision codes, use the ListGeoLocations * API.

*/ inline GeoLocationDetails& WithSubdivisionCode(Aws::String&& value) { SetSubdivisionCode(std::move(value)); return *this;} /** *

The code for the subdivision, such as a particular state within the United * States. For a list of US state abbreviations, see Appendix B: Two–Letter State and * Possession Abbreviations on the United States Postal Service website. For a * list of all supported subdivision codes, use the ListGeoLocations * API.

*/ inline GeoLocationDetails& WithSubdivisionCode(const char* value) { SetSubdivisionCode(value); return *this;} /** *

The full name of the subdivision. Route 53 currently supports only states in * the United States.

*/ inline const Aws::String& GetSubdivisionName() const{ return m_subdivisionName; } /** *

The full name of the subdivision. Route 53 currently supports only states in * the United States.

*/ inline bool SubdivisionNameHasBeenSet() const { return m_subdivisionNameHasBeenSet; } /** *

The full name of the subdivision. Route 53 currently supports only states in * the United States.

*/ inline void SetSubdivisionName(const Aws::String& value) { m_subdivisionNameHasBeenSet = true; m_subdivisionName = value; } /** *

The full name of the subdivision. Route 53 currently supports only states in * the United States.

*/ inline void SetSubdivisionName(Aws::String&& value) { m_subdivisionNameHasBeenSet = true; m_subdivisionName = std::move(value); } /** *

The full name of the subdivision. Route 53 currently supports only states in * the United States.

*/ inline void SetSubdivisionName(const char* value) { m_subdivisionNameHasBeenSet = true; m_subdivisionName.assign(value); } /** *

The full name of the subdivision. Route 53 currently supports only states in * the United States.

*/ inline GeoLocationDetails& WithSubdivisionName(const Aws::String& value) { SetSubdivisionName(value); return *this;} /** *

The full name of the subdivision. Route 53 currently supports only states in * the United States.

*/ inline GeoLocationDetails& WithSubdivisionName(Aws::String&& value) { SetSubdivisionName(std::move(value)); return *this;} /** *

The full name of the subdivision. Route 53 currently supports only states in * the United States.

*/ inline GeoLocationDetails& WithSubdivisionName(const char* value) { SetSubdivisionName(value); return *this;} private: Aws::String m_continentCode; bool m_continentCodeHasBeenSet = false; Aws::String m_continentName; bool m_continentNameHasBeenSet = false; Aws::String m_countryCode; bool m_countryCodeHasBeenSet = false; Aws::String m_countryName; bool m_countryNameHasBeenSet = false; Aws::String m_subdivisionCode; bool m_subdivisionCodeHasBeenSet = false; Aws::String m_subdivisionName; bool m_subdivisionNameHasBeenSet = false; }; } // namespace Model } // namespace Route53 } // namespace Aws