AWS SDK for C++  1.9.129
AWS SDK for C++
VpnGateway.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/ec2/EC2_EXPORTS.h>
10 #include <aws/ec2/model/VpnState.h>
14 #include <aws/ec2/model/Tag.h>
15 #include <utility>
16 
17 namespace Aws
18 {
19 namespace Utils
20 {
21 namespace Xml
22 {
23  class XmlNode;
24 } // namespace Xml
25 } // namespace Utils
26 namespace EC2
27 {
28 namespace Model
29 {
30 
37  {
38  public:
42 
43  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
44  void OutputToStream(Aws::OStream& oStream, const char* location) const;
45 
46 
51  inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; }
52 
57  inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
58 
63  inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
64 
69  inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); }
70 
75  inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); }
76 
81  inline VpnGateway& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;}
82 
87  inline VpnGateway& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;}
88 
93  inline VpnGateway& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;}
94 
95 
99  inline const VpnState& GetState() const{ return m_state; }
100 
104  inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
105 
109  inline void SetState(const VpnState& value) { m_stateHasBeenSet = true; m_state = value; }
110 
114  inline void SetState(VpnState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); }
115 
119  inline VpnGateway& WithState(const VpnState& value) { SetState(value); return *this;}
120 
124  inline VpnGateway& WithState(VpnState&& value) { SetState(std::move(value)); return *this;}
125 
126 
130  inline const GatewayType& GetType() const{ return m_type; }
131 
135  inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
136 
140  inline void SetType(const GatewayType& value) { m_typeHasBeenSet = true; m_type = value; }
141 
145  inline void SetType(GatewayType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
146 
150  inline VpnGateway& WithType(const GatewayType& value) { SetType(value); return *this;}
151 
155  inline VpnGateway& WithType(GatewayType&& value) { SetType(std::move(value)); return *this;}
156 
157 
161  inline const Aws::Vector<VpcAttachment>& GetVpcAttachments() const{ return m_vpcAttachments; }
162 
166  inline bool VpcAttachmentsHasBeenSet() const { return m_vpcAttachmentsHasBeenSet; }
167 
171  inline void SetVpcAttachments(const Aws::Vector<VpcAttachment>& value) { m_vpcAttachmentsHasBeenSet = true; m_vpcAttachments = value; }
172 
176  inline void SetVpcAttachments(Aws::Vector<VpcAttachment>&& value) { m_vpcAttachmentsHasBeenSet = true; m_vpcAttachments = std::move(value); }
177 
181  inline VpnGateway& WithVpcAttachments(const Aws::Vector<VpcAttachment>& value) { SetVpcAttachments(value); return *this;}
182 
186  inline VpnGateway& WithVpcAttachments(Aws::Vector<VpcAttachment>&& value) { SetVpcAttachments(std::move(value)); return *this;}
187 
191  inline VpnGateway& AddVpcAttachments(const VpcAttachment& value) { m_vpcAttachmentsHasBeenSet = true; m_vpcAttachments.push_back(value); return *this; }
192 
196  inline VpnGateway& AddVpcAttachments(VpcAttachment&& value) { m_vpcAttachmentsHasBeenSet = true; m_vpcAttachments.push_back(std::move(value)); return *this; }
197 
198 
202  inline const Aws::String& GetVpnGatewayId() const{ return m_vpnGatewayId; }
203 
207  inline bool VpnGatewayIdHasBeenSet() const { return m_vpnGatewayIdHasBeenSet; }
208 
212  inline void SetVpnGatewayId(const Aws::String& value) { m_vpnGatewayIdHasBeenSet = true; m_vpnGatewayId = value; }
213 
217  inline void SetVpnGatewayId(Aws::String&& value) { m_vpnGatewayIdHasBeenSet = true; m_vpnGatewayId = std::move(value); }
218 
222  inline void SetVpnGatewayId(const char* value) { m_vpnGatewayIdHasBeenSet = true; m_vpnGatewayId.assign(value); }
223 
227  inline VpnGateway& WithVpnGatewayId(const Aws::String& value) { SetVpnGatewayId(value); return *this;}
228 
232  inline VpnGateway& WithVpnGatewayId(Aws::String&& value) { SetVpnGatewayId(std::move(value)); return *this;}
233 
237  inline VpnGateway& WithVpnGatewayId(const char* value) { SetVpnGatewayId(value); return *this;}
238 
239 
244  inline long long GetAmazonSideAsn() const{ return m_amazonSideAsn; }
245 
250  inline bool AmazonSideAsnHasBeenSet() const { return m_amazonSideAsnHasBeenSet; }
251 
256  inline void SetAmazonSideAsn(long long value) { m_amazonSideAsnHasBeenSet = true; m_amazonSideAsn = value; }
257 
262  inline VpnGateway& WithAmazonSideAsn(long long value) { SetAmazonSideAsn(value); return *this;}
263 
264 
268  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
269 
273  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
274 
278  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
279 
283  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
284 
288  inline VpnGateway& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
289 
293  inline VpnGateway& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
294 
298  inline VpnGateway& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
299 
303  inline VpnGateway& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
304 
305  private:
306 
307  Aws::String m_availabilityZone;
308  bool m_availabilityZoneHasBeenSet;
309 
310  VpnState m_state;
311  bool m_stateHasBeenSet;
312 
313  GatewayType m_type;
314  bool m_typeHasBeenSet;
315 
316  Aws::Vector<VpcAttachment> m_vpcAttachments;
317  bool m_vpcAttachmentsHasBeenSet;
318 
319  Aws::String m_vpnGatewayId;
320  bool m_vpnGatewayIdHasBeenSet;
321 
322  long long m_amazonSideAsn;
323  bool m_amazonSideAsnHasBeenSet;
324 
325  Aws::Vector<Tag> m_tags;
326  bool m_tagsHasBeenSet;
327  };
328 
329 } // namespace Model
330 } // namespace EC2
331 } // namespace Aws
Aws::EC2::Model::VpnGateway::WithTags
VpnGateway & WithTags(const Aws::Vector< Tag > &value)
Definition: VpnGateway.h:288
Aws::EC2::Model::VpnGateway::GetAmazonSideAsn
long long GetAmazonSideAsn() const
Definition: VpnGateway.h:244
Aws::EC2::Model::VpnGateway::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: VpnGateway.h:283
Aws::EC2::Model::VpnGateway::AddTags
VpnGateway & AddTags(const Tag &value)
Definition: VpnGateway.h:298
Aws::EC2::Model::VpnGateway::WithType
VpnGateway & WithType(const GatewayType &value)
Definition: VpnGateway.h:150
Aws::EC2::Model::GatewayType
GatewayType
Definition: GatewayType.h:17
Aws::EC2::Model::VpnGateway::SetVpnGatewayId
void SetVpnGatewayId(Aws::String &&value)
Definition: VpnGateway.h:217
VpcAttachment.h
Aws::EC2::Model::Tag
Definition: Tag.h:32
Aws::EC2::Model::VpnGateway::SetType
void SetType(GatewayType &&value)
Definition: VpnGateway.h:145
Aws::EC2::Model::VpcAttachment
Definition: VpcAttachment.h:34
VpnState.h
Aws::EC2::Model::VpnGateway::WithVpnGatewayId
VpnGateway & WithVpnGatewayId(Aws::String &&value)
Definition: VpnGateway.h:232
Aws::EC2::Model::VpnGateway::AmazonSideAsnHasBeenSet
bool AmazonSideAsnHasBeenSet() const
Definition: VpnGateway.h:250
AWS_EC2_API
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:28
Aws::EC2::Model::VpnGateway::WithVpcAttachments
VpnGateway & WithVpcAttachments(const Aws::Vector< VpcAttachment > &value)
Definition: VpnGateway.h:181
Aws::EC2::Model::VpnGateway::SetVpnGatewayId
void SetVpnGatewayId(const char *value)
Definition: VpnGateway.h:222
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::EC2::Model::VpnGateway::WithAvailabilityZone
VpnGateway & WithAvailabilityZone(const Aws::String &value)
Definition: VpnGateway.h:81
Aws::EC2::Model::VpnGateway::WithVpnGatewayId
VpnGateway & WithVpnGatewayId(const Aws::String &value)
Definition: VpnGateway.h:227
AWSStreamFwd.h
Aws::EC2::Model::VpnGateway::WithTags
VpnGateway & WithTags(Aws::Vector< Tag > &&value)
Definition: VpnGateway.h:293
Aws::EC2::Model::VpnGateway::GetVpnGatewayId
const Aws::String & GetVpnGatewayId() const
Definition: VpnGateway.h:202
AWSVector.h
Aws::EC2::Model::VpnGateway::SetState
void SetState(const VpnState &value)
Definition: VpnGateway.h:109
Tag.h
Aws::EC2::Model::VpnGateway::GetType
const GatewayType & GetType() const
Definition: VpnGateway.h:130
Aws::EC2::Model::VpnGateway::SetAvailabilityZone
void SetAvailabilityZone(const Aws::String &value)
Definition: VpnGateway.h:63
Aws::EC2::Model::VpnGateway::GetState
const VpnState & GetState() const
Definition: VpnGateway.h:99
Aws::OStream
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:21
Aws::EC2::Model::VpnGateway::TypeHasBeenSet
bool TypeHasBeenSet() const
Definition: VpnGateway.h:135
Aws::EC2::Model::VpnGateway::WithVpcAttachments
VpnGateway & WithVpcAttachments(Aws::Vector< VpcAttachment > &&value)
Definition: VpnGateway.h:186
Aws::EC2::Model::VpnGateway::SetVpcAttachments
void SetVpcAttachments(const Aws::Vector< VpcAttachment > &value)
Definition: VpnGateway.h:171
Aws::Utils::Xml::XmlNode
Definition: XmlSerializer.h:53
Aws::EC2::Model::VpnGateway::SetVpcAttachments
void SetVpcAttachments(Aws::Vector< VpcAttachment > &&value)
Definition: VpnGateway.h:176
Aws::EC2::Model::VpnGateway::VpcAttachmentsHasBeenSet
bool VpcAttachmentsHasBeenSet() const
Definition: VpnGateway.h:166
Aws::EC2::Model::VpnGateway::VpnGatewayIdHasBeenSet
bool VpnGatewayIdHasBeenSet() const
Definition: VpnGateway.h:207
Aws::EC2::Model::VpnGateway::OutputToStream
void OutputToStream(Aws::OStream &oStream, const char *location) const
Aws::EC2::Model::VpnGateway::WithState
VpnGateway & WithState(VpnState &&value)
Definition: VpnGateway.h:124
Aws::EC2::Model::VpnGateway::OutputToStream
void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
Aws::EC2::Model::VpnGateway::WithAvailabilityZone
VpnGateway & WithAvailabilityZone(Aws::String &&value)
Definition: VpnGateway.h:87
Aws::EC2::Model::VpnGateway::VpnGateway
VpnGateway(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::EC2::Model::VpnGateway::WithType
VpnGateway & WithType(GatewayType &&value)
Definition: VpnGateway.h:155
Aws::EC2::Model::VpnGateway::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: VpnGateway.h:278
AWSString.h
Aws::EC2::Model::VpnGateway::operator=
VpnGateway & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::EC2::Model::VpnGateway::SetVpnGatewayId
void SetVpnGatewayId(const Aws::String &value)
Definition: VpnGateway.h:212
Aws::EC2::Model::VpnGateway::AddVpcAttachments
VpnGateway & AddVpcAttachments(const VpcAttachment &value)
Definition: VpnGateway.h:191
Aws::EC2::Model::VpnGateway::VpnGateway
VpnGateway()
Aws::EC2::Model::VpnGateway::SetAmazonSideAsn
void SetAmazonSideAsn(long long value)
Definition: VpnGateway.h:256
Aws::EC2::Model::VpnGateway::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: VpnGateway.h:273
Aws::EC2::Model::VpnGateway
Definition: VpnGateway.h:37
Aws::EC2::Model::VpnState
VpnState
Definition: VpnState.h:17
Aws
Definition: AccessManagementClient.h:15
Aws::EC2::Model::VpnGateway::WithAvailabilityZone
VpnGateway & WithAvailabilityZone(const char *value)
Definition: VpnGateway.h:93
Aws::EC2::Model::VpnGateway::WithAmazonSideAsn
VpnGateway & WithAmazonSideAsn(long long value)
Definition: VpnGateway.h:262
Aws::EC2::Model::VpnGateway::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: VpnGateway.h:268
GatewayType.h
Aws::EC2::Model::VpnGateway::WithVpnGatewayId
VpnGateway & WithVpnGatewayId(const char *value)
Definition: VpnGateway.h:237
Aws::EC2::Model::VpnGateway::StateHasBeenSet
bool StateHasBeenSet() const
Definition: VpnGateway.h:104
Aws::EC2::Model::VpnGateway::SetAvailabilityZone
void SetAvailabilityZone(Aws::String &&value)
Definition: VpnGateway.h:69
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::EC2::Model::VpnGateway::SetAvailabilityZone
void SetAvailabilityZone(const char *value)
Definition: VpnGateway.h:75
index
int index
Definition: cJSON.h:181
Aws::EC2::Model::VpnGateway::SetType
void SetType(const GatewayType &value)
Definition: VpnGateway.h:140
Aws::EC2::Model::VpnGateway::SetState
void SetState(VpnState &&value)
Definition: VpnGateway.h:114
Aws::EC2::Model::VpnGateway::GetAvailabilityZone
const Aws::String & GetAvailabilityZone() const
Definition: VpnGateway.h:51
Aws::EC2::Model::VpnGateway::AddTags
VpnGateway & AddTags(Tag &&value)
Definition: VpnGateway.h:303
EC2_EXPORTS.h
Aws::EC2::Model::VpnGateway::AvailabilityZoneHasBeenSet
bool AvailabilityZoneHasBeenSet() const
Definition: VpnGateway.h:57
Aws::EC2::Model::VpnGateway::WithState
VpnGateway & WithState(const VpnState &value)
Definition: VpnGateway.h:119
Aws::EC2::Model::VpnGateway::GetVpcAttachments
const Aws::Vector< VpcAttachment > & GetVpcAttachments() const
Definition: VpnGateway.h:161
Aws::EC2::Model::VpnGateway::AddVpcAttachments
VpnGateway & AddVpcAttachments(VpcAttachment &&value)
Definition: VpnGateway.h:196