AWS SDK for C++

AWS SDK for C++ Version 1.11.763

Loading...
Searching...
No Matches
SecondarySubnet.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/SecondaryNetworkType.h>
12#include <aws/ec2/model/SecondarySubnetIpv4CidrBlockAssociation.h>
13#include <aws/ec2/model/SecondarySubnetState.h>
14#include <aws/ec2/model/Tag.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Xml {
21class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace EC2 {
25namespace Model {
26
33 public:
34 AWS_EC2_API SecondarySubnet() = default;
35 AWS_EC2_API SecondarySubnet(const Aws::Utils::Xml::XmlNode& xmlNode);
37
38 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
39 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
40
42
45 inline const Aws::String& GetSecondarySubnetId() const { return m_secondarySubnetId; }
46 inline bool SecondarySubnetIdHasBeenSet() const { return m_secondarySubnetIdHasBeenSet; }
47 template <typename SecondarySubnetIdT = Aws::String>
48 void SetSecondarySubnetId(SecondarySubnetIdT&& value) {
49 m_secondarySubnetIdHasBeenSet = true;
50 m_secondarySubnetId = std::forward<SecondarySubnetIdT>(value);
51 }
52 template <typename SecondarySubnetIdT = Aws::String>
53 SecondarySubnet& WithSecondarySubnetId(SecondarySubnetIdT&& value) {
54 SetSecondarySubnetId(std::forward<SecondarySubnetIdT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetSecondarySubnetArn() const { return m_secondarySubnetArn; }
64 inline bool SecondarySubnetArnHasBeenSet() const { return m_secondarySubnetArnHasBeenSet; }
65 template <typename SecondarySubnetArnT = Aws::String>
66 void SetSecondarySubnetArn(SecondarySubnetArnT&& value) {
67 m_secondarySubnetArnHasBeenSet = true;
68 m_secondarySubnetArn = std::forward<SecondarySubnetArnT>(value);
69 }
70 template <typename SecondarySubnetArnT = Aws::String>
71 SecondarySubnet& WithSecondarySubnetArn(SecondarySubnetArnT&& value) {
72 SetSecondarySubnetArn(std::forward<SecondarySubnetArnT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::String& GetSecondaryNetworkId() const { return m_secondaryNetworkId; }
82 inline bool SecondaryNetworkIdHasBeenSet() const { return m_secondaryNetworkIdHasBeenSet; }
83 template <typename SecondaryNetworkIdT = Aws::String>
84 void SetSecondaryNetworkId(SecondaryNetworkIdT&& value) {
85 m_secondaryNetworkIdHasBeenSet = true;
86 m_secondaryNetworkId = std::forward<SecondaryNetworkIdT>(value);
87 }
88 template <typename SecondaryNetworkIdT = Aws::String>
89 SecondarySubnet& WithSecondaryNetworkId(SecondaryNetworkIdT&& value) {
90 SetSecondaryNetworkId(std::forward<SecondaryNetworkIdT>(value));
91 return *this;
92 }
94
96
99 inline SecondaryNetworkType GetSecondaryNetworkType() const { return m_secondaryNetworkType; }
100 inline bool SecondaryNetworkTypeHasBeenSet() const { return m_secondaryNetworkTypeHasBeenSet; }
102 m_secondaryNetworkTypeHasBeenSet = true;
103 m_secondaryNetworkType = value;
104 }
107 return *this;
108 }
110
112
115 inline const Aws::String& GetOwnerId() const { return m_ownerId; }
116 inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; }
117 template <typename OwnerIdT = Aws::String>
118 void SetOwnerId(OwnerIdT&& value) {
119 m_ownerIdHasBeenSet = true;
120 m_ownerId = std::forward<OwnerIdT>(value);
121 }
122 template <typename OwnerIdT = Aws::String>
123 SecondarySubnet& WithOwnerId(OwnerIdT&& value) {
124 SetOwnerId(std::forward<OwnerIdT>(value));
125 return *this;
126 }
128
130
133 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
134 inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; }
135 template <typename AvailabilityZoneIdT = Aws::String>
136 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
137 m_availabilityZoneIdHasBeenSet = true;
138 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
139 }
140 template <typename AvailabilityZoneIdT = Aws::String>
141 SecondarySubnet& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) {
142 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
143 return *this;
144 }
146
148
151 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
152 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
153 template <typename AvailabilityZoneT = Aws::String>
154 void SetAvailabilityZone(AvailabilityZoneT&& value) {
155 m_availabilityZoneHasBeenSet = true;
156 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
157 }
158 template <typename AvailabilityZoneT = Aws::String>
159 SecondarySubnet& WithAvailabilityZone(AvailabilityZoneT&& value) {
160 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
161 return *this;
162 }
164
166
171 return m_ipv4CidrBlockAssociations;
172 }
173 inline bool Ipv4CidrBlockAssociationsHasBeenSet() const { return m_ipv4CidrBlockAssociationsHasBeenSet; }
174 template <typename Ipv4CidrBlockAssociationsT = Aws::Vector<SecondarySubnetIpv4CidrBlockAssociation>>
175 void SetIpv4CidrBlockAssociations(Ipv4CidrBlockAssociationsT&& value) {
176 m_ipv4CidrBlockAssociationsHasBeenSet = true;
177 m_ipv4CidrBlockAssociations = std::forward<Ipv4CidrBlockAssociationsT>(value);
178 }
179 template <typename Ipv4CidrBlockAssociationsT = Aws::Vector<SecondarySubnetIpv4CidrBlockAssociation>>
180 SecondarySubnet& WithIpv4CidrBlockAssociations(Ipv4CidrBlockAssociationsT&& value) {
181 SetIpv4CidrBlockAssociations(std::forward<Ipv4CidrBlockAssociationsT>(value));
182 return *this;
183 }
184 template <typename Ipv4CidrBlockAssociationsT = SecondarySubnetIpv4CidrBlockAssociation>
185 SecondarySubnet& AddIpv4CidrBlockAssociations(Ipv4CidrBlockAssociationsT&& value) {
186 m_ipv4CidrBlockAssociationsHasBeenSet = true;
187 m_ipv4CidrBlockAssociations.emplace_back(std::forward<Ipv4CidrBlockAssociationsT>(value));
188 return *this;
189 }
191
193
196 inline SecondarySubnetState GetState() const { return m_state; }
197 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
198 inline void SetState(SecondarySubnetState value) {
199 m_stateHasBeenSet = true;
200 m_state = value;
201 }
203 SetState(value);
204 return *this;
205 }
207
209
212 inline const Aws::String& GetStateReason() const { return m_stateReason; }
213 inline bool StateReasonHasBeenSet() const { return m_stateReasonHasBeenSet; }
214 template <typename StateReasonT = Aws::String>
215 void SetStateReason(StateReasonT&& value) {
216 m_stateReasonHasBeenSet = true;
217 m_stateReason = std::forward<StateReasonT>(value);
218 }
219 template <typename StateReasonT = Aws::String>
220 SecondarySubnet& WithStateReason(StateReasonT&& value) {
221 SetStateReason(std::forward<StateReasonT>(value));
222 return *this;
223 }
225
227
230 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
231 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
232 template <typename TagsT = Aws::Vector<Tag>>
233 void SetTags(TagsT&& value) {
234 m_tagsHasBeenSet = true;
235 m_tags = std::forward<TagsT>(value);
236 }
237 template <typename TagsT = Aws::Vector<Tag>>
238 SecondarySubnet& WithTags(TagsT&& value) {
239 SetTags(std::forward<TagsT>(value));
240 return *this;
241 }
242 template <typename TagsT = Tag>
243 SecondarySubnet& AddTags(TagsT&& value) {
244 m_tagsHasBeenSet = true;
245 m_tags.emplace_back(std::forward<TagsT>(value));
246 return *this;
247 }
249 private:
250 Aws::String m_secondarySubnetId;
251
252 Aws::String m_secondarySubnetArn;
253
254 Aws::String m_secondaryNetworkId;
255
257
258 Aws::String m_ownerId;
259
260 Aws::String m_availabilityZoneId;
261
262 Aws::String m_availabilityZone;
263
265
267
268 Aws::String m_stateReason;
269
270 Aws::Vector<Tag> m_tags;
271 bool m_secondarySubnetIdHasBeenSet = false;
272 bool m_secondarySubnetArnHasBeenSet = false;
273 bool m_secondaryNetworkIdHasBeenSet = false;
274 bool m_secondaryNetworkTypeHasBeenSet = false;
275 bool m_ownerIdHasBeenSet = false;
276 bool m_availabilityZoneIdHasBeenSet = false;
277 bool m_availabilityZoneHasBeenSet = false;
278 bool m_ipv4CidrBlockAssociationsHasBeenSet = false;
279 bool m_stateHasBeenSet = false;
280 bool m_stateReasonHasBeenSet = false;
281 bool m_tagsHasBeenSet = false;
282};
283
284} // namespace Model
285} // namespace EC2
286} // namespace Aws
void SetSecondarySubnetId(SecondarySubnetIdT &&value)
AWS_EC2_API SecondarySubnet(const Aws::Utils::Xml::XmlNode &xmlNode)
SecondarySubnet & WithSecondarySubnetId(SecondarySubnetIdT &&value)
const Aws::Vector< SecondarySubnetIpv4CidrBlockAssociation > & GetIpv4CidrBlockAssociations() const
const Aws::String & GetSecondarySubnetId() const
SecondarySubnet & WithSecondarySubnetArn(SecondarySubnetArnT &&value)
const Aws::String & GetSecondarySubnetArn() const
void SetIpv4CidrBlockAssociations(Ipv4CidrBlockAssociationsT &&value)
SecondarySubnet & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
const Aws::String & GetAvailabilityZoneId() const
SecondarySubnet & WithTags(TagsT &&value)
SecondarySubnet & WithAvailabilityZone(AvailabilityZoneT &&value)
SecondarySubnet & WithState(SecondarySubnetState value)
SecondarySubnet & WithIpv4CidrBlockAssociations(Ipv4CidrBlockAssociationsT &&value)
void SetOwnerId(OwnerIdT &&value)
void SetState(SecondarySubnetState value)
void SetStateReason(StateReasonT &&value)
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
const Aws::String & GetStateReason() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
SecondarySubnet & WithSecondaryNetworkType(SecondaryNetworkType value)
void SetSecondarySubnetArn(SecondarySubnetArnT &&value)
SecondaryNetworkType GetSecondaryNetworkType() const
const Aws::Vector< Tag > & GetTags() const
const Aws::String & GetAvailabilityZone() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const Aws::String & GetSecondaryNetworkId() const
SecondarySubnet & WithStateReason(StateReasonT &&value)
SecondarySubnetState GetState() const
AWS_EC2_API SecondarySubnet & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetAvailabilityZone(AvailabilityZoneT &&value)
SecondarySubnet & WithOwnerId(OwnerIdT &&value)
void SetSecondaryNetworkId(SecondaryNetworkIdT &&value)
SecondarySubnet & AddIpv4CidrBlockAssociations(Ipv4CidrBlockAssociationsT &&value)
AWS_EC2_API SecondarySubnet()=default
SecondarySubnet & AddTags(TagsT &&value)
const Aws::String & GetOwnerId() const
SecondarySubnet & WithSecondaryNetworkId(SecondaryNetworkIdT &&value)
void SetSecondaryNetworkType(SecondaryNetworkType value)
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