AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
AvailabilityZone.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/ec2/model/AvailabilityZoneOptInStatus.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/ec2/model/AvailabilityZoneState.h>
13#include <aws/ec2/model/AvailabilityZoneMessage.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Xml
21{
22 class XmlNode;
23} // namespace Xml
24} // namespace Utils
25namespace EC2
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_EC2_API AvailabilityZone() = default;
40 AWS_EC2_API AvailabilityZone(const Aws::Utils::Xml::XmlNode& xmlNode);
42
43 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
44 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
45
46
48
54 inline AvailabilityZoneOptInStatus GetOptInStatus() const { return m_optInStatus; }
55 inline bool OptInStatusHasBeenSet() const { return m_optInStatusHasBeenSet; }
56 inline void SetOptInStatus(AvailabilityZoneOptInStatus value) { m_optInStatusHasBeenSet = true; m_optInStatus = value; }
59
61
64 inline const Aws::Vector<AvailabilityZoneMessage>& GetMessages() const { return m_messages; }
65 inline bool MessagesHasBeenSet() const { return m_messagesHasBeenSet; }
66 template<typename MessagesT = Aws::Vector<AvailabilityZoneMessage>>
67 void SetMessages(MessagesT&& value) { m_messagesHasBeenSet = true; m_messages = std::forward<MessagesT>(value); }
68 template<typename MessagesT = Aws::Vector<AvailabilityZoneMessage>>
69 AvailabilityZone& WithMessages(MessagesT&& value) { SetMessages(std::forward<MessagesT>(value)); return *this;}
70 template<typename MessagesT = AvailabilityZoneMessage>
71 AvailabilityZone& AddMessages(MessagesT&& value) { m_messagesHasBeenSet = true; m_messages.emplace_back(std::forward<MessagesT>(value)); return *this; }
73
75
78 inline const Aws::String& GetRegionName() const { return m_regionName; }
79 inline bool RegionNameHasBeenSet() const { return m_regionNameHasBeenSet; }
80 template<typename RegionNameT = Aws::String>
81 void SetRegionName(RegionNameT&& value) { m_regionNameHasBeenSet = true; m_regionName = std::forward<RegionNameT>(value); }
82 template<typename RegionNameT = Aws::String>
83 AvailabilityZone& WithRegionName(RegionNameT&& value) { SetRegionName(std::forward<RegionNameT>(value)); return *this;}
85
87
90 inline const Aws::String& GetZoneName() const { return m_zoneName; }
91 inline bool ZoneNameHasBeenSet() const { return m_zoneNameHasBeenSet; }
92 template<typename ZoneNameT = Aws::String>
93 void SetZoneName(ZoneNameT&& value) { m_zoneNameHasBeenSet = true; m_zoneName = std::forward<ZoneNameT>(value); }
94 template<typename ZoneNameT = Aws::String>
95 AvailabilityZone& WithZoneName(ZoneNameT&& value) { SetZoneName(std::forward<ZoneNameT>(value)); return *this;}
97
99
102 inline const Aws::String& GetZoneId() const { return m_zoneId; }
103 inline bool ZoneIdHasBeenSet() const { return m_zoneIdHasBeenSet; }
104 template<typename ZoneIdT = Aws::String>
105 void SetZoneId(ZoneIdT&& value) { m_zoneIdHasBeenSet = true; m_zoneId = std::forward<ZoneIdT>(value); }
106 template<typename ZoneIdT = Aws::String>
107 AvailabilityZone& WithZoneId(ZoneIdT&& value) { SetZoneId(std::forward<ZoneIdT>(value)); return *this;}
109
111
117 inline const Aws::String& GetGroupName() const { return m_groupName; }
118 inline bool GroupNameHasBeenSet() const { return m_groupNameHasBeenSet; }
119 template<typename GroupNameT = Aws::String>
120 void SetGroupName(GroupNameT&& value) { m_groupNameHasBeenSet = true; m_groupName = std::forward<GroupNameT>(value); }
121 template<typename GroupNameT = Aws::String>
122 AvailabilityZone& WithGroupName(GroupNameT&& value) { SetGroupName(std::forward<GroupNameT>(value)); return *this;}
124
126
129 inline const Aws::String& GetNetworkBorderGroup() const { return m_networkBorderGroup; }
130 inline bool NetworkBorderGroupHasBeenSet() const { return m_networkBorderGroupHasBeenSet; }
131 template<typename NetworkBorderGroupT = Aws::String>
132 void SetNetworkBorderGroup(NetworkBorderGroupT&& value) { m_networkBorderGroupHasBeenSet = true; m_networkBorderGroup = std::forward<NetworkBorderGroupT>(value); }
133 template<typename NetworkBorderGroupT = Aws::String>
134 AvailabilityZone& WithNetworkBorderGroup(NetworkBorderGroupT&& value) { SetNetworkBorderGroup(std::forward<NetworkBorderGroupT>(value)); return *this;}
136
138
142 inline const Aws::String& GetZoneType() const { return m_zoneType; }
143 inline bool ZoneTypeHasBeenSet() const { return m_zoneTypeHasBeenSet; }
144 template<typename ZoneTypeT = Aws::String>
145 void SetZoneType(ZoneTypeT&& value) { m_zoneTypeHasBeenSet = true; m_zoneType = std::forward<ZoneTypeT>(value); }
146 template<typename ZoneTypeT = Aws::String>
147 AvailabilityZone& WithZoneType(ZoneTypeT&& value) { SetZoneType(std::forward<ZoneTypeT>(value)); return *this;}
149
151
155 inline const Aws::String& GetParentZoneName() const { return m_parentZoneName; }
156 inline bool ParentZoneNameHasBeenSet() const { return m_parentZoneNameHasBeenSet; }
157 template<typename ParentZoneNameT = Aws::String>
158 void SetParentZoneName(ParentZoneNameT&& value) { m_parentZoneNameHasBeenSet = true; m_parentZoneName = std::forward<ParentZoneNameT>(value); }
159 template<typename ParentZoneNameT = Aws::String>
160 AvailabilityZone& WithParentZoneName(ParentZoneNameT&& value) { SetParentZoneName(std::forward<ParentZoneNameT>(value)); return *this;}
162
164
168 inline const Aws::String& GetParentZoneId() const { return m_parentZoneId; }
169 inline bool ParentZoneIdHasBeenSet() const { return m_parentZoneIdHasBeenSet; }
170 template<typename ParentZoneIdT = Aws::String>
171 void SetParentZoneId(ParentZoneIdT&& value) { m_parentZoneIdHasBeenSet = true; m_parentZoneId = std::forward<ParentZoneIdT>(value); }
172 template<typename ParentZoneIdT = Aws::String>
173 AvailabilityZone& WithParentZoneId(ParentZoneIdT&& value) { SetParentZoneId(std::forward<ParentZoneIdT>(value)); return *this;}
175
177
181 inline const Aws::String& GetGroupLongName() const { return m_groupLongName; }
182 inline bool GroupLongNameHasBeenSet() const { return m_groupLongNameHasBeenSet; }
183 template<typename GroupLongNameT = Aws::String>
184 void SetGroupLongName(GroupLongNameT&& value) { m_groupLongNameHasBeenSet = true; m_groupLongName = std::forward<GroupLongNameT>(value); }
185 template<typename GroupLongNameT = Aws::String>
186 AvailabilityZone& WithGroupLongName(GroupLongNameT&& value) { SetGroupLongName(std::forward<GroupLongNameT>(value)); return *this;}
188
190
195 inline AvailabilityZoneState GetState() const { return m_state; }
196 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
197 inline void SetState(AvailabilityZoneState value) { m_stateHasBeenSet = true; m_state = value; }
198 inline AvailabilityZone& WithState(AvailabilityZoneState value) { SetState(value); return *this;}
200 private:
201
203 bool m_optInStatusHasBeenSet = false;
204
206 bool m_messagesHasBeenSet = false;
207
208 Aws::String m_regionName;
209 bool m_regionNameHasBeenSet = false;
210
211 Aws::String m_zoneName;
212 bool m_zoneNameHasBeenSet = false;
213
214 Aws::String m_zoneId;
215 bool m_zoneIdHasBeenSet = false;
216
217 Aws::String m_groupName;
218 bool m_groupNameHasBeenSet = false;
219
220 Aws::String m_networkBorderGroup;
221 bool m_networkBorderGroupHasBeenSet = false;
222
223 Aws::String m_zoneType;
224 bool m_zoneTypeHasBeenSet = false;
225
226 Aws::String m_parentZoneName;
227 bool m_parentZoneNameHasBeenSet = false;
228
229 Aws::String m_parentZoneId;
230 bool m_parentZoneIdHasBeenSet = false;
231
232 Aws::String m_groupLongName;
233 bool m_groupLongNameHasBeenSet = false;
234
236 bool m_stateHasBeenSet = false;
237 };
238
239} // namespace Model
240} // namespace EC2
241} // namespace Aws
const Aws::String & GetZoneId() const
const Aws::String & GetParentZoneId() const
AvailabilityZone & WithZoneType(ZoneTypeT &&value)
AWS_EC2_API AvailabilityZone()=default
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
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetGroupName(GroupNameT &&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)
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)
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 & 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