AWS SDK for C++

AWS SDK for C++ Version 1.11.782

Loading...
Searching...
No Matches
AvailabilityZone.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/AvailabilityZoneGeography.h>
12#include <aws/ec2/model/AvailabilityZoneMessage.h>
13#include <aws/ec2/model/AvailabilityZoneOptInStatus.h>
14#include <aws/ec2/model/AvailabilityZoneState.h>
15#include <aws/ec2/model/AvailabilityZoneSubGeography.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
35 public:
36 AWS_EC2_API AvailabilityZone() = default;
37 AWS_EC2_API AvailabilityZone(const Aws::Utils::Xml::XmlNode& xmlNode);
39
40 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
41 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
42
44
50 inline AvailabilityZoneOptInStatus GetOptInStatus() const { return m_optInStatus; }
51 inline bool OptInStatusHasBeenSet() const { return m_optInStatusHasBeenSet; }
53 m_optInStatusHasBeenSet = true;
54 m_optInStatus = value;
55 }
57 SetOptInStatus(value);
58 return *this;
59 }
61
63
66 inline const Aws::Vector<AvailabilityZoneMessage>& GetMessages() const { return m_messages; }
67 inline bool MessagesHasBeenSet() const { return m_messagesHasBeenSet; }
68 template <typename MessagesT = Aws::Vector<AvailabilityZoneMessage>>
69 void SetMessages(MessagesT&& value) {
70 m_messagesHasBeenSet = true;
71 m_messages = std::forward<MessagesT>(value);
72 }
73 template <typename MessagesT = Aws::Vector<AvailabilityZoneMessage>>
74 AvailabilityZone& WithMessages(MessagesT&& value) {
75 SetMessages(std::forward<MessagesT>(value));
76 return *this;
77 }
78 template <typename MessagesT = AvailabilityZoneMessage>
79 AvailabilityZone& AddMessages(MessagesT&& value) {
80 m_messagesHasBeenSet = true;
81 m_messages.emplace_back(std::forward<MessagesT>(value));
82 return *this;
83 }
85
87
90 inline const Aws::String& GetRegionName() const { return m_regionName; }
91 inline bool RegionNameHasBeenSet() const { return m_regionNameHasBeenSet; }
92 template <typename RegionNameT = Aws::String>
93 void SetRegionName(RegionNameT&& value) {
94 m_regionNameHasBeenSet = true;
95 m_regionName = std::forward<RegionNameT>(value);
96 }
97 template <typename RegionNameT = Aws::String>
98 AvailabilityZone& WithRegionName(RegionNameT&& value) {
99 SetRegionName(std::forward<RegionNameT>(value));
100 return *this;
101 }
103
105
108 inline const Aws::String& GetZoneName() const { return m_zoneName; }
109 inline bool ZoneNameHasBeenSet() const { return m_zoneNameHasBeenSet; }
110 template <typename ZoneNameT = Aws::String>
111 void SetZoneName(ZoneNameT&& value) {
112 m_zoneNameHasBeenSet = true;
113 m_zoneName = std::forward<ZoneNameT>(value);
114 }
115 template <typename ZoneNameT = Aws::String>
116 AvailabilityZone& WithZoneName(ZoneNameT&& value) {
117 SetZoneName(std::forward<ZoneNameT>(value));
118 return *this;
119 }
121
123
126 inline const Aws::String& GetZoneId() const { return m_zoneId; }
127 inline bool ZoneIdHasBeenSet() const { return m_zoneIdHasBeenSet; }
128 template <typename ZoneIdT = Aws::String>
129 void SetZoneId(ZoneIdT&& value) {
130 m_zoneIdHasBeenSet = true;
131 m_zoneId = std::forward<ZoneIdT>(value);
132 }
133 template <typename ZoneIdT = Aws::String>
134 AvailabilityZone& WithZoneId(ZoneIdT&& value) {
135 SetZoneId(std::forward<ZoneIdT>(value));
136 return *this;
137 }
139
141
147 inline const Aws::String& GetGroupName() const { return m_groupName; }
148 inline bool GroupNameHasBeenSet() const { return m_groupNameHasBeenSet; }
149 template <typename GroupNameT = Aws::String>
150 void SetGroupName(GroupNameT&& value) {
151 m_groupNameHasBeenSet = true;
152 m_groupName = std::forward<GroupNameT>(value);
153 }
154 template <typename GroupNameT = Aws::String>
155 AvailabilityZone& WithGroupName(GroupNameT&& value) {
156 SetGroupName(std::forward<GroupNameT>(value));
157 return *this;
158 }
160
162
165 inline const Aws::String& GetNetworkBorderGroup() const { return m_networkBorderGroup; }
166 inline bool NetworkBorderGroupHasBeenSet() const { return m_networkBorderGroupHasBeenSet; }
167 template <typename NetworkBorderGroupT = Aws::String>
168 void SetNetworkBorderGroup(NetworkBorderGroupT&& value) {
169 m_networkBorderGroupHasBeenSet = true;
170 m_networkBorderGroup = std::forward<NetworkBorderGroupT>(value);
171 }
172 template <typename NetworkBorderGroupT = Aws::String>
173 AvailabilityZone& WithNetworkBorderGroup(NetworkBorderGroupT&& value) {
174 SetNetworkBorderGroup(std::forward<NetworkBorderGroupT>(value));
175 return *this;
176 }
178
180
184 inline const Aws::String& GetZoneType() const { return m_zoneType; }
185 inline bool ZoneTypeHasBeenSet() const { return m_zoneTypeHasBeenSet; }
186 template <typename ZoneTypeT = Aws::String>
187 void SetZoneType(ZoneTypeT&& value) {
188 m_zoneTypeHasBeenSet = true;
189 m_zoneType = std::forward<ZoneTypeT>(value);
190 }
191 template <typename ZoneTypeT = Aws::String>
192 AvailabilityZone& WithZoneType(ZoneTypeT&& value) {
193 SetZoneType(std::forward<ZoneTypeT>(value));
194 return *this;
195 }
197
199
203 inline const Aws::String& GetParentZoneName() const { return m_parentZoneName; }
204 inline bool ParentZoneNameHasBeenSet() const { return m_parentZoneNameHasBeenSet; }
205 template <typename ParentZoneNameT = Aws::String>
206 void SetParentZoneName(ParentZoneNameT&& value) {
207 m_parentZoneNameHasBeenSet = true;
208 m_parentZoneName = std::forward<ParentZoneNameT>(value);
209 }
210 template <typename ParentZoneNameT = Aws::String>
211 AvailabilityZone& WithParentZoneName(ParentZoneNameT&& value) {
212 SetParentZoneName(std::forward<ParentZoneNameT>(value));
213 return *this;
214 }
216
218
222 inline const Aws::String& GetParentZoneId() const { return m_parentZoneId; }
223 inline bool ParentZoneIdHasBeenSet() const { return m_parentZoneIdHasBeenSet; }
224 template <typename ParentZoneIdT = Aws::String>
225 void SetParentZoneId(ParentZoneIdT&& value) {
226 m_parentZoneIdHasBeenSet = true;
227 m_parentZoneId = std::forward<ParentZoneIdT>(value);
228 }
229 template <typename ParentZoneIdT = Aws::String>
230 AvailabilityZone& WithParentZoneId(ParentZoneIdT&& value) {
231 SetParentZoneId(std::forward<ParentZoneIdT>(value));
232 return *this;
233 }
235
237
241 inline const Aws::String& GetGroupLongName() const { return m_groupLongName; }
242 inline bool GroupLongNameHasBeenSet() const { return m_groupLongNameHasBeenSet; }
243 template <typename GroupLongNameT = Aws::String>
244 void SetGroupLongName(GroupLongNameT&& value) {
245 m_groupLongNameHasBeenSet = true;
246 m_groupLongName = std::forward<GroupLongNameT>(value);
247 }
248 template <typename GroupLongNameT = Aws::String>
249 AvailabilityZone& WithGroupLongName(GroupLongNameT&& value) {
250 SetGroupLongName(std::forward<GroupLongNameT>(value));
251 return *this;
252 }
254
256
260 inline const Aws::Vector<AvailabilityZoneGeography>& GetGeography() const { return m_geography; }
261 inline bool GeographyHasBeenSet() const { return m_geographyHasBeenSet; }
262 template <typename GeographyT = Aws::Vector<AvailabilityZoneGeography>>
263 void SetGeography(GeographyT&& value) {
264 m_geographyHasBeenSet = true;
265 m_geography = std::forward<GeographyT>(value);
266 }
267 template <typename GeographyT = Aws::Vector<AvailabilityZoneGeography>>
268 AvailabilityZone& WithGeography(GeographyT&& value) {
269 SetGeography(std::forward<GeographyT>(value));
270 return *this;
271 }
272 template <typename GeographyT = AvailabilityZoneGeography>
273 AvailabilityZone& AddGeography(GeographyT&& value) {
274 m_geographyHasBeenSet = true;
275 m_geography.emplace_back(std::forward<GeographyT>(value));
276 return *this;
277 }
279
281
285 inline const Aws::Vector<AvailabilityZoneSubGeography>& GetSubGeography() const { return m_subGeography; }
286 inline bool SubGeographyHasBeenSet() const { return m_subGeographyHasBeenSet; }
287 template <typename SubGeographyT = Aws::Vector<AvailabilityZoneSubGeography>>
288 void SetSubGeography(SubGeographyT&& value) {
289 m_subGeographyHasBeenSet = true;
290 m_subGeography = std::forward<SubGeographyT>(value);
291 }
292 template <typename SubGeographyT = Aws::Vector<AvailabilityZoneSubGeography>>
293 AvailabilityZone& WithSubGeography(SubGeographyT&& value) {
294 SetSubGeography(std::forward<SubGeographyT>(value));
295 return *this;
296 }
297 template <typename SubGeographyT = AvailabilityZoneSubGeography>
298 AvailabilityZone& AddSubGeography(SubGeographyT&& value) {
299 m_subGeographyHasBeenSet = true;
300 m_subGeography.emplace_back(std::forward<SubGeographyT>(value));
301 return *this;
302 }
304
306
311 inline AvailabilityZoneState GetState() const { return m_state; }
312 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
313 inline void SetState(AvailabilityZoneState value) {
314 m_stateHasBeenSet = true;
315 m_state = value;
316 }
318 SetState(value);
319 return *this;
320 }
322 private:
324
326
327 Aws::String m_regionName;
328
329 Aws::String m_zoneName;
330
331 Aws::String m_zoneId;
332
333 Aws::String m_groupName;
334
335 Aws::String m_networkBorderGroup;
336
337 Aws::String m_zoneType;
338
339 Aws::String m_parentZoneName;
340
341 Aws::String m_parentZoneId;
342
343 Aws::String m_groupLongName;
344
346
348
350 bool m_optInStatusHasBeenSet = false;
351 bool m_messagesHasBeenSet = false;
352 bool m_regionNameHasBeenSet = false;
353 bool m_zoneNameHasBeenSet = false;
354 bool m_zoneIdHasBeenSet = false;
355 bool m_groupNameHasBeenSet = false;
356 bool m_networkBorderGroupHasBeenSet = false;
357 bool m_zoneTypeHasBeenSet = false;
358 bool m_parentZoneNameHasBeenSet = false;
359 bool m_parentZoneIdHasBeenSet = false;
360 bool m_groupLongNameHasBeenSet = false;
361 bool m_geographyHasBeenSet = false;
362 bool m_subGeographyHasBeenSet = false;
363 bool m_stateHasBeenSet = false;
364};
365
366} // namespace Model
367} // namespace EC2
368} // namespace Aws
const Aws::String & GetZoneId() const
const Aws::String & GetParentZoneId() const
AvailabilityZone & WithZoneType(ZoneTypeT &&value)
AWS_EC2_API AvailabilityZone()=default
void SetSubGeography(SubGeographyT &&value)
AvailabilityZone & AddSubGeography(SubGeographyT &&value)
const Aws::Vector< AvailabilityZoneMessage > & GetMessages() const
void SetGroupLongName(GroupLongNameT &&value)
const Aws::String & GetGroupName() const
AvailabilityZone & AddMessages(MessagesT &&value)
void SetNetworkBorderGroup(NetworkBorderGroupT &&value)
void SetZoneName(ZoneNameT &&value)
void SetRegionName(RegionNameT &&value)
AvailabilityZone & WithState(AvailabilityZoneState value)
const Aws::String & GetZoneType() const
AvailabilityZoneOptInStatus GetOptInStatus() const
AvailabilityZoneState GetState() const
AvailabilityZone & WithGeography(GeographyT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::Vector< AvailabilityZoneSubGeography > & GetSubGeography() const
void SetGroupName(GroupNameT &&value)
void SetGeography(GeographyT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const Aws::String & GetZoneName() const
AvailabilityZone & WithRegionName(RegionNameT &&value)
AvailabilityZone & WithSubGeography(SubGeographyT &&value)
void SetZoneType(ZoneTypeT &&value)
AWS_EC2_API AvailabilityZone(const Aws::Utils::Xml::XmlNode &xmlNode)
AvailabilityZone & WithZoneId(ZoneIdT &&value)
AvailabilityZone & WithZoneName(ZoneNameT &&value)
AvailabilityZone & WithGroupName(GroupNameT &&value)
const Aws::Vector< AvailabilityZoneGeography > & GetGeography() const
AvailabilityZone & WithMessages(MessagesT &&value)
void SetOptInStatus(AvailabilityZoneOptInStatus value)
const Aws::String & GetRegionName() const
void SetMessages(MessagesT &&value)
AvailabilityZone & WithNetworkBorderGroup(NetworkBorderGroupT &&value)
const Aws::String & GetGroupLongName() const
AvailabilityZone & AddGeography(GeographyT &&value)
AvailabilityZone & WithOptInStatus(AvailabilityZoneOptInStatus value)
void SetParentZoneId(ParentZoneIdT &&value)
AvailabilityZone & WithParentZoneName(ParentZoneNameT &&value)
AvailabilityZone & WithParentZoneId(ParentZoneIdT &&value)
const Aws::String & GetParentZoneName() const
void SetParentZoneName(ParentZoneNameT &&value)
AvailabilityZone & WithGroupLongName(GroupLongNameT &&value)
void SetState(AvailabilityZoneState value)
const Aws::String & GetNetworkBorderGroup() const
AWS_EC2_API AvailabilityZone & 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