AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
VpnGateway.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/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/ec2/model/VpnState.h>
12#include <aws/ec2/model/GatewayType.h>
13#include <aws/ec2/model/Tag.h>
14#include <aws/ec2/model/VpcAttachment.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Xml
22{
23 class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace EC2
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_EC2_API VpnGateway();
40 AWS_EC2_API VpnGateway(const Aws::Utils::Xml::XmlNode& xmlNode);
41 AWS_EC2_API VpnGateway& operator=(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
52 inline long long GetAmazonSideAsn() const{ return m_amazonSideAsn; }
53 inline bool AmazonSideAsnHasBeenSet() const { return m_amazonSideAsnHasBeenSet; }
54 inline void SetAmazonSideAsn(long long value) { m_amazonSideAsnHasBeenSet = true; m_amazonSideAsn = value; }
55 inline VpnGateway& WithAmazonSideAsn(long long value) { SetAmazonSideAsn(value); return *this;}
57
59
62 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
63 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
64 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
65 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
66 inline VpnGateway& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
67 inline VpnGateway& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
68 inline VpnGateway& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
69 inline VpnGateway& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
71
73
76 inline const Aws::String& GetVpnGatewayId() const{ return m_vpnGatewayId; }
77 inline bool VpnGatewayIdHasBeenSet() const { return m_vpnGatewayIdHasBeenSet; }
78 inline void SetVpnGatewayId(const Aws::String& value) { m_vpnGatewayIdHasBeenSet = true; m_vpnGatewayId = value; }
79 inline void SetVpnGatewayId(Aws::String&& value) { m_vpnGatewayIdHasBeenSet = true; m_vpnGatewayId = std::move(value); }
80 inline void SetVpnGatewayId(const char* value) { m_vpnGatewayIdHasBeenSet = true; m_vpnGatewayId.assign(value); }
81 inline VpnGateway& WithVpnGatewayId(const Aws::String& value) { SetVpnGatewayId(value); return *this;}
82 inline VpnGateway& WithVpnGatewayId(Aws::String&& value) { SetVpnGatewayId(std::move(value)); return *this;}
83 inline VpnGateway& WithVpnGatewayId(const char* value) { SetVpnGatewayId(value); return *this;}
85
87
90 inline const VpnState& GetState() const{ return m_state; }
91 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
92 inline void SetState(const VpnState& value) { m_stateHasBeenSet = true; m_state = value; }
93 inline void SetState(VpnState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); }
94 inline VpnGateway& WithState(const VpnState& value) { SetState(value); return *this;}
95 inline VpnGateway& WithState(VpnState&& value) { SetState(std::move(value)); return *this;}
97
99
102 inline const GatewayType& GetType() const{ return m_type; }
103 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
104 inline void SetType(const GatewayType& value) { m_typeHasBeenSet = true; m_type = value; }
105 inline void SetType(GatewayType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
106 inline VpnGateway& WithType(const GatewayType& value) { SetType(value); return *this;}
107 inline VpnGateway& WithType(GatewayType&& value) { SetType(std::move(value)); return *this;}
109
111
115 inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; }
116 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
117 inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
118 inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); }
119 inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); }
120 inline VpnGateway& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;}
121 inline VpnGateway& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;}
122 inline VpnGateway& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;}
124
126
129 inline const Aws::Vector<VpcAttachment>& GetVpcAttachments() const{ return m_vpcAttachments; }
130 inline bool VpcAttachmentsHasBeenSet() const { return m_vpcAttachmentsHasBeenSet; }
131 inline void SetVpcAttachments(const Aws::Vector<VpcAttachment>& value) { m_vpcAttachmentsHasBeenSet = true; m_vpcAttachments = value; }
132 inline void SetVpcAttachments(Aws::Vector<VpcAttachment>&& value) { m_vpcAttachmentsHasBeenSet = true; m_vpcAttachments = std::move(value); }
133 inline VpnGateway& WithVpcAttachments(const Aws::Vector<VpcAttachment>& value) { SetVpcAttachments(value); return *this;}
134 inline VpnGateway& WithVpcAttachments(Aws::Vector<VpcAttachment>&& value) { SetVpcAttachments(std::move(value)); return *this;}
135 inline VpnGateway& AddVpcAttachments(const VpcAttachment& value) { m_vpcAttachmentsHasBeenSet = true; m_vpcAttachments.push_back(value); return *this; }
136 inline VpnGateway& AddVpcAttachments(VpcAttachment&& value) { m_vpcAttachmentsHasBeenSet = true; m_vpcAttachments.push_back(std::move(value)); return *this; }
138 private:
139
140 long long m_amazonSideAsn;
141 bool m_amazonSideAsnHasBeenSet = false;
142
143 Aws::Vector<Tag> m_tags;
144 bool m_tagsHasBeenSet = false;
145
146 Aws::String m_vpnGatewayId;
147 bool m_vpnGatewayIdHasBeenSet = false;
148
149 VpnState m_state;
150 bool m_stateHasBeenSet = false;
151
152 GatewayType m_type;
153 bool m_typeHasBeenSet = false;
154
155 Aws::String m_availabilityZone;
156 bool m_availabilityZoneHasBeenSet = false;
157
158 Aws::Vector<VpcAttachment> m_vpcAttachments;
159 bool m_vpcAttachmentsHasBeenSet = false;
160 };
161
162} // namespace Model
163} // namespace EC2
164} // namespace Aws
VpnGateway & WithVpnGatewayId(Aws::String &&value)
Definition VpnGateway.h:82
const GatewayType & GetType() const
Definition VpnGateway.h:102
VpnGateway & WithAmazonSideAsn(long long value)
Definition VpnGateway.h:55
void SetVpcAttachments(const Aws::Vector< VpcAttachment > &value)
Definition VpnGateway.h:131
AWS_EC2_API VpnGateway & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::String & GetVpnGatewayId() const
Definition VpnGateway.h:76
void SetTags(Aws::Vector< Tag > &&value)
Definition VpnGateway.h:65
VpnGateway & WithVpnGatewayId(const char *value)
Definition VpnGateway.h:83
void SetTags(const Aws::Vector< Tag > &value)
Definition VpnGateway.h:64
VpnGateway & WithVpcAttachments(const Aws::Vector< VpcAttachment > &value)
Definition VpnGateway.h:133
VpnGateway & AddVpcAttachments(const VpcAttachment &value)
Definition VpnGateway.h:135
const Aws::String & GetAvailabilityZone() const
Definition VpnGateway.h:115
VpnGateway & WithAvailabilityZone(Aws::String &&value)
Definition VpnGateway.h:121
void SetVpnGatewayId(const char *value)
Definition VpnGateway.h:80
long long GetAmazonSideAsn() const
Definition VpnGateway.h:52
const VpnState & GetState() const
Definition VpnGateway.h:90
VpnGateway & WithState(const VpnState &value)
Definition VpnGateway.h:94
void SetAvailabilityZone(const char *value)
Definition VpnGateway.h:119
VpnGateway & WithTags(Aws::Vector< Tag > &&value)
Definition VpnGateway.h:67
void SetState(const VpnState &value)
Definition VpnGateway.h:92
bool VpnGatewayIdHasBeenSet() const
Definition VpnGateway.h:77
const Aws::Vector< Tag > & GetTags() const
Definition VpnGateway.h:62
void SetAvailabilityZone(const Aws::String &value)
Definition VpnGateway.h:117
void SetState(VpnState &&value)
Definition VpnGateway.h:93
bool AvailabilityZoneHasBeenSet() const
Definition VpnGateway.h:116
VpnGateway & AddTags(const Tag &value)
Definition VpnGateway.h:68
void SetAvailabilityZone(Aws::String &&value)
Definition VpnGateway.h:118
VpnGateway & AddTags(Tag &&value)
Definition VpnGateway.h:69
VpnGateway & WithVpnGatewayId(const Aws::String &value)
Definition VpnGateway.h:81
void SetVpcAttachments(Aws::Vector< VpcAttachment > &&value)
Definition VpnGateway.h:132
const Aws::Vector< VpcAttachment > & GetVpcAttachments() const
Definition VpnGateway.h:129
VpnGateway & WithType(const GatewayType &value)
Definition VpnGateway.h:106
AWS_EC2_API VpnGateway(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetType(const GatewayType &value)
Definition VpnGateway.h:104
void SetAmazonSideAsn(long long value)
Definition VpnGateway.h:54
VpnGateway & AddVpcAttachments(VpcAttachment &&value)
Definition VpnGateway.h:136
void SetType(GatewayType &&value)
Definition VpnGateway.h:105
VpnGateway & WithAvailabilityZone(const char *value)
Definition VpnGateway.h:122
bool AmazonSideAsnHasBeenSet() const
Definition VpnGateway.h:53
void SetVpnGatewayId(Aws::String &&value)
Definition VpnGateway.h:79
bool VpcAttachmentsHasBeenSet() const
Definition VpnGateway.h:130
void SetVpnGatewayId(const Aws::String &value)
Definition VpnGateway.h:78
VpnGateway & WithTags(const Aws::Vector< Tag > &value)
Definition VpnGateway.h:66
VpnGateway & WithType(GatewayType &&value)
Definition VpnGateway.h:107
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
VpnGateway & WithAvailabilityZone(const Aws::String &value)
Definition VpnGateway.h:120
VpnGateway & WithVpcAttachments(Aws::Vector< VpcAttachment > &&value)
Definition VpnGateway.h:134
VpnGateway & WithState(VpnState &&value)
Definition VpnGateway.h:95
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