/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes an instance refresh for an Auto Scaling group. See
* Also:
AWS
* API Reference
The instance refresh ID.
*/ inline const Aws::String& GetInstanceRefreshId() const{ return m_instanceRefreshId; } /** *The instance refresh ID.
*/ inline bool InstanceRefreshIdHasBeenSet() const { return m_instanceRefreshIdHasBeenSet; } /** *The instance refresh ID.
*/ inline void SetInstanceRefreshId(const Aws::String& value) { m_instanceRefreshIdHasBeenSet = true; m_instanceRefreshId = value; } /** *The instance refresh ID.
*/ inline void SetInstanceRefreshId(Aws::String&& value) { m_instanceRefreshIdHasBeenSet = true; m_instanceRefreshId = std::move(value); } /** *The instance refresh ID.
*/ inline void SetInstanceRefreshId(const char* value) { m_instanceRefreshIdHasBeenSet = true; m_instanceRefreshId.assign(value); } /** *The instance refresh ID.
*/ inline InstanceRefresh& WithInstanceRefreshId(const Aws::String& value) { SetInstanceRefreshId(value); return *this;} /** *The instance refresh ID.
*/ inline InstanceRefresh& WithInstanceRefreshId(Aws::String&& value) { SetInstanceRefreshId(std::move(value)); return *this;} /** *The instance refresh ID.
*/ inline InstanceRefresh& WithInstanceRefreshId(const char* value) { SetInstanceRefreshId(value); return *this;} /** *The name of the Auto Scaling group.
*/ inline const Aws::String& GetAutoScalingGroupName() const{ return m_autoScalingGroupName; } /** *The name of the Auto Scaling group.
*/ inline bool AutoScalingGroupNameHasBeenSet() const { return m_autoScalingGroupNameHasBeenSet; } /** *The name of the Auto Scaling group.
*/ inline void SetAutoScalingGroupName(const Aws::String& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; } /** *The name of the Auto Scaling group.
*/ inline void SetAutoScalingGroupName(Aws::String&& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = std::move(value); } /** *The name of the Auto Scaling group.
*/ inline void SetAutoScalingGroupName(const char* value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName.assign(value); } /** *The name of the Auto Scaling group.
*/ inline InstanceRefresh& WithAutoScalingGroupName(const Aws::String& value) { SetAutoScalingGroupName(value); return *this;} /** *The name of the Auto Scaling group.
*/ inline InstanceRefresh& WithAutoScalingGroupName(Aws::String&& value) { SetAutoScalingGroupName(std::move(value)); return *this;} /** *The name of the Auto Scaling group.
*/ inline InstanceRefresh& WithAutoScalingGroupName(const char* value) { SetAutoScalingGroupName(value); return *this;} /** *The current status for the instance refresh operation:
* Pending - The request was created, but the operation has not
* started.
InProgress - The operation is in
* progress.
Successful - The operation completed
* successfully.
Failed - The operation failed to
* complete. You can troubleshoot using the status reason and the scaling
* activities.
Cancelling - An ongoing operation
* is being cancelled. Cancellation does not roll back any replacements that have
* already been completed, but it prevents new replacements from being started.
*
Cancelled - The operation is cancelled.
The current status for the instance refresh operation:
* Pending - The request was created, but the operation has not
* started.
InProgress - The operation is in
* progress.
Successful - The operation completed
* successfully.
Failed - The operation failed to
* complete. You can troubleshoot using the status reason and the scaling
* activities.
Cancelling - An ongoing operation
* is being cancelled. Cancellation does not roll back any replacements that have
* already been completed, but it prevents new replacements from being started.
*
Cancelled - The operation is cancelled.
The current status for the instance refresh operation:
* Pending - The request was created, but the operation has not
* started.
InProgress - The operation is in
* progress.
Successful - The operation completed
* successfully.
Failed - The operation failed to
* complete. You can troubleshoot using the status reason and the scaling
* activities.
Cancelling - An ongoing operation
* is being cancelled. Cancellation does not roll back any replacements that have
* already been completed, but it prevents new replacements from being started.
*
Cancelled - The operation is cancelled.
The current status for the instance refresh operation:
* Pending - The request was created, but the operation has not
* started.
InProgress - The operation is in
* progress.
Successful - The operation completed
* successfully.
Failed - The operation failed to
* complete. You can troubleshoot using the status reason and the scaling
* activities.
Cancelling - An ongoing operation
* is being cancelled. Cancellation does not roll back any replacements that have
* already been completed, but it prevents new replacements from being started.
*
Cancelled - The operation is cancelled.
The current status for the instance refresh operation:
* Pending - The request was created, but the operation has not
* started.
InProgress - The operation is in
* progress.
Successful - The operation completed
* successfully.
Failed - The operation failed to
* complete. You can troubleshoot using the status reason and the scaling
* activities.
Cancelling - An ongoing operation
* is being cancelled. Cancellation does not roll back any replacements that have
* already been completed, but it prevents new replacements from being started.
*
Cancelled - The operation is cancelled.
The current status for the instance refresh operation:
* Pending - The request was created, but the operation has not
* started.
InProgress - The operation is in
* progress.
Successful - The operation completed
* successfully.
Failed - The operation failed to
* complete. You can troubleshoot using the status reason and the scaling
* activities.
Cancelling - An ongoing operation
* is being cancelled. Cancellation does not roll back any replacements that have
* already been completed, but it prevents new replacements from being started.
*
Cancelled - The operation is cancelled.
Provides more details about the current status of the instance refresh.
*/ inline const Aws::String& GetStatusReason() const{ return m_statusReason; } /** *Provides more details about the current status of the instance refresh.
*/ inline bool StatusReasonHasBeenSet() const { return m_statusReasonHasBeenSet; } /** *Provides more details about the current status of the instance refresh.
*/ inline void SetStatusReason(const Aws::String& value) { m_statusReasonHasBeenSet = true; m_statusReason = value; } /** *Provides more details about the current status of the instance refresh.
*/ inline void SetStatusReason(Aws::String&& value) { m_statusReasonHasBeenSet = true; m_statusReason = std::move(value); } /** *Provides more details about the current status of the instance refresh.
*/ inline void SetStatusReason(const char* value) { m_statusReasonHasBeenSet = true; m_statusReason.assign(value); } /** *Provides more details about the current status of the instance refresh.
*/ inline InstanceRefresh& WithStatusReason(const Aws::String& value) { SetStatusReason(value); return *this;} /** *Provides more details about the current status of the instance refresh.
*/ inline InstanceRefresh& WithStatusReason(Aws::String&& value) { SetStatusReason(std::move(value)); return *this;} /** *Provides more details about the current status of the instance refresh.
*/ inline InstanceRefresh& WithStatusReason(const char* value) { SetStatusReason(value); return *this;} /** *The date and time at which the instance refresh began.
*/ inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } /** *The date and time at which the instance refresh began.
*/ inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } /** *The date and time at which the instance refresh began.
*/ inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } /** *The date and time at which the instance refresh began.
*/ inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } /** *The date and time at which the instance refresh began.
*/ inline InstanceRefresh& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} /** *The date and time at which the instance refresh began.
*/ inline InstanceRefresh& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} /** *The date and time at which the instance refresh ended.
*/ inline const Aws::Utils::DateTime& GetEndTime() const{ return m_endTime; } /** *The date and time at which the instance refresh ended.
*/ inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; } /** *The date and time at which the instance refresh ended.
*/ inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTimeHasBeenSet = true; m_endTime = value; } /** *The date and time at which the instance refresh ended.
*/ inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTimeHasBeenSet = true; m_endTime = std::move(value); } /** *The date and time at which the instance refresh ended.
*/ inline InstanceRefresh& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;} /** *The date and time at which the instance refresh ended.
*/ inline InstanceRefresh& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;} /** *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 added to * the percentage complete.
*/ inline int GetPercentageComplete() const{ return m_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 added to * the percentage complete.
*/ inline bool PercentageCompleteHasBeenSet() const { return m_percentageCompleteHasBeenSet; } /** *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 added to * the percentage complete.
*/ inline void SetPercentageComplete(int value) { m_percentageCompleteHasBeenSet = true; m_percentageComplete = value; } /** *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 added to * the percentage complete.
*/ inline InstanceRefresh& WithPercentageComplete(int value) { SetPercentageComplete(value); return *this;} /** *The number of instances remaining to update before the instance refresh is * complete.
*/ inline int GetInstancesToUpdate() const{ return m_instancesToUpdate; } /** *The number of instances remaining to update before the instance refresh is * complete.
*/ inline bool InstancesToUpdateHasBeenSet() const { return m_instancesToUpdateHasBeenSet; } /** *The number of instances remaining to update before the instance refresh is * complete.
*/ inline void SetInstancesToUpdate(int value) { m_instancesToUpdateHasBeenSet = true; m_instancesToUpdate = value; } /** *The number of instances remaining to update before the instance refresh is * complete.
*/ inline InstanceRefresh& WithInstancesToUpdate(int value) { SetInstancesToUpdate(value); return *this;} private: Aws::String m_instanceRefreshId; bool m_instanceRefreshIdHasBeenSet; Aws::String m_autoScalingGroupName; bool m_autoScalingGroupNameHasBeenSet; InstanceRefreshStatus m_status; bool m_statusHasBeenSet; Aws::String m_statusReason; bool m_statusReasonHasBeenSet; Aws::Utils::DateTime m_startTime; bool m_startTimeHasBeenSet; Aws::Utils::DateTime m_endTime; bool m_endTimeHasBeenSet; int m_percentageComplete; bool m_percentageCompleteHasBeenSet; int m_instancesToUpdate; bool m_instancesToUpdateHasBeenSet; }; } // namespace Model } // namespace AutoScaling } // namespace Aws