/*
* 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
{
///
/// Describes a scheduled scaling action.
///
public partial class ScheduledUpdateGroupAction
{
private string _autoScalingGroupName;
private int? _desiredCapacity;
private DateTime? _endTime;
private int? _maxSize;
private int? _minSize;
private string _recurrence;
private string _scheduledActionARN;
private string _scheduledActionName;
private DateTime? _startTime;
private DateTime? _time;
private string _timeZone;
///
/// Gets and sets the property AutoScalingGroupName.
///
/// The name of the Auto Scaling group.
///
///
[AWSProperty(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 DesiredCapacity.
///
/// The desired capacity is the initial capacity of the Auto Scaling group after the scheduled
/// action runs and the capacity it attempts to maintain.
///
///
public int DesiredCapacity
{
get { return this._desiredCapacity.GetValueOrDefault(); }
set { this._desiredCapacity = value; }
}
// Check to see if DesiredCapacity property is set
internal bool IsSetDesiredCapacity()
{
return this._desiredCapacity.HasValue;
}
///
/// Gets and sets the property EndTime.
///
/// The date and time in UTC for the recurring schedule to end. For example, "2019-06-01T00:00:00Z"
.
///
///
///
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 MaxSize.
///
/// The maximum size of the Auto Scaling group.
///
///
public int MaxSize
{
get { return this._maxSize.GetValueOrDefault(); }
set { this._maxSize = value; }
}
// Check to see if MaxSize property is set
internal bool IsSetMaxSize()
{
return this._maxSize.HasValue;
}
///
/// Gets and sets the property MinSize.
///
/// The minimum size of the Auto Scaling group.
///
///
public int MinSize
{
get { return this._minSize.GetValueOrDefault(); }
set { this._minSize = value; }
}
// Check to see if MinSize property is set
internal bool IsSetMinSize()
{
return this._minSize.HasValue;
}
///
/// Gets and sets the property Recurrence.
///
/// The recurring schedule for the action, in Unix cron syntax format.
///
///
///
/// When StartTime
and EndTime
are specified with Recurrence
,
/// they form the boundaries of when the recurring action starts and stops.
///
///
[AWSProperty(Min=1, Max=255)]
public string Recurrence
{
get { return this._recurrence; }
set { this._recurrence = value; }
}
// Check to see if Recurrence property is set
internal bool IsSetRecurrence()
{
return this._recurrence != null;
}
///
/// Gets and sets the property ScheduledActionARN.
///
/// The Amazon Resource Name (ARN) of the scheduled action.
///
///
[AWSProperty(Min=1, Max=1600)]
public string ScheduledActionARN
{
get { return this._scheduledActionARN; }
set { this._scheduledActionARN = value; }
}
// Check to see if ScheduledActionARN property is set
internal bool IsSetScheduledActionARN()
{
return this._scheduledActionARN != null;
}
///
/// Gets and sets the property ScheduledActionName.
///
/// The name of the scheduled action.
///
///
[AWSProperty(Min=1, Max=255)]
public string ScheduledActionName
{
get { return this._scheduledActionName; }
set { this._scheduledActionName = value; }
}
// Check to see if ScheduledActionName property is set
internal bool IsSetScheduledActionName()
{
return this._scheduledActionName != null;
}
///
/// Gets and sets the property StartTime.
///
/// The date and time in UTC for this action to start. For example, "2019-06-01T00:00:00Z"
.
///
///
///
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;
}
///
/// Gets and sets the property Time.
///
/// This property is no longer used.
///
///
public DateTime Time
{
get { return this._time.GetValueOrDefault(); }
set { this._time = value; }
}
// Check to see if Time property is set
internal bool IsSetTime()
{
return this._time.HasValue;
}
///
/// Gets and sets the property TimeZone.
///
/// The time zone for the cron expression.
///
///
[AWSProperty(Min=1, Max=255)]
public string TimeZone
{
get { return this._timeZone; }
set { this._timeZone = value; }
}
// Check to see if TimeZone property is set
internal bool IsSetTimeZone()
{
return this._timeZone != null;
}
}
}