/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace LocationService { namespace Model { /** *

Contains details about addresses or points of interest that match the search * criteria.

Not all details are included with all responses. Some details * may only be returned by specific data partners.

See Also:

AWS API * Reference

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

The numerical portion of an address, such as a building number.

*/ inline const Aws::String& GetAddressNumber() const{ return m_addressNumber; } /** *

The numerical portion of an address, such as a building number.

*/ inline bool AddressNumberHasBeenSet() const { return m_addressNumberHasBeenSet; } /** *

The numerical portion of an address, such as a building number.

*/ inline void SetAddressNumber(const Aws::String& value) { m_addressNumberHasBeenSet = true; m_addressNumber = value; } /** *

The numerical portion of an address, such as a building number.

*/ inline void SetAddressNumber(Aws::String&& value) { m_addressNumberHasBeenSet = true; m_addressNumber = std::move(value); } /** *

The numerical portion of an address, such as a building number.

*/ inline void SetAddressNumber(const char* value) { m_addressNumberHasBeenSet = true; m_addressNumber.assign(value); } /** *

The numerical portion of an address, such as a building number.

*/ inline Place& WithAddressNumber(const Aws::String& value) { SetAddressNumber(value); return *this;} /** *

The numerical portion of an address, such as a building number.

*/ inline Place& WithAddressNumber(Aws::String&& value) { SetAddressNumber(std::move(value)); return *this;} /** *

The numerical portion of an address, such as a building number.

*/ inline Place& WithAddressNumber(const char* value) { SetAddressNumber(value); return *this;} /** *

The Amazon Location categories that describe this Place.

For more * information about using categories, including a list of Amazon Location * categories, see Categories * and filtering, in the Amazon Location Service Developer Guide.

*/ inline const Aws::Vector& GetCategories() const{ return m_categories; } /** *

The Amazon Location categories that describe this Place.

For more * information about using categories, including a list of Amazon Location * categories, see Categories * and filtering, in the Amazon Location Service Developer Guide.

*/ inline bool CategoriesHasBeenSet() const { return m_categoriesHasBeenSet; } /** *

The Amazon Location categories that describe this Place.

For more * information about using categories, including a list of Amazon Location * categories, see Categories * and filtering, in the Amazon Location Service Developer Guide.

*/ inline void SetCategories(const Aws::Vector& value) { m_categoriesHasBeenSet = true; m_categories = value; } /** *

The Amazon Location categories that describe this Place.

For more * information about using categories, including a list of Amazon Location * categories, see Categories * and filtering, in the Amazon Location Service Developer Guide.

*/ inline void SetCategories(Aws::Vector&& value) { m_categoriesHasBeenSet = true; m_categories = std::move(value); } /** *

The Amazon Location categories that describe this Place.

For more * information about using categories, including a list of Amazon Location * categories, see Categories * and filtering, in the Amazon Location Service Developer Guide.

*/ inline Place& WithCategories(const Aws::Vector& value) { SetCategories(value); return *this;} /** *

The Amazon Location categories that describe this Place.

For more * information about using categories, including a list of Amazon Location * categories, see Categories * and filtering, in the Amazon Location Service Developer Guide.

*/ inline Place& WithCategories(Aws::Vector&& value) { SetCategories(std::move(value)); return *this;} /** *

The Amazon Location categories that describe this Place.

For more * information about using categories, including a list of Amazon Location * categories, see Categories * and filtering, in the Amazon Location Service Developer Guide.

*/ inline Place& AddCategories(const Aws::String& value) { m_categoriesHasBeenSet = true; m_categories.push_back(value); return *this; } /** *

The Amazon Location categories that describe this Place.

For more * information about using categories, including a list of Amazon Location * categories, see Categories * and filtering, in the Amazon Location Service Developer Guide.

*/ inline Place& AddCategories(Aws::String&& value) { m_categoriesHasBeenSet = true; m_categories.push_back(std::move(value)); return *this; } /** *

The Amazon Location categories that describe this Place.

For more * information about using categories, including a list of Amazon Location * categories, see Categories * and filtering, in the Amazon Location Service Developer Guide.

*/ inline Place& AddCategories(const char* value) { m_categoriesHasBeenSet = true; m_categories.push_back(value); return *this; } /** *

A country/region specified using ISO 3166 3-digit * country/region code. For example, CAN.

*/ inline const Aws::String& GetCountry() const{ return m_country; } /** *

A country/region specified using ISO 3166 3-digit * country/region code. For example, CAN.

*/ inline bool CountryHasBeenSet() const { return m_countryHasBeenSet; } /** *

A country/region specified using ISO 3166 3-digit * country/region code. For example, CAN.

*/ inline void SetCountry(const Aws::String& value) { m_countryHasBeenSet = true; m_country = value; } /** *

A country/region specified using ISO 3166 3-digit * country/region code. For example, CAN.

*/ inline void SetCountry(Aws::String&& value) { m_countryHasBeenSet = true; m_country = std::move(value); } /** *

A country/region specified using ISO 3166 3-digit * country/region code. For example, CAN.

*/ inline void SetCountry(const char* value) { m_countryHasBeenSet = true; m_country.assign(value); } /** *

A country/region specified using ISO 3166 3-digit * country/region code. For example, CAN.

*/ inline Place& WithCountry(const Aws::String& value) { SetCountry(value); return *this;} /** *

A country/region specified using ISO 3166 3-digit * country/region code. For example, CAN.

*/ inline Place& WithCountry(Aws::String&& value) { SetCountry(std::move(value)); return *this;} /** *

A country/region specified using ISO 3166 3-digit * country/region code. For example, CAN.

*/ inline Place& WithCountry(const char* value) { SetCountry(value); return *this;} inline const PlaceGeometry& GetGeometry() const{ return m_geometry; } inline bool GeometryHasBeenSet() const { return m_geometryHasBeenSet; } inline void SetGeometry(const PlaceGeometry& value) { m_geometryHasBeenSet = true; m_geometry = value; } inline void SetGeometry(PlaceGeometry&& value) { m_geometryHasBeenSet = true; m_geometry = std::move(value); } inline Place& WithGeometry(const PlaceGeometry& value) { SetGeometry(value); return *this;} inline Place& WithGeometry(PlaceGeometry&& value) { SetGeometry(std::move(value)); return *this;} /** *

True if the result is interpolated from other known places.

*

False if the Place is a known place.

Not returned when * the partner does not provide the information.

For example, returns * False for an address location that is found in the partner data, * but returns True if an address does not exist in the partner data * and its location is calculated by interpolating between other known addresses. *

*/ inline bool GetInterpolated() const{ return m_interpolated; } /** *

True if the result is interpolated from other known places.

*

False if the Place is a known place.

Not returned when * the partner does not provide the information.

For example, returns * False for an address location that is found in the partner data, * but returns True if an address does not exist in the partner data * and its location is calculated by interpolating between other known addresses. *

*/ inline bool InterpolatedHasBeenSet() const { return m_interpolatedHasBeenSet; } /** *

True if the result is interpolated from other known places.

*

False if the Place is a known place.

Not returned when * the partner does not provide the information.

For example, returns * False for an address location that is found in the partner data, * but returns True if an address does not exist in the partner data * and its location is calculated by interpolating between other known addresses. *

*/ inline void SetInterpolated(bool value) { m_interpolatedHasBeenSet = true; m_interpolated = value; } /** *

True if the result is interpolated from other known places.

*

False if the Place is a known place.

Not returned when * the partner does not provide the information.

For example, returns * False for an address location that is found in the partner data, * but returns True if an address does not exist in the partner data * and its location is calculated by interpolating between other known addresses. *

*/ inline Place& WithInterpolated(bool value) { SetInterpolated(value); return *this;} /** *

The full name and address of the point of interest such as a city, region, or * country. For example, 123 Any Street, Any Town, USA.

*/ inline const Aws::String& GetLabel() const{ return m_label; } /** *

The full name and address of the point of interest such as a city, region, or * country. For example, 123 Any Street, Any Town, USA.

*/ inline bool LabelHasBeenSet() const { return m_labelHasBeenSet; } /** *

The full name and address of the point of interest such as a city, region, or * country. For example, 123 Any Street, Any Town, USA.

*/ inline void SetLabel(const Aws::String& value) { m_labelHasBeenSet = true; m_label = value; } /** *

The full name and address of the point of interest such as a city, region, or * country. For example, 123 Any Street, Any Town, USA.

*/ inline void SetLabel(Aws::String&& value) { m_labelHasBeenSet = true; m_label = std::move(value); } /** *

The full name and address of the point of interest such as a city, region, or * country. For example, 123 Any Street, Any Town, USA.

*/ inline void SetLabel(const char* value) { m_labelHasBeenSet = true; m_label.assign(value); } /** *

The full name and address of the point of interest such as a city, region, or * country. For example, 123 Any Street, Any Town, USA.

*/ inline Place& WithLabel(const Aws::String& value) { SetLabel(value); return *this;} /** *

The full name and address of the point of interest such as a city, region, or * country. For example, 123 Any Street, Any Town, USA.

*/ inline Place& WithLabel(Aws::String&& value) { SetLabel(std::move(value)); return *this;} /** *

The full name and address of the point of interest such as a city, region, or * country. For example, 123 Any Street, Any Town, USA.

*/ inline Place& WithLabel(const char* value) { SetLabel(value); return *this;} /** *

A name for a local area, such as a city or town name. For example, * Toronto.

*/ inline const Aws::String& GetMunicipality() const{ return m_municipality; } /** *

A name for a local area, such as a city or town name. For example, * Toronto.

*/ inline bool MunicipalityHasBeenSet() const { return m_municipalityHasBeenSet; } /** *

A name for a local area, such as a city or town name. For example, * Toronto.

*/ inline void SetMunicipality(const Aws::String& value) { m_municipalityHasBeenSet = true; m_municipality = value; } /** *

A name for a local area, such as a city or town name. For example, * Toronto.

*/ inline void SetMunicipality(Aws::String&& value) { m_municipalityHasBeenSet = true; m_municipality = std::move(value); } /** *

A name for a local area, such as a city or town name. For example, * Toronto.

*/ inline void SetMunicipality(const char* value) { m_municipalityHasBeenSet = true; m_municipality.assign(value); } /** *

A name for a local area, such as a city or town name. For example, * Toronto.

*/ inline Place& WithMunicipality(const Aws::String& value) { SetMunicipality(value); return *this;} /** *

A name for a local area, such as a city or town name. For example, * Toronto.

*/ inline Place& WithMunicipality(Aws::String&& value) { SetMunicipality(std::move(value)); return *this;} /** *

A name for a local area, such as a city or town name. For example, * Toronto.

*/ inline Place& WithMunicipality(const char* value) { SetMunicipality(value); return *this;} /** *

The name of a community district. For example, Downtown.

*/ inline const Aws::String& GetNeighborhood() const{ return m_neighborhood; } /** *

The name of a community district. For example, Downtown.

*/ inline bool NeighborhoodHasBeenSet() const { return m_neighborhoodHasBeenSet; } /** *

The name of a community district. For example, Downtown.

*/ inline void SetNeighborhood(const Aws::String& value) { m_neighborhoodHasBeenSet = true; m_neighborhood = value; } /** *

The name of a community district. For example, Downtown.

*/ inline void SetNeighborhood(Aws::String&& value) { m_neighborhoodHasBeenSet = true; m_neighborhood = std::move(value); } /** *

The name of a community district. For example, Downtown.

*/ inline void SetNeighborhood(const char* value) { m_neighborhoodHasBeenSet = true; m_neighborhood.assign(value); } /** *

The name of a community district. For example, Downtown.

*/ inline Place& WithNeighborhood(const Aws::String& value) { SetNeighborhood(value); return *this;} /** *

The name of a community district. For example, Downtown.

*/ inline Place& WithNeighborhood(Aws::String&& value) { SetNeighborhood(std::move(value)); return *this;} /** *

The name of a community district. For example, Downtown.

*/ inline Place& WithNeighborhood(const char* value) { SetNeighborhood(value); return *this;} /** *

A group of numbers and letters in a country-specific format, which * accompanies the address for the purpose of identifying a location.

*/ inline const Aws::String& GetPostalCode() const{ return m_postalCode; } /** *

A group of numbers and letters in a country-specific format, which * accompanies the address for the purpose of identifying a location.

*/ inline bool PostalCodeHasBeenSet() const { return m_postalCodeHasBeenSet; } /** *

A group of numbers and letters in a country-specific format, which * accompanies the address for the purpose of identifying a location.

*/ inline void SetPostalCode(const Aws::String& value) { m_postalCodeHasBeenSet = true; m_postalCode = value; } /** *

A group of numbers and letters in a country-specific format, which * accompanies the address for the purpose of identifying a location.

*/ inline void SetPostalCode(Aws::String&& value) { m_postalCodeHasBeenSet = true; m_postalCode = std::move(value); } /** *

A group of numbers and letters in a country-specific format, which * accompanies the address for the purpose of identifying a location.

*/ inline void SetPostalCode(const char* value) { m_postalCodeHasBeenSet = true; m_postalCode.assign(value); } /** *

A group of numbers and letters in a country-specific format, which * accompanies the address for the purpose of identifying a location.

*/ inline Place& WithPostalCode(const Aws::String& value) { SetPostalCode(value); return *this;} /** *

A group of numbers and letters in a country-specific format, which * accompanies the address for the purpose of identifying a location.

*/ inline Place& WithPostalCode(Aws::String&& value) { SetPostalCode(std::move(value)); return *this;} /** *

A group of numbers and letters in a country-specific format, which * accompanies the address for the purpose of identifying a location.

*/ inline Place& WithPostalCode(const char* value) { SetPostalCode(value); return *this;} /** *

A name for an area or geographical division, such as a province or state * name. For example, British Columbia.

*/ inline const Aws::String& GetRegion() const{ return m_region; } /** *

A name for an area or geographical division, such as a province or state * name. For example, British Columbia.

*/ inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; } /** *

A name for an area or geographical division, such as a province or state * name. For example, British Columbia.

*/ inline void SetRegion(const Aws::String& value) { m_regionHasBeenSet = true; m_region = value; } /** *

A name for an area or geographical division, such as a province or state * name. For example, British Columbia.

*/ inline void SetRegion(Aws::String&& value) { m_regionHasBeenSet = true; m_region = std::move(value); } /** *

A name for an area or geographical division, such as a province or state * name. For example, British Columbia.

*/ inline void SetRegion(const char* value) { m_regionHasBeenSet = true; m_region.assign(value); } /** *

A name for an area or geographical division, such as a province or state * name. For example, British Columbia.

*/ inline Place& WithRegion(const Aws::String& value) { SetRegion(value); return *this;} /** *

A name for an area or geographical division, such as a province or state * name. For example, British Columbia.

*/ inline Place& WithRegion(Aws::String&& value) { SetRegion(std::move(value)); return *this;} /** *

A name for an area or geographical division, such as a province or state * name. For example, British Columbia.

*/ inline Place& WithRegion(const char* value) { SetRegion(value); return *this;} /** *

The name for a street or a road to identify a location. For example, * Main Street.

*/ inline const Aws::String& GetStreet() const{ return m_street; } /** *

The name for a street or a road to identify a location. For example, * Main Street.

*/ inline bool StreetHasBeenSet() const { return m_streetHasBeenSet; } /** *

The name for a street or a road to identify a location. For example, * Main Street.

*/ inline void SetStreet(const Aws::String& value) { m_streetHasBeenSet = true; m_street = value; } /** *

The name for a street or a road to identify a location. For example, * Main Street.

*/ inline void SetStreet(Aws::String&& value) { m_streetHasBeenSet = true; m_street = std::move(value); } /** *

The name for a street or a road to identify a location. For example, * Main Street.

*/ inline void SetStreet(const char* value) { m_streetHasBeenSet = true; m_street.assign(value); } /** *

The name for a street or a road to identify a location. For example, * Main Street.

*/ inline Place& WithStreet(const Aws::String& value) { SetStreet(value); return *this;} /** *

The name for a street or a road to identify a location. For example, * Main Street.

*/ inline Place& WithStreet(Aws::String&& value) { SetStreet(std::move(value)); return *this;} /** *

The name for a street or a road to identify a location. For example, * Main Street.

*/ inline Place& WithStreet(const char* value) { SetStreet(value); return *this;} /** *

A county, or an area that's part of a larger region. For example, Metro * Vancouver.

*/ inline const Aws::String& GetSubRegion() const{ return m_subRegion; } /** *

A county, or an area that's part of a larger region. For example, Metro * Vancouver.

*/ inline bool SubRegionHasBeenSet() const { return m_subRegionHasBeenSet; } /** *

A county, or an area that's part of a larger region. For example, Metro * Vancouver.

*/ inline void SetSubRegion(const Aws::String& value) { m_subRegionHasBeenSet = true; m_subRegion = value; } /** *

A county, or an area that's part of a larger region. For example, Metro * Vancouver.

*/ inline void SetSubRegion(Aws::String&& value) { m_subRegionHasBeenSet = true; m_subRegion = std::move(value); } /** *

A county, or an area that's part of a larger region. For example, Metro * Vancouver.

*/ inline void SetSubRegion(const char* value) { m_subRegionHasBeenSet = true; m_subRegion.assign(value); } /** *

A county, or an area that's part of a larger region. For example, Metro * Vancouver.

*/ inline Place& WithSubRegion(const Aws::String& value) { SetSubRegion(value); return *this;} /** *

A county, or an area that's part of a larger region. For example, Metro * Vancouver.

*/ inline Place& WithSubRegion(Aws::String&& value) { SetSubRegion(std::move(value)); return *this;} /** *

A county, or an area that's part of a larger region. For example, Metro * Vancouver.

*/ inline Place& WithSubRegion(const char* value) { SetSubRegion(value); return *this;} /** *

Categories from the data provider that describe the Place that are not mapped * to any Amazon Location categories.

*/ inline const Aws::Vector& GetSupplementalCategories() const{ return m_supplementalCategories; } /** *

Categories from the data provider that describe the Place that are not mapped * to any Amazon Location categories.

*/ inline bool SupplementalCategoriesHasBeenSet() const { return m_supplementalCategoriesHasBeenSet; } /** *

Categories from the data provider that describe the Place that are not mapped * to any Amazon Location categories.

*/ inline void SetSupplementalCategories(const Aws::Vector& value) { m_supplementalCategoriesHasBeenSet = true; m_supplementalCategories = value; } /** *

Categories from the data provider that describe the Place that are not mapped * to any Amazon Location categories.

*/ inline void SetSupplementalCategories(Aws::Vector&& value) { m_supplementalCategoriesHasBeenSet = true; m_supplementalCategories = std::move(value); } /** *

Categories from the data provider that describe the Place that are not mapped * to any Amazon Location categories.

*/ inline Place& WithSupplementalCategories(const Aws::Vector& value) { SetSupplementalCategories(value); return *this;} /** *

Categories from the data provider that describe the Place that are not mapped * to any Amazon Location categories.

*/ inline Place& WithSupplementalCategories(Aws::Vector&& value) { SetSupplementalCategories(std::move(value)); return *this;} /** *

Categories from the data provider that describe the Place that are not mapped * to any Amazon Location categories.

*/ inline Place& AddSupplementalCategories(const Aws::String& value) { m_supplementalCategoriesHasBeenSet = true; m_supplementalCategories.push_back(value); return *this; } /** *

Categories from the data provider that describe the Place that are not mapped * to any Amazon Location categories.

*/ inline Place& AddSupplementalCategories(Aws::String&& value) { m_supplementalCategoriesHasBeenSet = true; m_supplementalCategories.push_back(std::move(value)); return *this; } /** *

Categories from the data provider that describe the Place that are not mapped * to any Amazon Location categories.

*/ inline Place& AddSupplementalCategories(const char* value) { m_supplementalCategoriesHasBeenSet = true; m_supplementalCategories.push_back(value); return *this; } /** *

The time zone in which the Place is located. Returned only when * using HERE or Grab as the selected partner.

*/ inline const TimeZone& GetTimeZone() const{ return m_timeZone; } /** *

The time zone in which the Place is located. Returned only when * using HERE or Grab as the selected partner.

*/ inline bool TimeZoneHasBeenSet() const { return m_timeZoneHasBeenSet; } /** *

The time zone in which the Place is located. Returned only when * using HERE or Grab as the selected partner.

*/ inline void SetTimeZone(const TimeZone& value) { m_timeZoneHasBeenSet = true; m_timeZone = value; } /** *

The time zone in which the Place is located. Returned only when * using HERE or Grab as the selected partner.

*/ inline void SetTimeZone(TimeZone&& value) { m_timeZoneHasBeenSet = true; m_timeZone = std::move(value); } /** *

The time zone in which the Place is located. Returned only when * using HERE or Grab as the selected partner.

*/ inline Place& WithTimeZone(const TimeZone& value) { SetTimeZone(value); return *this;} /** *

The time zone in which the Place is located. Returned only when * using HERE or Grab as the selected partner.

*/ inline Place& WithTimeZone(TimeZone&& value) { SetTimeZone(std::move(value)); return *this;} /** *

For addresses with multiple units, the unit identifier. Can include numbers * and letters, for example 3B or Unit 123.

*

Returned only for a place index that uses Esri or Grab as a data provider. Is * not returned for SearchPlaceIndexForPosition.

*/ inline const Aws::String& GetUnitNumber() const{ return m_unitNumber; } /** *

For addresses with multiple units, the unit identifier. Can include numbers * and letters, for example 3B or Unit 123.

*

Returned only for a place index that uses Esri or Grab as a data provider. Is * not returned for SearchPlaceIndexForPosition.

*/ inline bool UnitNumberHasBeenSet() const { return m_unitNumberHasBeenSet; } /** *

For addresses with multiple units, the unit identifier. Can include numbers * and letters, for example 3B or Unit 123.

*

Returned only for a place index that uses Esri or Grab as a data provider. Is * not returned for SearchPlaceIndexForPosition.

*/ inline void SetUnitNumber(const Aws::String& value) { m_unitNumberHasBeenSet = true; m_unitNumber = value; } /** *

For addresses with multiple units, the unit identifier. Can include numbers * and letters, for example 3B or Unit 123.

*

Returned only for a place index that uses Esri or Grab as a data provider. Is * not returned for SearchPlaceIndexForPosition.

*/ inline void SetUnitNumber(Aws::String&& value) { m_unitNumberHasBeenSet = true; m_unitNumber = std::move(value); } /** *

For addresses with multiple units, the unit identifier. Can include numbers * and letters, for example 3B or Unit 123.

*

Returned only for a place index that uses Esri or Grab as a data provider. Is * not returned for SearchPlaceIndexForPosition.

*/ inline void SetUnitNumber(const char* value) { m_unitNumberHasBeenSet = true; m_unitNumber.assign(value); } /** *

For addresses with multiple units, the unit identifier. Can include numbers * and letters, for example 3B or Unit 123.

*

Returned only for a place index that uses Esri or Grab as a data provider. Is * not returned for SearchPlaceIndexForPosition.

*/ inline Place& WithUnitNumber(const Aws::String& value) { SetUnitNumber(value); return *this;} /** *

For addresses with multiple units, the unit identifier. Can include numbers * and letters, for example 3B or Unit 123.

*

Returned only for a place index that uses Esri or Grab as a data provider. Is * not returned for SearchPlaceIndexForPosition.

*/ inline Place& WithUnitNumber(Aws::String&& value) { SetUnitNumber(std::move(value)); return *this;} /** *

For addresses with multiple units, the unit identifier. Can include numbers * and letters, for example 3B or Unit 123.

*

Returned only for a place index that uses Esri or Grab as a data provider. Is * not returned for SearchPlaceIndexForPosition.

*/ inline Place& WithUnitNumber(const char* value) { SetUnitNumber(value); return *this;} /** *

For addresses with a UnitNumber, the type of unit. For example, * Apartment.

Returned only for a place index that uses * Esri as a data provider.

*/ inline const Aws::String& GetUnitType() const{ return m_unitType; } /** *

For addresses with a UnitNumber, the type of unit. For example, * Apartment.

Returned only for a place index that uses * Esri as a data provider.

*/ inline bool UnitTypeHasBeenSet() const { return m_unitTypeHasBeenSet; } /** *

For addresses with a UnitNumber, the type of unit. For example, * Apartment.

Returned only for a place index that uses * Esri as a data provider.

*/ inline void SetUnitType(const Aws::String& value) { m_unitTypeHasBeenSet = true; m_unitType = value; } /** *

For addresses with a UnitNumber, the type of unit. For example, * Apartment.

Returned only for a place index that uses * Esri as a data provider.

*/ inline void SetUnitType(Aws::String&& value) { m_unitTypeHasBeenSet = true; m_unitType = std::move(value); } /** *

For addresses with a UnitNumber, the type of unit. For example, * Apartment.

Returned only for a place index that uses * Esri as a data provider.

*/ inline void SetUnitType(const char* value) { m_unitTypeHasBeenSet = true; m_unitType.assign(value); } /** *

For addresses with a UnitNumber, the type of unit. For example, * Apartment.

Returned only for a place index that uses * Esri as a data provider.

*/ inline Place& WithUnitType(const Aws::String& value) { SetUnitType(value); return *this;} /** *

For addresses with a UnitNumber, the type of unit. For example, * Apartment.

Returned only for a place index that uses * Esri as a data provider.

*/ inline Place& WithUnitType(Aws::String&& value) { SetUnitType(std::move(value)); return *this;} /** *

For addresses with a UnitNumber, the type of unit. For example, * Apartment.

Returned only for a place index that uses * Esri as a data provider.

*/ inline Place& WithUnitType(const char* value) { SetUnitType(value); return *this;} private: Aws::String m_addressNumber; bool m_addressNumberHasBeenSet = false; Aws::Vector m_categories; bool m_categoriesHasBeenSet = false; Aws::String m_country; bool m_countryHasBeenSet = false; PlaceGeometry m_geometry; bool m_geometryHasBeenSet = false; bool m_interpolated; bool m_interpolatedHasBeenSet = false; Aws::String m_label; bool m_labelHasBeenSet = false; Aws::String m_municipality; bool m_municipalityHasBeenSet = false; Aws::String m_neighborhood; bool m_neighborhoodHasBeenSet = false; Aws::String m_postalCode; bool m_postalCodeHasBeenSet = false; Aws::String m_region; bool m_regionHasBeenSet = false; Aws::String m_street; bool m_streetHasBeenSet = false; Aws::String m_subRegion; bool m_subRegionHasBeenSet = false; Aws::Vector m_supplementalCategories; bool m_supplementalCategoriesHasBeenSet = false; TimeZone m_timeZone; bool m_timeZoneHasBeenSet = false; Aws::String m_unitNumber; bool m_unitNumberHasBeenSet = false; Aws::String m_unitType; bool m_unitTypeHasBeenSet = false; }; } // namespace Model } // namespace LocationService } // namespace Aws