/*
* 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
{
///
/// This is the response object from the GetGeofence operation.
///
public partial class GetGeofenceResponse : AmazonWebServiceResponse
{
private DateTime? _createTime;
private string _geofenceId;
private Dictionary _geofenceProperties = new Dictionary();
private GeofenceGeometry _geometry;
private string _status;
private DateTime? _updateTime;
///
/// Gets and sets the property CreateTime.
///
/// The timestamp for when the geofence collection was created in ISO
/// 8601 format: YYYY-MM-DDThh:mm:ss.sssZ
///
///
[AWSProperty(Required=true)]
public DateTime CreateTime
{
get { return this._createTime.GetValueOrDefault(); }
set { this._createTime = value; }
}
// Check to see if CreateTime property is set
internal bool IsSetCreateTime()
{
return this._createTime.HasValue;
}
///
/// Gets and sets the property GeofenceId.
///
/// The geofence identifier.
///
///
[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.
///
/// User defined properties of 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 geofence geometry details describing a polygon or a circle.
///
///
[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;
}
///
/// Gets and sets the property Status.
///
/// Identifies the state of the geofence. A geofence will hold one of the following states:
///
/// -
///
///
ACTIVE
— The geofence has been indexed by the system.
///
/// -
///
///
PENDING
— The geofence is being processed by the system.
///
/// -
///
///
FAILED
— The geofence failed to be indexed by the system.
///
/// -
///
///
DELETED
— The geofence has been deleted from the system index.
///
/// -
///
///
DELETING
— The geofence is being deleted from the system index.
///
///
///
[AWSProperty(Required=true)]
public string Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property UpdateTime.
///
/// The timestamp for when the geofence collection was last updated in ISO
/// 8601 format: YYYY-MM-DDThh:mm:ss.sssZ
///
///
[AWSProperty(Required=true)]
public DateTime UpdateTime
{
get { return this._updateTime.GetValueOrDefault(); }
set { this._updateTime = value; }
}
// Check to see if UpdateTime property is set
internal bool IsSetUpdateTime()
{
return this._updateTime.HasValue;
}
}
}