AWS SDK for C++

AWS SDK for C++ Version 1.11.865

Loading...
Searching...
No Matches
InstanceStatus.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/ApplicationStatusSummary.h>
12#include <aws/ec2/model/EbsStatusSummary.h>
13#include <aws/ec2/model/InstanceState.h>
14#include <aws/ec2/model/InstanceStatusEvent.h>
15#include <aws/ec2/model/InstanceStatusSummary.h>
16#include <aws/ec2/model/OperatorResponse.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Xml {
23class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace EC2 {
27namespace Model {
28
37 public:
38 AWS_EC2_API InstanceStatus() = default;
39 AWS_EC2_API InstanceStatus(const Aws::Utils::Xml::XmlNode& xmlNode);
41
42 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
43 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
44
46
49 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
50 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
51 template <typename AvailabilityZoneT = Aws::String>
52 void SetAvailabilityZone(AvailabilityZoneT&& value) {
53 m_availabilityZoneHasBeenSet = true;
54 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
55 }
56 template <typename AvailabilityZoneT = Aws::String>
57 InstanceStatus& WithAvailabilityZone(AvailabilityZoneT&& value) {
58 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
59 return *this;
60 }
62
64
67 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
68 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
69 template <typename AvailabilityZoneIdT = Aws::String>
70 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
71 m_availabilityZoneIdHasBeenSet = true;
72 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
73 }
74 template <typename AvailabilityZoneIdT = Aws::String>
75 InstanceStatus& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) {
76 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
77 return *this;
78 }
80
82
85 inline const Aws::String& GetOutpostArn() const { return m_outpostArn; }
86 inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; }
87 template <typename OutpostArnT = Aws::String>
88 void SetOutpostArn(OutpostArnT&& value) {
89 m_outpostArnHasBeenSet = true;
90 m_outpostArn = std::forward<OutpostArnT>(value);
91 }
92 template <typename OutpostArnT = Aws::String>
93 InstanceStatus& WithOutpostArn(OutpostArnT&& value) {
94 SetOutpostArn(std::forward<OutpostArnT>(value));
95 return *this;
96 }
98
100
103 inline const OperatorResponse& GetOperator() const { return m_operator; }
104 inline bool OperatorHasBeenSet() const { return m_operatorHasBeenSet; }
105 template <typename OperatorT = OperatorResponse>
106 void SetOperator(OperatorT&& value) {
107 m_operatorHasBeenSet = true;
108 m_operator = std::forward<OperatorT>(value);
109 }
110 template <typename OperatorT = OperatorResponse>
111 InstanceStatus& WithOperator(OperatorT&& value) {
112 SetOperator(std::forward<OperatorT>(value));
113 return *this;
114 }
116
118
121 inline const Aws::Vector<InstanceStatusEvent>& GetEvents() const { return m_events; }
122 inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; }
123 template <typename EventsT = Aws::Vector<InstanceStatusEvent>>
124 void SetEvents(EventsT&& value) {
125 m_eventsHasBeenSet = true;
126 m_events = std::forward<EventsT>(value);
127 }
128 template <typename EventsT = Aws::Vector<InstanceStatusEvent>>
129 InstanceStatus& WithEvents(EventsT&& value) {
130 SetEvents(std::forward<EventsT>(value));
131 return *this;
132 }
133 template <typename EventsT = InstanceStatusEvent>
134 InstanceStatus& AddEvents(EventsT&& value) {
135 m_eventsHasBeenSet = true;
136 m_events.emplace_back(std::forward<EventsT>(value));
137 return *this;
138 }
140
142
145 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
146 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
147 template <typename InstanceIdT = Aws::String>
148 void SetInstanceId(InstanceIdT&& value) {
149 m_instanceIdHasBeenSet = true;
150 m_instanceId = std::forward<InstanceIdT>(value);
151 }
152 template <typename InstanceIdT = Aws::String>
153 InstanceStatus& WithInstanceId(InstanceIdT&& value) {
154 SetInstanceId(std::forward<InstanceIdT>(value));
155 return *this;
156 }
158
160
164 inline const InstanceState& GetInstanceState() const { return m_instanceState; }
165 inline bool InstanceStateHasBeenSet() const { return m_instanceStateHasBeenSet; }
166 template <typename InstanceStateT = InstanceState>
167 void SetInstanceState(InstanceStateT&& value) {
168 m_instanceStateHasBeenSet = true;
169 m_instanceState = std::forward<InstanceStateT>(value);
170 }
171 template <typename InstanceStateT = InstanceState>
172 InstanceStatus& WithInstanceState(InstanceStateT&& value) {
173 SetInstanceState(std::forward<InstanceStateT>(value));
174 return *this;
175 }
177
179
183 inline const InstanceStatusSummary& GetInstanceStatus() const { return m_instanceStatus; }
184 inline bool InstanceStatusHasBeenSet() const { return m_instanceStatusHasBeenSet; }
185 template <typename InstanceStatusT = InstanceStatusSummary>
186 void SetInstanceStatus(InstanceStatusT&& value) {
187 m_instanceStatusHasBeenSet = true;
188 m_instanceStatus = std::forward<InstanceStatusT>(value);
189 }
190 template <typename InstanceStatusT = InstanceStatusSummary>
191 InstanceStatus& WithInstanceStatus(InstanceStatusT&& value) {
192 SetInstanceStatus(std::forward<InstanceStatusT>(value));
193 return *this;
194 }
196
198
203 inline const InstanceStatusSummary& GetSystemStatus() const { return m_systemStatus; }
204 inline bool SystemStatusHasBeenSet() const { return m_systemStatusHasBeenSet; }
205 template <typename SystemStatusT = InstanceStatusSummary>
206 void SetSystemStatus(SystemStatusT&& value) {
207 m_systemStatusHasBeenSet = true;
208 m_systemStatus = std::forward<SystemStatusT>(value);
209 }
210 template <typename SystemStatusT = InstanceStatusSummary>
211 InstanceStatus& WithSystemStatus(SystemStatusT&& value) {
212 SetSystemStatus(std::forward<SystemStatusT>(value));
213 return *this;
214 }
216
218
222 inline const EbsStatusSummary& GetAttachedEbsStatus() const { return m_attachedEbsStatus; }
223 inline bool AttachedEbsStatusHasBeenSet() const { return m_attachedEbsStatusHasBeenSet; }
224 template <typename AttachedEbsStatusT = EbsStatusSummary>
225 void SetAttachedEbsStatus(AttachedEbsStatusT&& value) {
226 m_attachedEbsStatusHasBeenSet = true;
227 m_attachedEbsStatus = std::forward<AttachedEbsStatusT>(value);
228 }
229 template <typename AttachedEbsStatusT = EbsStatusSummary>
230 InstanceStatus& WithAttachedEbsStatus(AttachedEbsStatusT&& value) {
231 SetAttachedEbsStatus(std::forward<AttachedEbsStatusT>(value));
232 return *this;
233 }
235
237
241 inline const ApplicationStatusSummary& GetApplicationStatus() const { return m_applicationStatus; }
242 inline bool ApplicationStatusHasBeenSet() const { return m_applicationStatusHasBeenSet; }
243 template <typename ApplicationStatusT = ApplicationStatusSummary>
244 void SetApplicationStatus(ApplicationStatusT&& value) {
245 m_applicationStatusHasBeenSet = true;
246 m_applicationStatus = std::forward<ApplicationStatusT>(value);
247 }
248 template <typename ApplicationStatusT = ApplicationStatusSummary>
249 InstanceStatus& WithApplicationStatus(ApplicationStatusT&& value) {
250 SetApplicationStatus(std::forward<ApplicationStatusT>(value));
251 return *this;
252 }
254 private:
255 Aws::String m_availabilityZone;
256
257 Aws::String m_availabilityZoneId;
258
259 Aws::String m_outpostArn;
260
261 OperatorResponse m_operator;
262
264
265 Aws::String m_instanceId;
266
267 InstanceState m_instanceState;
268
269 InstanceStatusSummary m_instanceStatus;
270
271 InstanceStatusSummary m_systemStatus;
272
273 EbsStatusSummary m_attachedEbsStatus;
274
275 ApplicationStatusSummary m_applicationStatus;
276 bool m_availabilityZoneHasBeenSet = false;
277 bool m_availabilityZoneIdHasBeenSet = false;
278 bool m_outpostArnHasBeenSet = false;
279 bool m_operatorHasBeenSet = false;
280 bool m_eventsHasBeenSet = false;
281 bool m_instanceIdHasBeenSet = false;
282 bool m_instanceStateHasBeenSet = false;
283 bool m_instanceStatusHasBeenSet = false;
284 bool m_systemStatusHasBeenSet = false;
285 bool m_attachedEbsStatusHasBeenSet = false;
286 bool m_applicationStatusHasBeenSet = false;
287};
288
289} // namespace Model
290} // namespace EC2
291} // namespace Aws
void SetInstanceState(InstanceStateT &&value)
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
InstanceStatus & WithSystemStatus(SystemStatusT &&value)
const Aws::String & GetInstanceId() const
const Aws::String & GetOutpostArn() const
InstanceStatus & AddEvents(EventsT &&value)
const InstanceStatusSummary & GetSystemStatus() const
AWS_EC2_API InstanceStatus()=default
InstanceStatus & WithInstanceStatus(InstanceStatusT &&value)
void SetInstanceStatus(InstanceStatusT &&value)
InstanceStatus & WithOperator(OperatorT &&value)
const Aws::String & GetAvailabilityZoneId() const
InstanceStatus & WithAttachedEbsStatus(AttachedEbsStatusT &&value)
const EbsStatusSummary & GetAttachedEbsStatus() const
void SetSystemStatus(SystemStatusT &&value)
const Aws::Vector< InstanceStatusEvent > & GetEvents() const
const InstanceStatusSummary & GetInstanceStatus() const
void SetOperator(OperatorT &&value)
void SetAttachedEbsStatus(AttachedEbsStatusT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_EC2_API InstanceStatus(const Aws::Utils::Xml::XmlNode &xmlNode)
const ApplicationStatusSummary & GetApplicationStatus() const
const OperatorResponse & GetOperator() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
InstanceStatus & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
void SetEvents(EventsT &&value)
const Aws::String & GetAvailabilityZone() const
InstanceStatus & WithAvailabilityZone(AvailabilityZoneT &&value)
InstanceStatus & WithOutpostArn(OutpostArnT &&value)
void SetInstanceId(InstanceIdT &&value)
InstanceStatus & WithApplicationStatus(ApplicationStatusT &&value)
InstanceStatus & WithEvents(EventsT &&value)
void SetOutpostArn(OutpostArnT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
InstanceStatus & WithInstanceId(InstanceIdT &&value)
const InstanceState & GetInstanceState() const
void SetApplicationStatus(ApplicationStatusT &&value)
InstanceStatus & WithInstanceState(InstanceStateT &&value)
AWS_EC2_API InstanceStatus & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream