/* * 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 ec2-2016-11-15.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.EC2.Model { /// /// Container for the parameters to the DescribeSpotPriceHistory operation. /// Describes the Spot price history. For more information, see Spot /// Instance pricing history in the Amazon EC2 User Guide for Linux Instances. /// /// /// /// When you specify a start and end time, the operation returns the prices of the instance /// types within that time range. It also returns the last price change before the start /// time, which is the effective price as of the start time. /// /// public partial class DescribeSpotPriceHistoryRequest : AmazonEC2Request { private string _availabilityZone; private DateTime? _endTimeUtc; private List _filters = new List(); private List _instanceTypes = new List(); private int? _maxResults; private string _nextToken; private List _productDescriptions = new List(); private DateTime? _startTimeUtc; /// /// Gets and sets the property AvailabilityZone. /// /// Filters the results by the specified Availability Zone. /// /// public string AvailabilityZone { get { return this._availabilityZone; } set { this._availabilityZone = value; } } // Check to see if AvailabilityZone property is set internal bool IsSetAvailabilityZone() { return this._availabilityZone != null; } /// /// Gets and sets the property EndTimeUtc. /// /// The date and time, up to the current date, from which to stop retrieving the price /// history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). /// /// public DateTime EndTimeUtc { get { return this._endTimeUtc.GetValueOrDefault(); } set { this._endTime = this._endTimeUtc = value; } } // Check to see if EndTimeUtc property is set internal bool IsSetEndTimeUtc() { return this._endTimeUtc.HasValue; } /// /// Gets and sets the property Filters. /// /// The filters. /// ///
  • /// /// availability-zone - The Availability Zone for which prices should be /// returned. /// ///
  • /// /// instance-type - The type of instance (for example, m3.medium). /// ///
  • /// /// product-description - The product description for the Spot price (Linux/UNIX /// | Red Hat Enterprise Linux | SUSE Linux | Windows /// | Linux/UNIX (Amazon VPC) | Red Hat Enterprise Linux (Amazon VPC) /// | SUSE Linux (Amazon VPC) | Windows (Amazon VPC)). /// ///
  • /// /// spot-price - The Spot price. The value must match exactly (or use wildcards; /// greater than or less than comparison is not supported). /// ///
  • /// /// timestamp - The time stamp of the Spot price history, in UTC format /// (for example, YYYY-MM-DDTHH:MM:SSZ). You /// can use wildcards (* and ?). Greater than or less than comparison is not supported. /// ///
///
public List Filters { get { return this._filters; } set { this._filters = value; } } // Check to see if Filters property is set internal bool IsSetFilters() { return this._filters != null && this._filters.Count > 0; } /// /// Gets and sets the property InstanceTypes. /// /// Filters the results by the specified instance types. /// /// public List InstanceTypes { get { return this._instanceTypes; } set { this._instanceTypes = value; } } // Check to see if InstanceTypes property is set internal bool IsSetInstanceTypes() { return this._instanceTypes != null && this._instanceTypes.Count > 0; } /// /// Gets and sets the property MaxResults. /// /// The maximum number of items to return for this request. To get the next page of items, /// make another request with the token returned in the output. For more information, /// see Pagination. /// /// 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 token returned from a previous paginated request. Pagination continues from the /// end of the items returned by the previous request. /// /// 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 ProductDescriptions. /// /// Filters the results by the specified basic product descriptions. /// /// public List ProductDescriptions { get { return this._productDescriptions; } set { this._productDescriptions = value; } } // Check to see if ProductDescriptions property is set internal bool IsSetProductDescriptions() { return this._productDescriptions != null && this._productDescriptions.Count > 0; } /// /// Gets and sets the property StartTimeUtc. /// /// The date and time, up to the past 90 days, from which to start retrieving the price /// history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). /// /// public DateTime StartTimeUtc { get { return this._startTimeUtc.GetValueOrDefault(); } set { this._startTime = this._startTimeUtc = value; } } // Check to see if StartTimeUtc property is set internal bool IsSetStartTimeUtc() { return this._startTimeUtc.HasValue; } #region Backwards compatible properties private DateTime? _endTime; private DateTime? _startTime; /// /// Gets and sets the property EndTimeUtc. /// /// This property is deprecated. Setting this property results in non-UTC DateTimes not /// being marshalled correctly. Use EndTimeUtc instead. Setting either EndTime or EndTimeUtc /// results in both EndTime and EndTimeUtc being assigned, the latest assignment to either /// one of the two property is reflected in the value of both. EndTime is provided for /// backwards compatibility only and assigning a non-Utc DateTime to it results in the /// wrong timestamp being passed to the service. /// /// /// /// The date and time, up to the current date, from which to stop retrieving the price /// history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). /// /// [Obsolete("Setting this property results in non-UTC DateTimes not being marshalled correctly. " + "Use EndTimeUtc instead. Setting either EndTime or EndTimeUtc results in both EndTime and " + "EndTimeUtc being assigned, the latest assignment to either one of the two property is " + "reflected in the value of both. EndTime is provided for backwards compatibility only and " + "assigning a non-Utc DateTime to it results in the wrong timestamp being passed to the service.", false)] public DateTime EndTime { get { return this._endTime.GetValueOrDefault(); } set { this._endTime = value; this._endTimeUtc = new DateTime(value.Ticks, DateTimeKind.Utc); } } /// /// Gets and sets the property StartTimeUtc. /// /// This property is deprecated. Setting this property results in non-UTC DateTimes not /// being marshalled correctly. Use StartTimeUtc instead. Setting either StartTime or /// StartTimeUtc results in both StartTime and StartTimeUtc being assigned, the latest /// assignment to either one of the two property is reflected in the value of both. StartTime /// is provided for backwards compatibility only and assigning a non-Utc DateTime to it /// results in the wrong timestamp being passed to the service. /// /// /// /// The date and time, up to the past 90 days, from which to start retrieving the price /// history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). /// /// [Obsolete("Setting this property results in non-UTC DateTimes not being marshalled correctly. " + "Use StartTimeUtc instead. Setting either StartTime or StartTimeUtc results in both StartTime and " + "StartTimeUtc being assigned, the latest assignment to either one of the two property is " + "reflected in the value of both. StartTime is provided for backwards compatibility only and " + "assigning a non-Utc DateTime to it results in the wrong timestamp being passed to the service.", false)] public DateTime StartTime { get { return this._startTime.GetValueOrDefault(); } set { this._startTime = value; this._startTimeUtc = new DateTime(value.Ticks, DateTimeKind.Utc); } } #endregion } }