/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the location-2020-11-19.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.LocationService.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.
///
///
public partial class Place
{
private string _addressNumber;
private List _categories = new List();
private string _country;
private PlaceGeometry _geometry;
private bool? _interpolated;
private string _label;
private string _municipality;
private string _neighborhood;
private string _postalCode;
private string _region;
private string _street;
private string _subRegion;
private List _supplementalCategories = new List();
private TimeZone _timeZone;
private string _unitNumber;
private string _unitType;
///
/// Gets and sets the property AddressNumber.
///
/// The numerical portion of an address, such as a building number.
///
///
public string AddressNumber
{
get { return this._addressNumber; }
set { this._addressNumber = value; }
}
// Check to see if AddressNumber property is set
internal bool IsSetAddressNumber()
{
return this._addressNumber != null;
}
///
/// Gets and sets the property 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.
///
///
[AWSProperty(Min=1, Max=10)]
public List Categories
{
get { return this._categories; }
set { this._categories = value; }
}
// Check to see if Categories property is set
internal bool IsSetCategories()
{
return this._categories != null && this._categories.Count > 0;
}
///
/// Gets and sets the property Country.
///
/// A country/region specified using ISO
/// 3166 3-digit country/region code. For example, CAN
.
///
///
public string Country
{
get { return this._country; }
set { this._country = value; }
}
// Check to see if Country property is set
internal bool IsSetCountry()
{
return this._country != null;
}
///
/// Gets and sets the property Geometry.
///
[AWSProperty(Required=true)]
public PlaceGeometry Geometry
{
get { return this._geometry; }
set { this._geometry = value; }
}
// Check to see if Geometry property is set
internal bool IsSetGeometry()
{
return this._geometry != null;
}
///
/// Gets and sets the property 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.
///
///
///
public bool Interpolated
{
get { return this._interpolated.GetValueOrDefault(); }
set { this._interpolated = value; }
}
// Check to see if Interpolated property is set
internal bool IsSetInterpolated()
{
return this._interpolated.HasValue;
}
///
/// Gets and sets the property 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
.
///
///
public string Label
{
get { return this._label; }
set { this._label = value; }
}
// Check to see if Label property is set
internal bool IsSetLabel()
{
return this._label != null;
}
///
/// Gets and sets the property Municipality.
///
/// A name for a local area, such as a city or town name. For example, Toronto
.
///
///
public string Municipality
{
get { return this._municipality; }
set { this._municipality = value; }
}
// Check to see if Municipality property is set
internal bool IsSetMunicipality()
{
return this._municipality != null;
}
///
/// Gets and sets the property Neighborhood.
///
/// The name of a community district. For example, Downtown
.
///
///
public string Neighborhood
{
get { return this._neighborhood; }
set { this._neighborhood = value; }
}
// Check to see if Neighborhood property is set
internal bool IsSetNeighborhood()
{
return this._neighborhood != null;
}
///
/// Gets and sets the property PostalCode.
///
/// A group of numbers and letters in a country-specific format, which accompanies the
/// address for the purpose of identifying a location.
///
///
public string PostalCode
{
get { return this._postalCode; }
set { this._postalCode = value; }
}
// Check to see if PostalCode property is set
internal bool IsSetPostalCode()
{
return this._postalCode != null;
}
///
/// Gets and sets the property Region.
///
/// A name for an area or geographical division, such as a province or state name. For
/// example, British Columbia
.
///
///
public string Region
{
get { return this._region; }
set { this._region = value; }
}
// Check to see if Region property is set
internal bool IsSetRegion()
{
return this._region != null;
}
///
/// Gets and sets the property Street.
///
/// The name for a street or a road to identify a location. For example, Main Street
.
///
///
public string Street
{
get { return this._street; }
set { this._street = value; }
}
// Check to see if Street property is set
internal bool IsSetStreet()
{
return this._street != null;
}
///
/// Gets and sets the property SubRegion.
///
/// A county, or an area that's part of a larger region. For example, Metro Vancouver
.
///
///
public string SubRegion
{
get { return this._subRegion; }
set { this._subRegion = value; }
}
// Check to see if SubRegion property is set
internal bool IsSetSubRegion()
{
return this._subRegion != null;
}
///
/// Gets and sets the property SupplementalCategories.
///
/// Categories from the data provider that describe the Place that are not mapped to any
/// Amazon Location categories.
///
///
[AWSProperty(Min=1, Max=10)]
public List SupplementalCategories
{
get { return this._supplementalCategories; }
set { this._supplementalCategories = value; }
}
// Check to see if SupplementalCategories property is set
internal bool IsSetSupplementalCategories()
{
return this._supplementalCategories != null && this._supplementalCategories.Count > 0;
}
///
/// Gets and sets the property TimeZone.
///
/// The time zone in which the Place
is located. Returned only when using
/// HERE or Grab as the selected partner.
///
///
public TimeZone TimeZone
{
get { return this._timeZone; }
set { this._timeZone = value; }
}
// Check to see if TimeZone property is set
internal bool IsSetTimeZone()
{
return this._timeZone != null;
}
///
/// Gets and sets the property 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
.
///
///
///
public string UnitNumber
{
get { return this._unitNumber; }
set { this._unitNumber = value; }
}
// Check to see if UnitNumber property is set
internal bool IsSetUnitNumber()
{
return this._unitNumber != null;
}
///
/// Gets and sets the property 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.
///
///
///
public string UnitType
{
get { return this._unitType; }
set { this._unitType = value; }
}
// Check to see if UnitType property is set
internal bool IsSetUnitType()
{
return this._unitType != null;
}
}
}