/*
* 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 autoscaling-2011-01-01.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.AutoScaling.Model
{
///
/// Container for the parameters to the GetPredictiveScalingForecast operation.
/// Retrieves the forecast data for a predictive scaling policy.
///
///
///
/// Load forecasts are predictions of the hourly load values using historical load data
/// from CloudWatch and an analysis of historical trends. Capacity forecasts are represented
/// as predicted values for the minimum capacity that is needed on an hourly basis, based
/// on the hourly load forecast.
///
///
///
/// A minimum of 24 hours of data is required to create the initial forecasts. However,
/// having a full 14 days of historical data results in more accurate forecasts.
///
///
///
/// For more information, see Predictive
/// scaling for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
///
///
public partial class GetPredictiveScalingForecastRequest : AmazonAutoScalingRequest
{
private string _autoScalingGroupName;
private DateTime? _endTime;
private string _policyName;
private DateTime? _startTime;
///
/// Gets and sets the property AutoScalingGroupName.
///
/// The name of the Auto Scaling group.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string AutoScalingGroupName
{
get { return this._autoScalingGroupName; }
set { this._autoScalingGroupName = value; }
}
// Check to see if AutoScalingGroupName property is set
internal bool IsSetAutoScalingGroupName()
{
return this._autoScalingGroupName != null;
}
///
/// Gets and sets the property EndTime.
///
/// The exclusive end time of the time range for the forecast data to get. The maximum
/// time duration between the start and end time is 30 days.
///
///
///
/// Although this parameter can accept a date and time that is more than two days in the
/// future, the availability of forecast data has limits. Amazon EC2 Auto Scaling only
/// issues forecasts for periods of two days in advance.
///
///
[AWSProperty(Required=true)]
public DateTime EndTime
{
get { return this._endTime.GetValueOrDefault(); }
set { this._endTime = value; }
}
// Check to see if EndTime property is set
internal bool IsSetEndTime()
{
return this._endTime.HasValue;
}
///
/// Gets and sets the property PolicyName.
///
/// The name of the policy.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string PolicyName
{
get { return this._policyName; }
set { this._policyName = value; }
}
// Check to see if PolicyName property is set
internal bool IsSetPolicyName()
{
return this._policyName != null;
}
///
/// Gets and sets the property StartTime.
///
/// The inclusive start time of the time range for the forecast data to get. At most,
/// the date and time can be one year before the current date and time.
///
///
[AWSProperty(Required=true)]
public DateTime StartTime
{
get { return this._startTime.GetValueOrDefault(); }
set { this._startTime = value; }
}
// Check to see if StartTime property is set
internal bool IsSetStartTime()
{
return this._startTime.HasValue;
}
}
}