/* * 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 an instance refresh for an Auto Scaling group. /// public partial class InstanceRefresh { private string _autoScalingGroupName; private DesiredConfiguration _desiredConfiguration; private DateTime? _endTime; private string _instanceRefreshId; private int? _instancesToUpdate; private int? _percentageComplete; private RefreshPreferences _preferences; private InstanceRefreshProgressDetails _progressDetails; private RollbackDetails _rollbackDetails; private DateTime? _startTime; private InstanceRefreshStatus _status; private string _statusReason; /// /// 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 DesiredConfiguration. /// /// Describes the desired configuration for the instance refresh. /// /// public DesiredConfiguration DesiredConfiguration { get { return this._desiredConfiguration; } set { this._desiredConfiguration = value; } } // Check to see if DesiredConfiguration property is set internal bool IsSetDesiredConfiguration() { return this._desiredConfiguration != null; } /// /// Gets and sets the property EndTime. /// /// The date and time at which the instance refresh ended. /// /// 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 InstanceRefreshId. /// /// The instance refresh ID. /// /// [AWSProperty(Min=1, Max=255)] public string InstanceRefreshId { get { return this._instanceRefreshId; } set { this._instanceRefreshId = value; } } // Check to see if InstanceRefreshId property is set internal bool IsSetInstanceRefreshId() { return this._instanceRefreshId != null; } /// /// Gets and sets the property InstancesToUpdate. /// /// The number of instances remaining to update before the instance refresh is complete. /// /// /// /// If you roll back the instance refresh, InstancesToUpdate shows you the /// number of instances that were not yet updated by the instance refresh. Therefore, /// these instances don't need to be replaced as part of the rollback. /// /// /// [AWSProperty(Min=0)] public int InstancesToUpdate { get { return this._instancesToUpdate.GetValueOrDefault(); } set { this._instancesToUpdate = value; } } // Check to see if InstancesToUpdate property is set internal bool IsSetInstancesToUpdate() { return this._instancesToUpdate.HasValue; } /// /// Gets and sets the property PercentageComplete. /// /// The percentage of the instance refresh that is complete. For each instance replacement, /// Amazon EC2 Auto Scaling tracks the instance's health status and warm-up time. When /// the instance's health status changes to healthy and the specified warm-up time passes, /// the instance is considered updated and is added to the percentage complete. /// /// /// /// PercentageComplete does not include instances that are replaced during /// a rollback. This value gradually goes back down to zero during a rollback. /// /// /// [AWSProperty(Min=0, Max=100)] public int PercentageComplete { get { return this._percentageComplete.GetValueOrDefault(); } set { this._percentageComplete = value; } } // Check to see if PercentageComplete property is set internal bool IsSetPercentageComplete() { return this._percentageComplete.HasValue; } /// /// Gets and sets the property Preferences. /// /// The preferences for an instance refresh. /// /// public RefreshPreferences Preferences { get { return this._preferences; } set { this._preferences = value; } } // Check to see if Preferences property is set internal bool IsSetPreferences() { return this._preferences != null; } /// /// Gets and sets the property ProgressDetails. /// /// Additional progress details for an Auto Scaling group that has a warm pool. /// /// public InstanceRefreshProgressDetails ProgressDetails { get { return this._progressDetails; } set { this._progressDetails = value; } } // Check to see if ProgressDetails property is set internal bool IsSetProgressDetails() { return this._progressDetails != null; } /// /// Gets and sets the property RollbackDetails. /// /// The rollback details. /// /// public RollbackDetails RollbackDetails { get { return this._rollbackDetails; } set { this._rollbackDetails = value; } } // Check to see if RollbackDetails property is set internal bool IsSetRollbackDetails() { return this._rollbackDetails != null; } /// /// Gets and sets the property StartTime. /// /// The date and time at which the instance refresh began. /// /// 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 Status. /// /// The current status for the instance refresh operation: /// /// /// public InstanceRefreshStatus 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 StatusReason. /// /// The explanation for the specific status assigned to this operation. /// /// [AWSProperty(Min=1, Max=1023)] public string StatusReason { get { return this._statusReason; } set { this._statusReason = value; } } // Check to see if StatusReason property is set internal bool IsSetStatusReason() { return this._statusReason != null; } } }