AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
VpnConnectionOptionsSpecification.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/ec2/model/TunnelInsideIpVersion.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/ec2/model/VpnTunnelOptionsSpecification.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Xml
20{
21 class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace EC2
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_EC2_API VpnConnectionOptionsSpecification() = default;
40
41 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
42 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
43
44
46
50 inline bool GetEnableAcceleration() const { return m_enableAcceleration; }
51 inline bool EnableAccelerationHasBeenSet() const { return m_enableAccelerationHasBeenSet; }
52 inline void SetEnableAcceleration(bool value) { m_enableAccelerationHasBeenSet = true; m_enableAcceleration = value; }
55
57
61 inline TunnelInsideIpVersion GetTunnelInsideIpVersion() const { return m_tunnelInsideIpVersion; }
62 inline bool TunnelInsideIpVersionHasBeenSet() const { return m_tunnelInsideIpVersionHasBeenSet; }
63 inline void SetTunnelInsideIpVersion(TunnelInsideIpVersion value) { m_tunnelInsideIpVersionHasBeenSet = true; m_tunnelInsideIpVersion = value; }
66
68
71 inline const Aws::Vector<VpnTunnelOptionsSpecification>& GetTunnelOptions() const { return m_tunnelOptions; }
72 inline bool TunnelOptionsHasBeenSet() const { return m_tunnelOptionsHasBeenSet; }
73 template<typename TunnelOptionsT = Aws::Vector<VpnTunnelOptionsSpecification>>
74 void SetTunnelOptions(TunnelOptionsT&& value) { m_tunnelOptionsHasBeenSet = true; m_tunnelOptions = std::forward<TunnelOptionsT>(value); }
75 template<typename TunnelOptionsT = Aws::Vector<VpnTunnelOptionsSpecification>>
76 VpnConnectionOptionsSpecification& WithTunnelOptions(TunnelOptionsT&& value) { SetTunnelOptions(std::forward<TunnelOptionsT>(value)); return *this;}
77 template<typename TunnelOptionsT = VpnTunnelOptionsSpecification>
78 VpnConnectionOptionsSpecification& AddTunnelOptions(TunnelOptionsT&& value) { m_tunnelOptionsHasBeenSet = true; m_tunnelOptions.emplace_back(std::forward<TunnelOptionsT>(value)); return *this; }
80
82
86 inline const Aws::String& GetLocalIpv4NetworkCidr() const { return m_localIpv4NetworkCidr; }
87 inline bool LocalIpv4NetworkCidrHasBeenSet() const { return m_localIpv4NetworkCidrHasBeenSet; }
88 template<typename LocalIpv4NetworkCidrT = Aws::String>
89 void SetLocalIpv4NetworkCidr(LocalIpv4NetworkCidrT&& value) { m_localIpv4NetworkCidrHasBeenSet = true; m_localIpv4NetworkCidr = std::forward<LocalIpv4NetworkCidrT>(value); }
90 template<typename LocalIpv4NetworkCidrT = Aws::String>
91 VpnConnectionOptionsSpecification& WithLocalIpv4NetworkCidr(LocalIpv4NetworkCidrT&& value) { SetLocalIpv4NetworkCidr(std::forward<LocalIpv4NetworkCidrT>(value)); return *this;}
93
95
99 inline const Aws::String& GetRemoteIpv4NetworkCidr() const { return m_remoteIpv4NetworkCidr; }
100 inline bool RemoteIpv4NetworkCidrHasBeenSet() const { return m_remoteIpv4NetworkCidrHasBeenSet; }
101 template<typename RemoteIpv4NetworkCidrT = Aws::String>
102 void SetRemoteIpv4NetworkCidr(RemoteIpv4NetworkCidrT&& value) { m_remoteIpv4NetworkCidrHasBeenSet = true; m_remoteIpv4NetworkCidr = std::forward<RemoteIpv4NetworkCidrT>(value); }
103 template<typename RemoteIpv4NetworkCidrT = Aws::String>
104 VpnConnectionOptionsSpecification& WithRemoteIpv4NetworkCidr(RemoteIpv4NetworkCidrT&& value) { SetRemoteIpv4NetworkCidr(std::forward<RemoteIpv4NetworkCidrT>(value)); return *this;}
106
108
112 inline const Aws::String& GetLocalIpv6NetworkCidr() const { return m_localIpv6NetworkCidr; }
113 inline bool LocalIpv6NetworkCidrHasBeenSet() const { return m_localIpv6NetworkCidrHasBeenSet; }
114 template<typename LocalIpv6NetworkCidrT = Aws::String>
115 void SetLocalIpv6NetworkCidr(LocalIpv6NetworkCidrT&& value) { m_localIpv6NetworkCidrHasBeenSet = true; m_localIpv6NetworkCidr = std::forward<LocalIpv6NetworkCidrT>(value); }
116 template<typename LocalIpv6NetworkCidrT = Aws::String>
117 VpnConnectionOptionsSpecification& WithLocalIpv6NetworkCidr(LocalIpv6NetworkCidrT&& value) { SetLocalIpv6NetworkCidr(std::forward<LocalIpv6NetworkCidrT>(value)); return *this;}
119
121
125 inline const Aws::String& GetRemoteIpv6NetworkCidr() const { return m_remoteIpv6NetworkCidr; }
126 inline bool RemoteIpv6NetworkCidrHasBeenSet() const { return m_remoteIpv6NetworkCidrHasBeenSet; }
127 template<typename RemoteIpv6NetworkCidrT = Aws::String>
128 void SetRemoteIpv6NetworkCidr(RemoteIpv6NetworkCidrT&& value) { m_remoteIpv6NetworkCidrHasBeenSet = true; m_remoteIpv6NetworkCidr = std::forward<RemoteIpv6NetworkCidrT>(value); }
129 template<typename RemoteIpv6NetworkCidrT = Aws::String>
130 VpnConnectionOptionsSpecification& WithRemoteIpv6NetworkCidr(RemoteIpv6NetworkCidrT&& value) { SetRemoteIpv6NetworkCidr(std::forward<RemoteIpv6NetworkCidrT>(value)); return *this;}
132
134
140 inline const Aws::String& GetOutsideIpAddressType() const { return m_outsideIpAddressType; }
141 inline bool OutsideIpAddressTypeHasBeenSet() const { return m_outsideIpAddressTypeHasBeenSet; }
142 template<typename OutsideIpAddressTypeT = Aws::String>
143 void SetOutsideIpAddressType(OutsideIpAddressTypeT&& value) { m_outsideIpAddressTypeHasBeenSet = true; m_outsideIpAddressType = std::forward<OutsideIpAddressTypeT>(value); }
144 template<typename OutsideIpAddressTypeT = Aws::String>
145 VpnConnectionOptionsSpecification& WithOutsideIpAddressType(OutsideIpAddressTypeT&& value) { SetOutsideIpAddressType(std::forward<OutsideIpAddressTypeT>(value)); return *this;}
147
149
153 inline const Aws::String& GetTransportTransitGatewayAttachmentId() const { return m_transportTransitGatewayAttachmentId; }
154 inline bool TransportTransitGatewayAttachmentIdHasBeenSet() const { return m_transportTransitGatewayAttachmentIdHasBeenSet; }
155 template<typename TransportTransitGatewayAttachmentIdT = Aws::String>
156 void SetTransportTransitGatewayAttachmentId(TransportTransitGatewayAttachmentIdT&& value) { m_transportTransitGatewayAttachmentIdHasBeenSet = true; m_transportTransitGatewayAttachmentId = std::forward<TransportTransitGatewayAttachmentIdT>(value); }
157 template<typename TransportTransitGatewayAttachmentIdT = Aws::String>
158 VpnConnectionOptionsSpecification& WithTransportTransitGatewayAttachmentId(TransportTransitGatewayAttachmentIdT&& value) { SetTransportTransitGatewayAttachmentId(std::forward<TransportTransitGatewayAttachmentIdT>(value)); return *this;}
160
162
168 inline bool GetStaticRoutesOnly() const { return m_staticRoutesOnly; }
169 inline bool StaticRoutesOnlyHasBeenSet() const { return m_staticRoutesOnlyHasBeenSet; }
170 inline void SetStaticRoutesOnly(bool value) { m_staticRoutesOnlyHasBeenSet = true; m_staticRoutesOnly = value; }
173 private:
174
175 bool m_enableAcceleration{false};
176 bool m_enableAccelerationHasBeenSet = false;
177
179 bool m_tunnelInsideIpVersionHasBeenSet = false;
180
182 bool m_tunnelOptionsHasBeenSet = false;
183
184 Aws::String m_localIpv4NetworkCidr;
185 bool m_localIpv4NetworkCidrHasBeenSet = false;
186
187 Aws::String m_remoteIpv4NetworkCidr;
188 bool m_remoteIpv4NetworkCidrHasBeenSet = false;
189
190 Aws::String m_localIpv6NetworkCidr;
191 bool m_localIpv6NetworkCidrHasBeenSet = false;
192
193 Aws::String m_remoteIpv6NetworkCidr;
194 bool m_remoteIpv6NetworkCidrHasBeenSet = false;
195
196 Aws::String m_outsideIpAddressType;
197 bool m_outsideIpAddressTypeHasBeenSet = false;
198
199 Aws::String m_transportTransitGatewayAttachmentId;
200 bool m_transportTransitGatewayAttachmentIdHasBeenSet = false;
201
202 bool m_staticRoutesOnly{false};
203 bool m_staticRoutesOnlyHasBeenSet = false;
204 };
205
206} // namespace Model
207} // namespace EC2
208} // namespace Aws
VpnConnectionOptionsSpecification & WithLocalIpv6NetworkCidr(LocalIpv6NetworkCidrT &&value)
VpnConnectionOptionsSpecification & WithLocalIpv4NetworkCidr(LocalIpv4NetworkCidrT &&value)
VpnConnectionOptionsSpecification & WithRemoteIpv4NetworkCidr(RemoteIpv4NetworkCidrT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
VpnConnectionOptionsSpecification & WithTransportTransitGatewayAttachmentId(TransportTransitGatewayAttachmentIdT &&value)
VpnConnectionOptionsSpecification & WithOutsideIpAddressType(OutsideIpAddressTypeT &&value)
AWS_EC2_API VpnConnectionOptionsSpecification(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
VpnConnectionOptionsSpecification & WithStaticRoutesOnly(bool value)
VpnConnectionOptionsSpecification & WithTunnelInsideIpVersion(TunnelInsideIpVersion value)
VpnConnectionOptionsSpecification & AddTunnelOptions(TunnelOptionsT &&value)
VpnConnectionOptionsSpecification & WithEnableAcceleration(bool value)
void SetTransportTransitGatewayAttachmentId(TransportTransitGatewayAttachmentIdT &&value)
AWS_EC2_API VpnConnectionOptionsSpecification & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
VpnConnectionOptionsSpecification & WithTunnelOptions(TunnelOptionsT &&value)
const Aws::Vector< VpnTunnelOptionsSpecification > & GetTunnelOptions() const
VpnConnectionOptionsSpecification & WithRemoteIpv6NetworkCidr(RemoteIpv6NetworkCidrT &&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