AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
VpnConnectionOptions.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/TunnelInsideIpVersion.h>
12#include <aws/ec2/model/TunnelOption.h>
13#include <aws/ec2/model/VpnTunnelBandwidth.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Xml {
20class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace EC2 {
24namespace Model {
25
32 public:
33 AWS_EC2_API VpnConnectionOptions() = default;
36
37 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
38 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
39
41
44 inline bool GetEnableAcceleration() const { return m_enableAcceleration; }
45 inline bool EnableAccelerationHasBeenSet() const { return m_enableAccelerationHasBeenSet; }
46 inline void SetEnableAcceleration(bool value) {
47 m_enableAccelerationHasBeenSet = true;
48 m_enableAcceleration = value;
49 }
52 return *this;
53 }
55
57
61 inline bool GetStaticRoutesOnly() const { return m_staticRoutesOnly; }
62 inline bool StaticRoutesOnlyHasBeenSet() const { return m_staticRoutesOnlyHasBeenSet; }
63 inline void SetStaticRoutesOnly(bool value) {
64 m_staticRoutesOnlyHasBeenSet = true;
65 m_staticRoutesOnly = value;
66 }
69 return *this;
70 }
72
74
78 inline const Aws::String& GetLocalIpv4NetworkCidr() const { return m_localIpv4NetworkCidr; }
79 inline bool LocalIpv4NetworkCidrHasBeenSet() const { return m_localIpv4NetworkCidrHasBeenSet; }
80 template <typename LocalIpv4NetworkCidrT = Aws::String>
81 void SetLocalIpv4NetworkCidr(LocalIpv4NetworkCidrT&& value) {
82 m_localIpv4NetworkCidrHasBeenSet = true;
83 m_localIpv4NetworkCidr = std::forward<LocalIpv4NetworkCidrT>(value);
84 }
85 template <typename LocalIpv4NetworkCidrT = Aws::String>
86 VpnConnectionOptions& WithLocalIpv4NetworkCidr(LocalIpv4NetworkCidrT&& value) {
87 SetLocalIpv4NetworkCidr(std::forward<LocalIpv4NetworkCidrT>(value));
88 return *this;
89 }
91
93
96 inline const Aws::String& GetRemoteIpv4NetworkCidr() const { return m_remoteIpv4NetworkCidr; }
97 inline bool RemoteIpv4NetworkCidrHasBeenSet() const { return m_remoteIpv4NetworkCidrHasBeenSet; }
98 template <typename RemoteIpv4NetworkCidrT = Aws::String>
99 void SetRemoteIpv4NetworkCidr(RemoteIpv4NetworkCidrT&& value) {
100 m_remoteIpv4NetworkCidrHasBeenSet = true;
101 m_remoteIpv4NetworkCidr = std::forward<RemoteIpv4NetworkCidrT>(value);
102 }
103 template <typename RemoteIpv4NetworkCidrT = Aws::String>
104 VpnConnectionOptions& WithRemoteIpv4NetworkCidr(RemoteIpv4NetworkCidrT&& value) {
105 SetRemoteIpv4NetworkCidr(std::forward<RemoteIpv4NetworkCidrT>(value));
106 return *this;
107 }
109
111
115 inline const Aws::String& GetLocalIpv6NetworkCidr() const { return m_localIpv6NetworkCidr; }
116 inline bool LocalIpv6NetworkCidrHasBeenSet() const { return m_localIpv6NetworkCidrHasBeenSet; }
117 template <typename LocalIpv6NetworkCidrT = Aws::String>
118 void SetLocalIpv6NetworkCidr(LocalIpv6NetworkCidrT&& value) {
119 m_localIpv6NetworkCidrHasBeenSet = true;
120 m_localIpv6NetworkCidr = std::forward<LocalIpv6NetworkCidrT>(value);
121 }
122 template <typename LocalIpv6NetworkCidrT = Aws::String>
123 VpnConnectionOptions& WithLocalIpv6NetworkCidr(LocalIpv6NetworkCidrT&& value) {
124 SetLocalIpv6NetworkCidr(std::forward<LocalIpv6NetworkCidrT>(value));
125 return *this;
126 }
128
130
133 inline const Aws::String& GetRemoteIpv6NetworkCidr() const { return m_remoteIpv6NetworkCidr; }
134 inline bool RemoteIpv6NetworkCidrHasBeenSet() const { return m_remoteIpv6NetworkCidrHasBeenSet; }
135 template <typename RemoteIpv6NetworkCidrT = Aws::String>
136 void SetRemoteIpv6NetworkCidr(RemoteIpv6NetworkCidrT&& value) {
137 m_remoteIpv6NetworkCidrHasBeenSet = true;
138 m_remoteIpv6NetworkCidr = std::forward<RemoteIpv6NetworkCidrT>(value);
139 }
140 template <typename RemoteIpv6NetworkCidrT = Aws::String>
141 VpnConnectionOptions& WithRemoteIpv6NetworkCidr(RemoteIpv6NetworkCidrT&& value) {
142 SetRemoteIpv6NetworkCidr(std::forward<RemoteIpv6NetworkCidrT>(value));
143 return *this;
144 }
146
148
153 inline const Aws::String& GetOutsideIpAddressType() const { return m_outsideIpAddressType; }
154 inline bool OutsideIpAddressTypeHasBeenSet() const { return m_outsideIpAddressTypeHasBeenSet; }
155 template <typename OutsideIpAddressTypeT = Aws::String>
156 void SetOutsideIpAddressType(OutsideIpAddressTypeT&& value) {
157 m_outsideIpAddressTypeHasBeenSet = true;
158 m_outsideIpAddressType = std::forward<OutsideIpAddressTypeT>(value);
159 }
160 template <typename OutsideIpAddressTypeT = Aws::String>
161 VpnConnectionOptions& WithOutsideIpAddressType(OutsideIpAddressTypeT&& value) {
162 SetOutsideIpAddressType(std::forward<OutsideIpAddressTypeT>(value));
163 return *this;
164 }
166
168
171 inline const Aws::String& GetTransportTransitGatewayAttachmentId() const { return m_transportTransitGatewayAttachmentId; }
172 inline bool TransportTransitGatewayAttachmentIdHasBeenSet() const { return m_transportTransitGatewayAttachmentIdHasBeenSet; }
173 template <typename TransportTransitGatewayAttachmentIdT = Aws::String>
174 void SetTransportTransitGatewayAttachmentId(TransportTransitGatewayAttachmentIdT&& value) {
175 m_transportTransitGatewayAttachmentIdHasBeenSet = true;
176 m_transportTransitGatewayAttachmentId = std::forward<TransportTransitGatewayAttachmentIdT>(value);
177 }
178 template <typename TransportTransitGatewayAttachmentIdT = Aws::String>
179 VpnConnectionOptions& WithTransportTransitGatewayAttachmentId(TransportTransitGatewayAttachmentIdT&& value) {
180 SetTransportTransitGatewayAttachmentId(std::forward<TransportTransitGatewayAttachmentIdT>(value));
181 return *this;
182 }
184
186
189 inline TunnelInsideIpVersion GetTunnelInsideIpVersion() const { return m_tunnelInsideIpVersion; }
190 inline bool TunnelInsideIpVersionHasBeenSet() const { return m_tunnelInsideIpVersionHasBeenSet; }
192 m_tunnelInsideIpVersionHasBeenSet = true;
193 m_tunnelInsideIpVersion = value;
194 }
197 return *this;
198 }
200
202
205 inline const Aws::Vector<TunnelOption>& GetTunnelOptions() const { return m_tunnelOptions; }
206 inline bool TunnelOptionsHasBeenSet() const { return m_tunnelOptionsHasBeenSet; }
207 template <typename TunnelOptionsT = Aws::Vector<TunnelOption>>
208 void SetTunnelOptions(TunnelOptionsT&& value) {
209 m_tunnelOptionsHasBeenSet = true;
210 m_tunnelOptions = std::forward<TunnelOptionsT>(value);
211 }
212 template <typename TunnelOptionsT = Aws::Vector<TunnelOption>>
213 VpnConnectionOptions& WithTunnelOptions(TunnelOptionsT&& value) {
214 SetTunnelOptions(std::forward<TunnelOptionsT>(value));
215 return *this;
216 }
217 template <typename TunnelOptionsT = TunnelOption>
218 VpnConnectionOptions& AddTunnelOptions(TunnelOptionsT&& value) {
219 m_tunnelOptionsHasBeenSet = true;
220 m_tunnelOptions.emplace_back(std::forward<TunnelOptionsT>(value));
221 return *this;
222 }
224
226
233 inline VpnTunnelBandwidth GetTunnelBandwidth() const { return m_tunnelBandwidth; }
234 inline bool TunnelBandwidthHasBeenSet() const { return m_tunnelBandwidthHasBeenSet; }
236 m_tunnelBandwidthHasBeenSet = true;
237 m_tunnelBandwidth = value;
238 }
240 SetTunnelBandwidth(value);
241 return *this;
242 }
244 private:
245 bool m_enableAcceleration{false};
246
247 bool m_staticRoutesOnly{false};
248
249 Aws::String m_localIpv4NetworkCidr;
250
251 Aws::String m_remoteIpv4NetworkCidr;
252
253 Aws::String m_localIpv6NetworkCidr;
254
255 Aws::String m_remoteIpv6NetworkCidr;
256
257 Aws::String m_outsideIpAddressType;
258
259 Aws::String m_transportTransitGatewayAttachmentId;
260
262
263 Aws::Vector<TunnelOption> m_tunnelOptions;
264
266 bool m_enableAccelerationHasBeenSet = false;
267 bool m_staticRoutesOnlyHasBeenSet = false;
268 bool m_localIpv4NetworkCidrHasBeenSet = false;
269 bool m_remoteIpv4NetworkCidrHasBeenSet = false;
270 bool m_localIpv6NetworkCidrHasBeenSet = false;
271 bool m_remoteIpv6NetworkCidrHasBeenSet = false;
272 bool m_outsideIpAddressTypeHasBeenSet = false;
273 bool m_transportTransitGatewayAttachmentIdHasBeenSet = false;
274 bool m_tunnelInsideIpVersionHasBeenSet = false;
275 bool m_tunnelOptionsHasBeenSet = false;
276 bool m_tunnelBandwidthHasBeenSet = false;
277};
278
279} // namespace Model
280} // namespace EC2
281} // namespace Aws
VpnConnectionOptions & WithLocalIpv6NetworkCidr(LocalIpv6NetworkCidrT &&value)
VpnTunnelBandwidth GetTunnelBandwidth() const
VpnConnectionOptions & WithLocalIpv4NetworkCidr(LocalIpv4NetworkCidrT &&value)
TunnelInsideIpVersion GetTunnelInsideIpVersion() const
VpnConnectionOptions & WithRemoteIpv6NetworkCidr(RemoteIpv6NetworkCidrT &&value)
void SetTunnelInsideIpVersion(TunnelInsideIpVersion value)
void SetLocalIpv4NetworkCidr(LocalIpv4NetworkCidrT &&value)
void SetOutsideIpAddressType(OutsideIpAddressTypeT &&value)
const Aws::String & GetLocalIpv4NetworkCidr() const
const Aws::String & GetRemoteIpv6NetworkCidr() const
const Aws::String & GetOutsideIpAddressType() const
VpnConnectionOptions & AddTunnelOptions(TunnelOptionsT &&value)
AWS_EC2_API VpnConnectionOptions()=default
void SetLocalIpv6NetworkCidr(LocalIpv6NetworkCidrT &&value)
void SetTunnelBandwidth(VpnTunnelBandwidth value)
VpnConnectionOptions & WithTunnelOptions(TunnelOptionsT &&value)
VpnConnectionOptions & WithTunnelBandwidth(VpnTunnelBandwidth value)
AWS_EC2_API VpnConnectionOptions(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetRemoteIpv6NetworkCidr(RemoteIpv6NetworkCidrT &&value)
const Aws::String & GetRemoteIpv4NetworkCidr() const
void SetRemoteIpv4NetworkCidr(RemoteIpv4NetworkCidrT &&value)
VpnConnectionOptions & WithTransportTransitGatewayAttachmentId(TransportTransitGatewayAttachmentIdT &&value)
VpnConnectionOptions & WithTunnelInsideIpVersion(TunnelInsideIpVersion value)
const Aws::Vector< TunnelOption > & GetTunnelOptions() const
AWS_EC2_API VpnConnectionOptions & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
VpnConnectionOptions & WithOutsideIpAddressType(OutsideIpAddressTypeT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
VpnConnectionOptions & WithEnableAcceleration(bool value)
VpnConnectionOptions & WithRemoteIpv4NetworkCidr(RemoteIpv4NetworkCidrT &&value)
VpnConnectionOptions & WithStaticRoutesOnly(bool value)
const Aws::String & GetLocalIpv6NetworkCidr() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetTransportTransitGatewayAttachmentId(TransportTransitGatewayAttachmentIdT &&value)
const Aws::String & GetTransportTransitGatewayAttachmentId() const
void SetTunnelOptions(TunnelOptionsT &&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