/*
* 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 geofence geometry details.
///
public partial class BatchPutGeofenceRequestEntry
{
private string _geofenceId;
private Dictionary _geofenceProperties = new Dictionary();
private GeofenceGeometry _geometry;
///
/// Gets and sets the property GeofenceId.
///
/// The identifier for the geofence to be stored in a given geofence collection.
///
///
[AWSProperty(Required=true, Min=1, Max=100)]
public string GeofenceId
{
get { return this._geofenceId; }
set { this._geofenceId = value; }
}
// Check to see if GeofenceId property is set
internal bool IsSetGeofenceId()
{
return this._geofenceId != null;
}
///
/// Gets and sets the property GeofenceProperties.
///
/// Associates one of more properties with the geofence. A property is a key-value pair
/// stored with the geofence and added to any geofence event triggered with that geofence.
///
///
///
/// Format: "key" : "value"
///
///
[AWSProperty(Sensitive=true, Min=0, Max=3)]
public Dictionary GeofenceProperties
{
get { return this._geofenceProperties; }
set { this._geofenceProperties = value; }
}
// Check to see if GeofenceProperties property is set
internal bool IsSetGeofenceProperties()
{
return this._geofenceProperties != null && this._geofenceProperties.Count > 0;
}
///
/// Gets and sets the property Geometry.
///
/// Contains the details of the position of the geofence. Can be either a polygon or a
/// circle. Including both will return a validation error.
///
///
///
/// Each
/// geofence polygon can have a maximum of 1,000 vertices.
///
///
///
[AWSProperty(Required=true)]
public GeofenceGeometry Geometry
{
get { return this._geometry; }
set { this._geometry = value; }
}
// Check to see if Geometry property is set
internal bool IsSetGeometry()
{
return this._geometry != null;
}
}
}