/*
* 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
{
///
/// Container for the parameters to the GetDevicePositionHistory operation.
/// Retrieves the device position history from a tracker resource within a specified range
/// of time.
///
///
///
/// Device positions are deleted after 30 days.
///
///
///
public partial class GetDevicePositionHistoryRequest : AmazonLocationServiceRequest
{
private string _deviceId;
private DateTime? _endTimeExclusive;
private int? _maxResults;
private string _nextToken;
private DateTime? _startTimeInclusive;
private string _trackerName;
///
/// Gets and sets the property DeviceId.
///
/// The device whose position history you want to retrieve.
///
///
[AWSProperty(Required=true, Min=1, Max=100)]
public string DeviceId
{
get { return this._deviceId; }
set { this._deviceId = value; }
}
// Check to see if DeviceId property is set
internal bool IsSetDeviceId()
{
return this._deviceId != null;
}
///
/// Gets and sets the property EndTimeExclusive.
///
/// Specify the end time for the position history in
/// ISO 8601 format: YYYY-MM-DDThh:mm:ss.sssZ
. By default, the value
/// will be the time that the request is made.
///
///
///
/// Requirement:
///
/// -
///
/// The time specified for
EndTimeExclusive
must be after the time for StartTimeInclusive
.
///
///
///
public DateTime EndTimeExclusive
{
get { return this._endTimeExclusive.GetValueOrDefault(); }
set { this._endTimeExclusive = value; }
}
// Check to see if EndTimeExclusive property is set
internal bool IsSetEndTimeExclusive()
{
return this._endTimeExclusive.HasValue;
}
///
/// Gets and sets the property MaxResults.
///
/// An optional limit for the number of device positions returned in a single call.
///
///
///
/// Default value: 100
///
///
[AWSProperty(Min=1, Max=100)]
public int MaxResults
{
get { return this._maxResults.GetValueOrDefault(); }
set { this._maxResults = value; }
}
// Check to see if MaxResults property is set
internal bool IsSetMaxResults()
{
return this._maxResults.HasValue;
}
///
/// Gets and sets the property NextToken.
///
/// The pagination token specifying which page of results to return in the response. If
/// no token is provided, the default page is the first page.
///
///
///
/// Default value: null
///
///
[AWSProperty(Min=1, Max=2000)]
public string NextToken
{
get { return this._nextToken; }
set { this._nextToken = value; }
}
// Check to see if NextToken property is set
internal bool IsSetNextToken()
{
return this._nextToken != null;
}
///
/// Gets and sets the property StartTimeInclusive.
///
/// Specify the start time for the position history in
/// ISO 8601 format: YYYY-MM-DDThh:mm:ss.sssZ
. By default, the value
/// will be 24 hours prior to the time that the request is made.
///
///
///
/// Requirement:
///
/// -
///
/// The time specified for
StartTimeInclusive
must be before EndTimeExclusive
.
///
///
///
public DateTime StartTimeInclusive
{
get { return this._startTimeInclusive.GetValueOrDefault(); }
set { this._startTimeInclusive = value; }
}
// Check to see if StartTimeInclusive property is set
internal bool IsSetStartTimeInclusive()
{
return this._startTimeInclusive.HasValue;
}
///
/// Gets and sets the property TrackerName.
///
/// The tracker resource receiving the request for the device position history.
///
///
[AWSProperty(Required=true, Min=1, Max=100)]
public string TrackerName
{
get { return this._trackerName; }
set { this._trackerName = value; }
}
// Check to see if TrackerName property is set
internal bool IsSetTrackerName()
{
return this._trackerName != null;
}
}
}