AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
AutoScalingInstanceDetails.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/autoscaling/model/LaunchTemplateSpecification.h>
9#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace AutoScaling {
21namespace Model {
22
30 public:
31 AWS_AUTOSCALING_API AutoScalingInstanceDetails() = default;
32 AWS_AUTOSCALING_API AutoScalingInstanceDetails(const Aws::Utils::Xml::XmlNode& xmlNode);
34
35 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
36 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
37
39
42 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
43 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
44 template <typename InstanceIdT = Aws::String>
45 void SetInstanceId(InstanceIdT&& value) {
46 m_instanceIdHasBeenSet = true;
47 m_instanceId = std::forward<InstanceIdT>(value);
48 }
49 template <typename InstanceIdT = Aws::String>
51 SetInstanceId(std::forward<InstanceIdT>(value));
52 return *this;
53 }
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) {
64 m_instanceTypeHasBeenSet = true;
65 m_instanceType = std::forward<InstanceTypeT>(value);
66 }
67 template <typename InstanceTypeT = Aws::String>
69 SetInstanceType(std::forward<InstanceTypeT>(value));
70 return *this;
71 }
73
75
78 inline const Aws::String& GetAutoScalingGroupName() const { return m_autoScalingGroupName; }
79 inline bool AutoScalingGroupNameHasBeenSet() const { return m_autoScalingGroupNameHasBeenSet; }
80 template <typename AutoScalingGroupNameT = Aws::String>
81 void SetAutoScalingGroupName(AutoScalingGroupNameT&& value) {
82 m_autoScalingGroupNameHasBeenSet = true;
83 m_autoScalingGroupName = std::forward<AutoScalingGroupNameT>(value);
84 }
85 template <typename AutoScalingGroupNameT = Aws::String>
86 AutoScalingInstanceDetails& WithAutoScalingGroupName(AutoScalingGroupNameT&& value) {
87 SetAutoScalingGroupName(std::forward<AutoScalingGroupNameT>(value));
88 return *this;
89 }
91
93
96 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
97 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
98 template <typename AvailabilityZoneT = Aws::String>
99 void SetAvailabilityZone(AvailabilityZoneT&& value) {
100 m_availabilityZoneHasBeenSet = true;
101 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
102 }
103 template <typename AvailabilityZoneT = Aws::String>
105 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
106 return *this;
107 }
109
111
132 inline const Aws::String& GetLifecycleState() const { return m_lifecycleState; }
133 inline bool LifecycleStateHasBeenSet() const { return m_lifecycleStateHasBeenSet; }
134 template <typename LifecycleStateT = Aws::String>
135 void SetLifecycleState(LifecycleStateT&& value) {
136 m_lifecycleStateHasBeenSet = true;
137 m_lifecycleState = std::forward<LifecycleStateT>(value);
138 }
139 template <typename LifecycleStateT = Aws::String>
141 SetLifecycleState(std::forward<LifecycleStateT>(value));
142 return *this;
143 }
145
147
153 inline const Aws::String& GetHealthStatus() const { return m_healthStatus; }
154 inline bool HealthStatusHasBeenSet() const { return m_healthStatusHasBeenSet; }
155 template <typename HealthStatusT = Aws::String>
156 void SetHealthStatus(HealthStatusT&& value) {
157 m_healthStatusHasBeenSet = true;
158 m_healthStatus = std::forward<HealthStatusT>(value);
159 }
160 template <typename HealthStatusT = Aws::String>
162 SetHealthStatus(std::forward<HealthStatusT>(value));
163 return *this;
164 }
166
168
172 inline const Aws::String& GetLaunchConfigurationName() const { return m_launchConfigurationName; }
173 inline bool LaunchConfigurationNameHasBeenSet() const { return m_launchConfigurationNameHasBeenSet; }
174 template <typename LaunchConfigurationNameT = Aws::String>
175 void SetLaunchConfigurationName(LaunchConfigurationNameT&& value) {
176 m_launchConfigurationNameHasBeenSet = true;
177 m_launchConfigurationName = std::forward<LaunchConfigurationNameT>(value);
178 }
179 template <typename LaunchConfigurationNameT = Aws::String>
180 AutoScalingInstanceDetails& WithLaunchConfigurationName(LaunchConfigurationNameT&& value) {
181 SetLaunchConfigurationName(std::forward<LaunchConfigurationNameT>(value));
182 return *this;
183 }
185
187
190 inline const LaunchTemplateSpecification& GetLaunchTemplate() const { return m_launchTemplate; }
191 inline bool LaunchTemplateHasBeenSet() const { return m_launchTemplateHasBeenSet; }
192 template <typename LaunchTemplateT = LaunchTemplateSpecification>
193 void SetLaunchTemplate(LaunchTemplateT&& value) {
194 m_launchTemplateHasBeenSet = true;
195 m_launchTemplate = std::forward<LaunchTemplateT>(value);
196 }
197 template <typename LaunchTemplateT = LaunchTemplateSpecification>
199 SetLaunchTemplate(std::forward<LaunchTemplateT>(value));
200 return *this;
201 }
203
205
216 inline const Aws::String& GetImageId() const { return m_imageId; }
217 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
218 template <typename ImageIdT = Aws::String>
219 void SetImageId(ImageIdT&& value) {
220 m_imageIdHasBeenSet = true;
221 m_imageId = std::forward<ImageIdT>(value);
222 }
223 template <typename ImageIdT = Aws::String>
225 SetImageId(std::forward<ImageIdT>(value));
226 return *this;
227 }
229
231
235 inline bool GetProtectedFromScaleIn() const { return m_protectedFromScaleIn; }
236 inline bool ProtectedFromScaleInHasBeenSet() const { return m_protectedFromScaleInHasBeenSet; }
237 inline void SetProtectedFromScaleIn(bool value) {
238 m_protectedFromScaleInHasBeenSet = true;
239 m_protectedFromScaleIn = value;
240 }
243 return *this;
244 }
246
248
252 inline const Aws::String& GetWeightedCapacity() const { return m_weightedCapacity; }
253 inline bool WeightedCapacityHasBeenSet() const { return m_weightedCapacityHasBeenSet; }
254 template <typename WeightedCapacityT = Aws::String>
255 void SetWeightedCapacity(WeightedCapacityT&& value) {
256 m_weightedCapacityHasBeenSet = true;
257 m_weightedCapacity = std::forward<WeightedCapacityT>(value);
258 }
259 template <typename WeightedCapacityT = Aws::String>
261 SetWeightedCapacity(std::forward<WeightedCapacityT>(value));
262 return *this;
263 }
265 private:
266 Aws::String m_instanceId;
267
268 Aws::String m_instanceType;
269
270 Aws::String m_autoScalingGroupName;
271
272 Aws::String m_availabilityZone;
273
274 Aws::String m_lifecycleState;
275
276 Aws::String m_healthStatus;
277
278 Aws::String m_launchConfigurationName;
279
280 LaunchTemplateSpecification m_launchTemplate;
281
282 Aws::String m_imageId;
283
284 bool m_protectedFromScaleIn{false};
285
286 Aws::String m_weightedCapacity;
287 bool m_instanceIdHasBeenSet = false;
288 bool m_instanceTypeHasBeenSet = false;
289 bool m_autoScalingGroupNameHasBeenSet = false;
290 bool m_availabilityZoneHasBeenSet = false;
291 bool m_lifecycleStateHasBeenSet = false;
292 bool m_healthStatusHasBeenSet = false;
293 bool m_launchConfigurationNameHasBeenSet = false;
294 bool m_launchTemplateHasBeenSet = false;
295 bool m_imageIdHasBeenSet = false;
296 bool m_protectedFromScaleInHasBeenSet = false;
297 bool m_weightedCapacityHasBeenSet = false;
298};
299
300} // namespace Model
301} // namespace AutoScaling
302} // 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 & WithImageId(ImageIdT &&value)
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