AWS SDK for C++

AWS SDK for C++ Version 1.11.717

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/EbsStatusSummary.h>
12#include <aws/ec2/model/InstanceState.h>
13#include <aws/ec2/model/InstanceStatusEvent.h>
14#include <aws/ec2/model/InstanceStatusSummary.h>
15#include <aws/ec2/model/OperatorResponse.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Xml {
22class XmlNode;
23} // namespace Xml
24} // namespace Utils
25namespace EC2 {
26namespace Model {
27
34 public:
35 AWS_EC2_API InstanceStatus() = default;
36 AWS_EC2_API InstanceStatus(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
40 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
41
43
46 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
47 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
48 template <typename AvailabilityZoneT = Aws::String>
49 void SetAvailabilityZone(AvailabilityZoneT&& value) {
50 m_availabilityZoneHasBeenSet = true;
51 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
52 }
53 template <typename AvailabilityZoneT = Aws::String>
54 InstanceStatus& WithAvailabilityZone(AvailabilityZoneT&& value) {
55 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
65 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
66 template <typename AvailabilityZoneIdT = Aws::String>
67 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
68 m_availabilityZoneIdHasBeenSet = true;
69 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
70 }
71 template <typename AvailabilityZoneIdT = Aws::String>
72 InstanceStatus& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) {
73 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
74 return *this;
75 }
77
79
82 inline const Aws::String& GetOutpostArn() const { return m_outpostArn; }
83 inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; }
84 template <typename OutpostArnT = Aws::String>
85 void SetOutpostArn(OutpostArnT&& value) {
86 m_outpostArnHasBeenSet = true;
87 m_outpostArn = std::forward<OutpostArnT>(value);
88 }
89 template <typename OutpostArnT = Aws::String>
90 InstanceStatus& WithOutpostArn(OutpostArnT&& value) {
91 SetOutpostArn(std::forward<OutpostArnT>(value));
92 return *this;
93 }
95
97
100 inline const OperatorResponse& GetOperator() const { return m_operator; }
101 inline bool OperatorHasBeenSet() const { return m_operatorHasBeenSet; }
102 template <typename OperatorT = OperatorResponse>
103 void SetOperator(OperatorT&& value) {
104 m_operatorHasBeenSet = true;
105 m_operator = std::forward<OperatorT>(value);
106 }
107 template <typename OperatorT = OperatorResponse>
108 InstanceStatus& WithOperator(OperatorT&& value) {
109 SetOperator(std::forward<OperatorT>(value));
110 return *this;
111 }
113
115
118 inline const Aws::Vector<InstanceStatusEvent>& GetEvents() const { return m_events; }
119 inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; }
120 template <typename EventsT = Aws::Vector<InstanceStatusEvent>>
121 void SetEvents(EventsT&& value) {
122 m_eventsHasBeenSet = true;
123 m_events = std::forward<EventsT>(value);
124 }
125 template <typename EventsT = Aws::Vector<InstanceStatusEvent>>
126 InstanceStatus& WithEvents(EventsT&& value) {
127 SetEvents(std::forward<EventsT>(value));
128 return *this;
129 }
130 template <typename EventsT = InstanceStatusEvent>
131 InstanceStatus& AddEvents(EventsT&& value) {
132 m_eventsHasBeenSet = true;
133 m_events.emplace_back(std::forward<EventsT>(value));
134 return *this;
135 }
137
139
142 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
143 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
144 template <typename InstanceIdT = Aws::String>
145 void SetInstanceId(InstanceIdT&& value) {
146 m_instanceIdHasBeenSet = true;
147 m_instanceId = std::forward<InstanceIdT>(value);
148 }
149 template <typename InstanceIdT = Aws::String>
150 InstanceStatus& WithInstanceId(InstanceIdT&& value) {
151 SetInstanceId(std::forward<InstanceIdT>(value));
152 return *this;
153 }
155
157
161 inline const InstanceState& GetInstanceState() const { return m_instanceState; }
162 inline bool InstanceStateHasBeenSet() const { return m_instanceStateHasBeenSet; }
163 template <typename InstanceStateT = InstanceState>
164 void SetInstanceState(InstanceStateT&& value) {
165 m_instanceStateHasBeenSet = true;
166 m_instanceState = std::forward<InstanceStateT>(value);
167 }
168 template <typename InstanceStateT = InstanceState>
169 InstanceStatus& WithInstanceState(InstanceStateT&& value) {
170 SetInstanceState(std::forward<InstanceStateT>(value));
171 return *this;
172 }
174
176
180 inline const InstanceStatusSummary& GetInstanceStatus() const { return m_instanceStatus; }
181 inline bool InstanceStatusHasBeenSet() const { return m_instanceStatusHasBeenSet; }
182 template <typename InstanceStatusT = InstanceStatusSummary>
183 void SetInstanceStatus(InstanceStatusT&& value) {
184 m_instanceStatusHasBeenSet = true;
185 m_instanceStatus = std::forward<InstanceStatusT>(value);
186 }
187 template <typename InstanceStatusT = InstanceStatusSummary>
188 InstanceStatus& WithInstanceStatus(InstanceStatusT&& value) {
189 SetInstanceStatus(std::forward<InstanceStatusT>(value));
190 return *this;
191 }
193
195
200 inline const InstanceStatusSummary& GetSystemStatus() const { return m_systemStatus; }
201 inline bool SystemStatusHasBeenSet() const { return m_systemStatusHasBeenSet; }
202 template <typename SystemStatusT = InstanceStatusSummary>
203 void SetSystemStatus(SystemStatusT&& value) {
204 m_systemStatusHasBeenSet = true;
205 m_systemStatus = std::forward<SystemStatusT>(value);
206 }
207 template <typename SystemStatusT = InstanceStatusSummary>
208 InstanceStatus& WithSystemStatus(SystemStatusT&& value) {
209 SetSystemStatus(std::forward<SystemStatusT>(value));
210 return *this;
211 }
213
215
219 inline const EbsStatusSummary& GetAttachedEbsStatus() const { return m_attachedEbsStatus; }
220 inline bool AttachedEbsStatusHasBeenSet() const { return m_attachedEbsStatusHasBeenSet; }
221 template <typename AttachedEbsStatusT = EbsStatusSummary>
222 void SetAttachedEbsStatus(AttachedEbsStatusT&& value) {
223 m_attachedEbsStatusHasBeenSet = true;
224 m_attachedEbsStatus = std::forward<AttachedEbsStatusT>(value);
225 }
226 template <typename AttachedEbsStatusT = EbsStatusSummary>
227 InstanceStatus& WithAttachedEbsStatus(AttachedEbsStatusT&& value) {
228 SetAttachedEbsStatus(std::forward<AttachedEbsStatusT>(value));
229 return *this;
230 }
232 private:
233 Aws::String m_availabilityZone;
234
235 Aws::String m_availabilityZoneId;
236
237 Aws::String m_outpostArn;
238
239 OperatorResponse m_operator;
240
242
243 Aws::String m_instanceId;
244
245 InstanceState m_instanceState;
246
247 InstanceStatusSummary m_instanceStatus;
248
249 InstanceStatusSummary m_systemStatus;
250
251 EbsStatusSummary m_attachedEbsStatus;
252 bool m_availabilityZoneHasBeenSet = false;
253 bool m_availabilityZoneIdHasBeenSet = false;
254 bool m_outpostArnHasBeenSet = false;
255 bool m_operatorHasBeenSet = false;
256 bool m_eventsHasBeenSet = false;
257 bool m_instanceIdHasBeenSet = false;
258 bool m_instanceStateHasBeenSet = false;
259 bool m_instanceStatusHasBeenSet = false;
260 bool m_systemStatusHasBeenSet = false;
261 bool m_attachedEbsStatusHasBeenSet = false;
262};
263
264} // namespace Model
265} // namespace EC2
266} // 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 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 & 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
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