AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
AutoScalingInstanceDetails.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/autoscaling/model/LaunchTemplateSpecification.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace AutoScaling
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_AUTOSCALING_API AutoScalingInstanceDetails() = default;
37 AWS_AUTOSCALING_API AutoScalingInstanceDetails(const Aws::Utils::Xml::XmlNode& xmlNode);
39
40 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
41 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
42
43
45
48 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
49 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
50 template<typename InstanceIdT = Aws::String>
51 void SetInstanceId(InstanceIdT&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::forward<InstanceIdT>(value); }
52 template<typename InstanceIdT = Aws::String>
53 AutoScalingInstanceDetails& WithInstanceId(InstanceIdT&& value) { SetInstanceId(std::forward<InstanceIdT>(value)); return *this;}
55
57
60 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
61 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
62 template<typename InstanceTypeT = Aws::String>
63 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
64 template<typename InstanceTypeT = Aws::String>
65 AutoScalingInstanceDetails& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
67
69
72 inline const Aws::String& GetAutoScalingGroupName() const { return m_autoScalingGroupName; }
73 inline bool AutoScalingGroupNameHasBeenSet() const { return m_autoScalingGroupNameHasBeenSet; }
74 template<typename AutoScalingGroupNameT = Aws::String>
75 void SetAutoScalingGroupName(AutoScalingGroupNameT&& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = std::forward<AutoScalingGroupNameT>(value); }
76 template<typename AutoScalingGroupNameT = Aws::String>
77 AutoScalingInstanceDetails& WithAutoScalingGroupName(AutoScalingGroupNameT&& value) { SetAutoScalingGroupName(std::forward<AutoScalingGroupNameT>(value)); return *this;}
79
81
84 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
85 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
86 template<typename AvailabilityZoneT = Aws::String>
87 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
88 template<typename AvailabilityZoneT = Aws::String>
89 AutoScalingInstanceDetails& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
91
93
110 inline const Aws::String& GetLifecycleState() const { return m_lifecycleState; }
111 inline bool LifecycleStateHasBeenSet() const { return m_lifecycleStateHasBeenSet; }
112 template<typename LifecycleStateT = Aws::String>
113 void SetLifecycleState(LifecycleStateT&& value) { m_lifecycleStateHasBeenSet = true; m_lifecycleState = std::forward<LifecycleStateT>(value); }
114 template<typename LifecycleStateT = Aws::String>
115 AutoScalingInstanceDetails& WithLifecycleState(LifecycleStateT&& value) { SetLifecycleState(std::forward<LifecycleStateT>(value)); return *this;}
117
119
125 inline const Aws::String& GetHealthStatus() const { return m_healthStatus; }
126 inline bool HealthStatusHasBeenSet() const { return m_healthStatusHasBeenSet; }
127 template<typename HealthStatusT = Aws::String>
128 void SetHealthStatus(HealthStatusT&& value) { m_healthStatusHasBeenSet = true; m_healthStatus = std::forward<HealthStatusT>(value); }
129 template<typename HealthStatusT = Aws::String>
130 AutoScalingInstanceDetails& WithHealthStatus(HealthStatusT&& value) { SetHealthStatus(std::forward<HealthStatusT>(value)); return *this;}
132
134
138 inline const Aws::String& GetLaunchConfigurationName() const { return m_launchConfigurationName; }
139 inline bool LaunchConfigurationNameHasBeenSet() const { return m_launchConfigurationNameHasBeenSet; }
140 template<typename LaunchConfigurationNameT = Aws::String>
141 void SetLaunchConfigurationName(LaunchConfigurationNameT&& value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName = std::forward<LaunchConfigurationNameT>(value); }
142 template<typename LaunchConfigurationNameT = Aws::String>
143 AutoScalingInstanceDetails& WithLaunchConfigurationName(LaunchConfigurationNameT&& value) { SetLaunchConfigurationName(std::forward<LaunchConfigurationNameT>(value)); return *this;}
145
147
150 inline const LaunchTemplateSpecification& GetLaunchTemplate() const { return m_launchTemplate; }
151 inline bool LaunchTemplateHasBeenSet() const { return m_launchTemplateHasBeenSet; }
152 template<typename LaunchTemplateT = LaunchTemplateSpecification>
153 void SetLaunchTemplate(LaunchTemplateT&& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = std::forward<LaunchTemplateT>(value); }
154 template<typename LaunchTemplateT = LaunchTemplateSpecification>
155 AutoScalingInstanceDetails& WithLaunchTemplate(LaunchTemplateT&& value) { SetLaunchTemplate(std::forward<LaunchTemplateT>(value)); return *this;}
157
159
163 inline bool GetProtectedFromScaleIn() const { return m_protectedFromScaleIn; }
164 inline bool ProtectedFromScaleInHasBeenSet() const { return m_protectedFromScaleInHasBeenSet; }
165 inline void SetProtectedFromScaleIn(bool value) { m_protectedFromScaleInHasBeenSet = true; m_protectedFromScaleIn = value; }
168
170
174 inline const Aws::String& GetWeightedCapacity() const { return m_weightedCapacity; }
175 inline bool WeightedCapacityHasBeenSet() const { return m_weightedCapacityHasBeenSet; }
176 template<typename WeightedCapacityT = Aws::String>
177 void SetWeightedCapacity(WeightedCapacityT&& value) { m_weightedCapacityHasBeenSet = true; m_weightedCapacity = std::forward<WeightedCapacityT>(value); }
178 template<typename WeightedCapacityT = Aws::String>
179 AutoScalingInstanceDetails& WithWeightedCapacity(WeightedCapacityT&& value) { SetWeightedCapacity(std::forward<WeightedCapacityT>(value)); return *this;}
181 private:
182
183 Aws::String m_instanceId;
184 bool m_instanceIdHasBeenSet = false;
185
186 Aws::String m_instanceType;
187 bool m_instanceTypeHasBeenSet = false;
188
189 Aws::String m_autoScalingGroupName;
190 bool m_autoScalingGroupNameHasBeenSet = false;
191
192 Aws::String m_availabilityZone;
193 bool m_availabilityZoneHasBeenSet = false;
194
195 Aws::String m_lifecycleState;
196 bool m_lifecycleStateHasBeenSet = false;
197
198 Aws::String m_healthStatus;
199 bool m_healthStatusHasBeenSet = false;
200
201 Aws::String m_launchConfigurationName;
202 bool m_launchConfigurationNameHasBeenSet = false;
203
204 LaunchTemplateSpecification m_launchTemplate;
205 bool m_launchTemplateHasBeenSet = false;
206
207 bool m_protectedFromScaleIn{false};
208 bool m_protectedFromScaleInHasBeenSet = false;
209
210 Aws::String m_weightedCapacity;
211 bool m_weightedCapacityHasBeenSet = false;
212 };
213
214} // namespace Model
215} // namespace AutoScaling
216} // namespace Aws
AutoScalingInstanceDetails & WithAvailabilityZone(AvailabilityZoneT &&value)
AutoScalingInstanceDetails & WithWeightedCapacity(WeightedCapacityT &&value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AutoScalingInstanceDetails & WithLaunchConfigurationName(LaunchConfigurationNameT &&value)
AutoScalingInstanceDetails & WithProtectedFromScaleIn(bool value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_AUTOSCALING_API AutoScalingInstanceDetails(const Aws::Utils::Xml::XmlNode &xmlNode)
AutoScalingInstanceDetails & WithAutoScalingGroupName(AutoScalingGroupNameT &&value)
AutoScalingInstanceDetails & WithInstanceType(InstanceTypeT &&value)
AutoScalingInstanceDetails & WithInstanceId(InstanceIdT &&value)
AutoScalingInstanceDetails & WithLaunchTemplate(LaunchTemplateT &&value)
void SetLaunchConfigurationName(LaunchConfigurationNameT &&value)
AutoScalingInstanceDetails & WithLifecycleState(LifecycleStateT &&value)
AWS_AUTOSCALING_API AutoScalingInstanceDetails & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_AUTOSCALING_API AutoScalingInstanceDetails()=default
const LaunchTemplateSpecification & GetLaunchTemplate() const
AutoScalingInstanceDetails & WithHealthStatus(HealthStatusT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream