AWS SDK for C++

AWS SDK for C++ Version 1.11.755

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
129 inline const Aws::String& GetLifecycleState() const { return m_lifecycleState; }
130 inline bool LifecycleStateHasBeenSet() const { return m_lifecycleStateHasBeenSet; }
131 template <typename LifecycleStateT = Aws::String>
132 void SetLifecycleState(LifecycleStateT&& value) {
133 m_lifecycleStateHasBeenSet = true;
134 m_lifecycleState = std::forward<LifecycleStateT>(value);
135 }
136 template <typename LifecycleStateT = Aws::String>
138 SetLifecycleState(std::forward<LifecycleStateT>(value));
139 return *this;
140 }
142
144
150 inline const Aws::String& GetHealthStatus() const { return m_healthStatus; }
151 inline bool HealthStatusHasBeenSet() const { return m_healthStatusHasBeenSet; }
152 template <typename HealthStatusT = Aws::String>
153 void SetHealthStatus(HealthStatusT&& value) {
154 m_healthStatusHasBeenSet = true;
155 m_healthStatus = std::forward<HealthStatusT>(value);
156 }
157 template <typename HealthStatusT = Aws::String>
159 SetHealthStatus(std::forward<HealthStatusT>(value));
160 return *this;
161 }
163
165
169 inline const Aws::String& GetLaunchConfigurationName() const { return m_launchConfigurationName; }
170 inline bool LaunchConfigurationNameHasBeenSet() const { return m_launchConfigurationNameHasBeenSet; }
171 template <typename LaunchConfigurationNameT = Aws::String>
172 void SetLaunchConfigurationName(LaunchConfigurationNameT&& value) {
173 m_launchConfigurationNameHasBeenSet = true;
174 m_launchConfigurationName = std::forward<LaunchConfigurationNameT>(value);
175 }
176 template <typename LaunchConfigurationNameT = Aws::String>
177 AutoScalingInstanceDetails& WithLaunchConfigurationName(LaunchConfigurationNameT&& value) {
178 SetLaunchConfigurationName(std::forward<LaunchConfigurationNameT>(value));
179 return *this;
180 }
182
184
187 inline const LaunchTemplateSpecification& GetLaunchTemplate() const { return m_launchTemplate; }
188 inline bool LaunchTemplateHasBeenSet() const { return m_launchTemplateHasBeenSet; }
189 template <typename LaunchTemplateT = LaunchTemplateSpecification>
190 void SetLaunchTemplate(LaunchTemplateT&& value) {
191 m_launchTemplateHasBeenSet = true;
192 m_launchTemplate = std::forward<LaunchTemplateT>(value);
193 }
194 template <typename LaunchTemplateT = LaunchTemplateSpecification>
196 SetLaunchTemplate(std::forward<LaunchTemplateT>(value));
197 return *this;
198 }
200
202
213 inline const Aws::String& GetImageId() const { return m_imageId; }
214 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
215 template <typename ImageIdT = Aws::String>
216 void SetImageId(ImageIdT&& value) {
217 m_imageIdHasBeenSet = true;
218 m_imageId = std::forward<ImageIdT>(value);
219 }
220 template <typename ImageIdT = Aws::String>
222 SetImageId(std::forward<ImageIdT>(value));
223 return *this;
224 }
226
228
232 inline bool GetProtectedFromScaleIn() const { return m_protectedFromScaleIn; }
233 inline bool ProtectedFromScaleInHasBeenSet() const { return m_protectedFromScaleInHasBeenSet; }
234 inline void SetProtectedFromScaleIn(bool value) {
235 m_protectedFromScaleInHasBeenSet = true;
236 m_protectedFromScaleIn = value;
237 }
240 return *this;
241 }
243
245
249 inline const Aws::String& GetWeightedCapacity() const { return m_weightedCapacity; }
250 inline bool WeightedCapacityHasBeenSet() const { return m_weightedCapacityHasBeenSet; }
251 template <typename WeightedCapacityT = Aws::String>
252 void SetWeightedCapacity(WeightedCapacityT&& value) {
253 m_weightedCapacityHasBeenSet = true;
254 m_weightedCapacity = std::forward<WeightedCapacityT>(value);
255 }
256 template <typename WeightedCapacityT = Aws::String>
258 SetWeightedCapacity(std::forward<WeightedCapacityT>(value));
259 return *this;
260 }
262 private:
263 Aws::String m_instanceId;
264
265 Aws::String m_instanceType;
266
267 Aws::String m_autoScalingGroupName;
268
269 Aws::String m_availabilityZone;
270
271 Aws::String m_lifecycleState;
272
273 Aws::String m_healthStatus;
274
275 Aws::String m_launchConfigurationName;
276
277 LaunchTemplateSpecification m_launchTemplate;
278
279 Aws::String m_imageId;
280
281 bool m_protectedFromScaleIn{false};
282
283 Aws::String m_weightedCapacity;
284 bool m_instanceIdHasBeenSet = false;
285 bool m_instanceTypeHasBeenSet = false;
286 bool m_autoScalingGroupNameHasBeenSet = false;
287 bool m_availabilityZoneHasBeenSet = false;
288 bool m_lifecycleStateHasBeenSet = false;
289 bool m_healthStatusHasBeenSet = false;
290 bool m_launchConfigurationNameHasBeenSet = false;
291 bool m_launchTemplateHasBeenSet = false;
292 bool m_imageIdHasBeenSet = false;
293 bool m_protectedFromScaleInHasBeenSet = false;
294 bool m_weightedCapacityHasBeenSet = false;
295};
296
297} // namespace Model
298} // namespace AutoScaling
299} // 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