AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
NatGateway.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ec2/model/ProvisionedBandwidth.h>
13#include <aws/ec2/model/NatGatewayState.h>
14#include <aws/ec2/model/ConnectivityType.h>
15#include <aws/ec2/model/NatGatewayAddress.h>
16#include <aws/ec2/model/Tag.h>
17#include <utility>
18
19namespace Aws
20{
21namespace Utils
22{
23namespace Xml
24{
25 class XmlNode;
26} // namespace Xml
27} // namespace Utils
28namespace EC2
29{
30namespace Model
31{
32
39 {
40 public:
41 AWS_EC2_API NatGateway() = default;
42 AWS_EC2_API NatGateway(const Aws::Utils::Xml::XmlNode& xmlNode);
43 AWS_EC2_API NatGateway& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
44
45 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
46 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
47
48
50
53 inline const Aws::Utils::DateTime& GetCreateTime() const { return m_createTime; }
54 inline bool CreateTimeHasBeenSet() const { return m_createTimeHasBeenSet; }
55 template<typename CreateTimeT = Aws::Utils::DateTime>
56 void SetCreateTime(CreateTimeT&& value) { m_createTimeHasBeenSet = true; m_createTime = std::forward<CreateTimeT>(value); }
57 template<typename CreateTimeT = Aws::Utils::DateTime>
58 NatGateway& WithCreateTime(CreateTimeT&& value) { SetCreateTime(std::forward<CreateTimeT>(value)); return *this;}
60
62
65 inline const Aws::Utils::DateTime& GetDeleteTime() const { return m_deleteTime; }
66 inline bool DeleteTimeHasBeenSet() const { return m_deleteTimeHasBeenSet; }
67 template<typename DeleteTimeT = Aws::Utils::DateTime>
68 void SetDeleteTime(DeleteTimeT&& value) { m_deleteTimeHasBeenSet = true; m_deleteTime = std::forward<DeleteTimeT>(value); }
69 template<typename DeleteTimeT = Aws::Utils::DateTime>
70 NatGateway& WithDeleteTime(DeleteTimeT&& value) { SetDeleteTime(std::forward<DeleteTimeT>(value)); return *this;}
72
74
81 inline const Aws::String& GetFailureCode() const { return m_failureCode; }
82 inline bool FailureCodeHasBeenSet() const { return m_failureCodeHasBeenSet; }
83 template<typename FailureCodeT = Aws::String>
84 void SetFailureCode(FailureCodeT&& value) { m_failureCodeHasBeenSet = true; m_failureCode = std::forward<FailureCodeT>(value); }
85 template<typename FailureCodeT = Aws::String>
86 NatGateway& WithFailureCode(FailureCodeT&& value) { SetFailureCode(std::forward<FailureCodeT>(value)); return *this;}
88
90
105 inline const Aws::String& GetFailureMessage() const { return m_failureMessage; }
106 inline bool FailureMessageHasBeenSet() const { return m_failureMessageHasBeenSet; }
107 template<typename FailureMessageT = Aws::String>
108 void SetFailureMessage(FailureMessageT&& value) { m_failureMessageHasBeenSet = true; m_failureMessage = std::forward<FailureMessageT>(value); }
109 template<typename FailureMessageT = Aws::String>
110 NatGateway& WithFailureMessage(FailureMessageT&& value) { SetFailureMessage(std::forward<FailureMessageT>(value)); return *this;}
112
114
118 inline const Aws::Vector<NatGatewayAddress>& GetNatGatewayAddresses() const { return m_natGatewayAddresses; }
119 inline bool NatGatewayAddressesHasBeenSet() const { return m_natGatewayAddressesHasBeenSet; }
120 template<typename NatGatewayAddressesT = Aws::Vector<NatGatewayAddress>>
121 void SetNatGatewayAddresses(NatGatewayAddressesT&& value) { m_natGatewayAddressesHasBeenSet = true; m_natGatewayAddresses = std::forward<NatGatewayAddressesT>(value); }
122 template<typename NatGatewayAddressesT = Aws::Vector<NatGatewayAddress>>
123 NatGateway& WithNatGatewayAddresses(NatGatewayAddressesT&& value) { SetNatGatewayAddresses(std::forward<NatGatewayAddressesT>(value)); return *this;}
124 template<typename NatGatewayAddressesT = NatGatewayAddress>
125 NatGateway& AddNatGatewayAddresses(NatGatewayAddressesT&& value) { m_natGatewayAddressesHasBeenSet = true; m_natGatewayAddresses.emplace_back(std::forward<NatGatewayAddressesT>(value)); return *this; }
127
129
132 inline const Aws::String& GetNatGatewayId() const { return m_natGatewayId; }
133 inline bool NatGatewayIdHasBeenSet() const { return m_natGatewayIdHasBeenSet; }
134 template<typename NatGatewayIdT = Aws::String>
135 void SetNatGatewayId(NatGatewayIdT&& value) { m_natGatewayIdHasBeenSet = true; m_natGatewayId = std::forward<NatGatewayIdT>(value); }
136 template<typename NatGatewayIdT = Aws::String>
137 NatGateway& WithNatGatewayId(NatGatewayIdT&& value) { SetNatGatewayId(std::forward<NatGatewayIdT>(value)); return *this;}
139
141
146 inline const ProvisionedBandwidth& GetProvisionedBandwidth() const { return m_provisionedBandwidth; }
147 inline bool ProvisionedBandwidthHasBeenSet() const { return m_provisionedBandwidthHasBeenSet; }
148 template<typename ProvisionedBandwidthT = ProvisionedBandwidth>
149 void SetProvisionedBandwidth(ProvisionedBandwidthT&& value) { m_provisionedBandwidthHasBeenSet = true; m_provisionedBandwidth = std::forward<ProvisionedBandwidthT>(value); }
150 template<typename ProvisionedBandwidthT = ProvisionedBandwidth>
151 NatGateway& WithProvisionedBandwidth(ProvisionedBandwidthT&& value) { SetProvisionedBandwidth(std::forward<ProvisionedBandwidthT>(value)); return *this;}
153
155
168 inline NatGatewayState GetState() const { return m_state; }
169 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
170 inline void SetState(NatGatewayState value) { m_stateHasBeenSet = true; m_state = value; }
171 inline NatGateway& WithState(NatGatewayState value) { SetState(value); return *this;}
173
175
178 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
179 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
180 template<typename SubnetIdT = Aws::String>
181 void SetSubnetId(SubnetIdT&& value) { m_subnetIdHasBeenSet = true; m_subnetId = std::forward<SubnetIdT>(value); }
182 template<typename SubnetIdT = Aws::String>
183 NatGateway& WithSubnetId(SubnetIdT&& value) { SetSubnetId(std::forward<SubnetIdT>(value)); return *this;}
185
187
190 inline const Aws::String& GetVpcId() const { return m_vpcId; }
191 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
192 template<typename VpcIdT = Aws::String>
193 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::forward<VpcIdT>(value); }
194 template<typename VpcIdT = Aws::String>
195 NatGateway& WithVpcId(VpcIdT&& value) { SetVpcId(std::forward<VpcIdT>(value)); return *this;}
197
199
202 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
203 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
204 template<typename TagsT = Aws::Vector<Tag>>
205 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
206 template<typename TagsT = Aws::Vector<Tag>>
207 NatGateway& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
208 template<typename TagsT = Tag>
209 NatGateway& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
211
213
217 inline ConnectivityType GetConnectivityType() const { return m_connectivityType; }
218 inline bool ConnectivityTypeHasBeenSet() const { return m_connectivityTypeHasBeenSet; }
219 inline void SetConnectivityType(ConnectivityType value) { m_connectivityTypeHasBeenSet = true; m_connectivityType = value; }
222 private:
223
224 Aws::Utils::DateTime m_createTime{};
225 bool m_createTimeHasBeenSet = false;
226
227 Aws::Utils::DateTime m_deleteTime{};
228 bool m_deleteTimeHasBeenSet = false;
229
230 Aws::String m_failureCode;
231 bool m_failureCodeHasBeenSet = false;
232
233 Aws::String m_failureMessage;
234 bool m_failureMessageHasBeenSet = false;
235
236 Aws::Vector<NatGatewayAddress> m_natGatewayAddresses;
237 bool m_natGatewayAddressesHasBeenSet = false;
238
239 Aws::String m_natGatewayId;
240 bool m_natGatewayIdHasBeenSet = false;
241
242 ProvisionedBandwidth m_provisionedBandwidth;
243 bool m_provisionedBandwidthHasBeenSet = false;
244
246 bool m_stateHasBeenSet = false;
247
248 Aws::String m_subnetId;
249 bool m_subnetIdHasBeenSet = false;
250
251 Aws::String m_vpcId;
252 bool m_vpcIdHasBeenSet = false;
253
254 Aws::Vector<Tag> m_tags;
255 bool m_tagsHasBeenSet = false;
256
258 bool m_connectivityTypeHasBeenSet = false;
259 };
260
261} // namespace Model
262} // namespace EC2
263} // namespace Aws
void SetNatGatewayAddresses(NatGatewayAddressesT &&value)
Definition NatGateway.h:121
bool FailureMessageHasBeenSet() const
Definition NatGateway.h:106
const ProvisionedBandwidth & GetProvisionedBandwidth() const
Definition NatGateway.h:146
NatGateway & WithVpcId(VpcIdT &&value)
Definition NatGateway.h:195
AWS_EC2_API NatGateway()=default
bool ProvisionedBandwidthHasBeenSet() const
Definition NatGateway.h:147
const Aws::Vector< NatGatewayAddress > & GetNatGatewayAddresses() const
Definition NatGateway.h:118
NatGateway & WithCreateTime(CreateTimeT &&value)
Definition NatGateway.h:58
const Aws::String & GetNatGatewayId() const
Definition NatGateway.h:132
NatGateway & WithNatGatewayId(NatGatewayIdT &&value)
Definition NatGateway.h:137
bool DeleteTimeHasBeenSet() const
Definition NatGateway.h:66
const Aws::String & GetFailureCode() const
Definition NatGateway.h:81
NatGateway & WithSubnetId(SubnetIdT &&value)
Definition NatGateway.h:183
const Aws::Utils::DateTime & GetCreateTime() const
Definition NatGateway.h:53
void SetSubnetId(SubnetIdT &&value)
Definition NatGateway.h:181
void SetVpcId(VpcIdT &&value)
Definition NatGateway.h:193
AWS_EC2_API NatGateway(const Aws::Utils::Xml::XmlNode &xmlNode)
NatGateway & WithDeleteTime(DeleteTimeT &&value)
Definition NatGateway.h:70
void SetProvisionedBandwidth(ProvisionedBandwidthT &&value)
Definition NatGateway.h:149
NatGateway & WithProvisionedBandwidth(ProvisionedBandwidthT &&value)
Definition NatGateway.h:151
bool ConnectivityTypeHasBeenSet() const
Definition NatGateway.h:218
bool SubnetIdHasBeenSet() const
Definition NatGateway.h:179
void SetCreateTime(CreateTimeT &&value)
Definition NatGateway.h:56
NatGateway & WithState(NatGatewayState value)
Definition NatGateway.h:171
ConnectivityType GetConnectivityType() const
Definition NatGateway.h:217
NatGateway & WithTags(TagsT &&value)
Definition NatGateway.h:207
const Aws::Utils::DateTime & GetDeleteTime() const
Definition NatGateway.h:65
void SetTags(TagsT &&value)
Definition NatGateway.h:205
bool NatGatewayIdHasBeenSet() const
Definition NatGateway.h:133
NatGatewayState GetState() const
Definition NatGateway.h:168
NatGateway & WithConnectivityType(ConnectivityType value)
Definition NatGateway.h:220
void SetState(NatGatewayState value)
Definition NatGateway.h:170
bool FailureCodeHasBeenSet() const
Definition NatGateway.h:82
NatGateway & AddNatGatewayAddresses(NatGatewayAddressesT &&value)
Definition NatGateway.h:125
const Aws::Vector< Tag > & GetTags() const
Definition NatGateway.h:202
NatGateway & WithNatGatewayAddresses(NatGatewayAddressesT &&value)
Definition NatGateway.h:123
void SetFailureMessage(FailureMessageT &&value)
Definition NatGateway.h:108
AWS_EC2_API NatGateway & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool CreateTimeHasBeenSet() const
Definition NatGateway.h:54
void SetFailureCode(FailureCodeT &&value)
Definition NatGateway.h:84
NatGateway & WithFailureCode(FailureCodeT &&value)
Definition NatGateway.h:86
const Aws::String & GetVpcId() const
Definition NatGateway.h:190
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
NatGateway & WithFailureMessage(FailureMessageT &&value)
Definition NatGateway.h:110
void SetNatGatewayId(NatGatewayIdT &&value)
Definition NatGateway.h:135
NatGateway & AddTags(TagsT &&value)
Definition NatGateway.h:209
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetDeleteTime(DeleteTimeT &&value)
Definition NatGateway.h:68
const Aws::String & GetSubnetId() const
Definition NatGateway.h:178
bool NatGatewayAddressesHasBeenSet() const
Definition NatGateway.h:119
const Aws::String & GetFailureMessage() const
Definition NatGateway.h:105
void SetConnectivityType(ConnectivityType value)
Definition NatGateway.h:219
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