AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
VpnConnection.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/AWSString.h>
10#include <aws/ec2/model/GatewayAssociationState.h>
11#include <aws/ec2/model/VpnConnectionOptions.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/ec2/model/VpnState.h>
14#include <aws/ec2/model/GatewayType.h>
15#include <aws/ec2/model/VpnStaticRoute.h>
16#include <aws/ec2/model/Tag.h>
17#include <aws/ec2/model/VgwTelemetry.h>
18#include <utility>
19
20namespace Aws
21{
22namespace Utils
23{
24namespace Xml
25{
26 class XmlNode;
27} // namespace Xml
28} // namespace Utils
29namespace EC2
30{
31namespace Model
32{
33
40 {
41 public:
42 AWS_EC2_API VpnConnection() = default;
43 AWS_EC2_API VpnConnection(const Aws::Utils::Xml::XmlNode& xmlNode);
44 AWS_EC2_API VpnConnection& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
45
46 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
47 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
48
49
51
56 inline const Aws::String& GetCategory() const { return m_category; }
57 inline bool CategoryHasBeenSet() const { return m_categoryHasBeenSet; }
58 template<typename CategoryT = Aws::String>
59 void SetCategory(CategoryT&& value) { m_categoryHasBeenSet = true; m_category = std::forward<CategoryT>(value); }
60 template<typename CategoryT = Aws::String>
61 VpnConnection& WithCategory(CategoryT&& value) { SetCategory(std::forward<CategoryT>(value)); return *this;}
63
65
68 inline const Aws::String& GetTransitGatewayId() const { return m_transitGatewayId; }
69 inline bool TransitGatewayIdHasBeenSet() const { return m_transitGatewayIdHasBeenSet; }
70 template<typename TransitGatewayIdT = Aws::String>
71 void SetTransitGatewayId(TransitGatewayIdT&& value) { m_transitGatewayIdHasBeenSet = true; m_transitGatewayId = std::forward<TransitGatewayIdT>(value); }
72 template<typename TransitGatewayIdT = Aws::String>
73 VpnConnection& WithTransitGatewayId(TransitGatewayIdT&& value) { SetTransitGatewayId(std::forward<TransitGatewayIdT>(value)); return *this;}
75
77
80 inline const Aws::String& GetCoreNetworkArn() const { return m_coreNetworkArn; }
81 inline bool CoreNetworkArnHasBeenSet() const { return m_coreNetworkArnHasBeenSet; }
82 template<typename CoreNetworkArnT = Aws::String>
83 void SetCoreNetworkArn(CoreNetworkArnT&& value) { m_coreNetworkArnHasBeenSet = true; m_coreNetworkArn = std::forward<CoreNetworkArnT>(value); }
84 template<typename CoreNetworkArnT = Aws::String>
85 VpnConnection& WithCoreNetworkArn(CoreNetworkArnT&& value) { SetCoreNetworkArn(std::forward<CoreNetworkArnT>(value)); return *this;}
87
89
92 inline const Aws::String& GetCoreNetworkAttachmentArn() const { return m_coreNetworkAttachmentArn; }
93 inline bool CoreNetworkAttachmentArnHasBeenSet() const { return m_coreNetworkAttachmentArnHasBeenSet; }
94 template<typename CoreNetworkAttachmentArnT = Aws::String>
95 void SetCoreNetworkAttachmentArn(CoreNetworkAttachmentArnT&& value) { m_coreNetworkAttachmentArnHasBeenSet = true; m_coreNetworkAttachmentArn = std::forward<CoreNetworkAttachmentArnT>(value); }
96 template<typename CoreNetworkAttachmentArnT = Aws::String>
97 VpnConnection& WithCoreNetworkAttachmentArn(CoreNetworkAttachmentArnT&& value) { SetCoreNetworkAttachmentArn(std::forward<CoreNetworkAttachmentArnT>(value)); return *this;}
99
101
104 inline GatewayAssociationState GetGatewayAssociationState() const { return m_gatewayAssociationState; }
105 inline bool GatewayAssociationStateHasBeenSet() const { return m_gatewayAssociationStateHasBeenSet; }
106 inline void SetGatewayAssociationState(GatewayAssociationState value) { m_gatewayAssociationStateHasBeenSet = true; m_gatewayAssociationState = value; }
109
111
114 inline const VpnConnectionOptions& GetOptions() const { return m_options; }
115 inline bool OptionsHasBeenSet() const { return m_optionsHasBeenSet; }
116 template<typename OptionsT = VpnConnectionOptions>
117 void SetOptions(OptionsT&& value) { m_optionsHasBeenSet = true; m_options = std::forward<OptionsT>(value); }
118 template<typename OptionsT = VpnConnectionOptions>
119 VpnConnection& WithOptions(OptionsT&& value) { SetOptions(std::forward<OptionsT>(value)); return *this;}
121
123
126 inline const Aws::Vector<VpnStaticRoute>& GetRoutes() const { return m_routes; }
127 inline bool RoutesHasBeenSet() const { return m_routesHasBeenSet; }
128 template<typename RoutesT = Aws::Vector<VpnStaticRoute>>
129 void SetRoutes(RoutesT&& value) { m_routesHasBeenSet = true; m_routes = std::forward<RoutesT>(value); }
130 template<typename RoutesT = Aws::Vector<VpnStaticRoute>>
131 VpnConnection& WithRoutes(RoutesT&& value) { SetRoutes(std::forward<RoutesT>(value)); return *this;}
132 template<typename RoutesT = VpnStaticRoute>
133 VpnConnection& AddRoutes(RoutesT&& value) { m_routesHasBeenSet = true; m_routes.emplace_back(std::forward<RoutesT>(value)); return *this; }
135
137
140 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
141 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
142 template<typename TagsT = Aws::Vector<Tag>>
143 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
144 template<typename TagsT = Aws::Vector<Tag>>
145 VpnConnection& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
146 template<typename TagsT = Tag>
147 VpnConnection& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
149
151
154 inline const Aws::Vector<VgwTelemetry>& GetVgwTelemetry() const { return m_vgwTelemetry; }
155 inline bool VgwTelemetryHasBeenSet() const { return m_vgwTelemetryHasBeenSet; }
156 template<typename VgwTelemetryT = Aws::Vector<VgwTelemetry>>
157 void SetVgwTelemetry(VgwTelemetryT&& value) { m_vgwTelemetryHasBeenSet = true; m_vgwTelemetry = std::forward<VgwTelemetryT>(value); }
158 template<typename VgwTelemetryT = Aws::Vector<VgwTelemetry>>
159 VpnConnection& WithVgwTelemetry(VgwTelemetryT&& value) { SetVgwTelemetry(std::forward<VgwTelemetryT>(value)); return *this;}
160 template<typename VgwTelemetryT = VgwTelemetry>
161 VpnConnection& AddVgwTelemetry(VgwTelemetryT&& value) { m_vgwTelemetryHasBeenSet = true; m_vgwTelemetry.emplace_back(std::forward<VgwTelemetryT>(value)); return *this; }
163
165
169 inline const Aws::String& GetPreSharedKeyArn() const { return m_preSharedKeyArn; }
170 inline bool PreSharedKeyArnHasBeenSet() const { return m_preSharedKeyArnHasBeenSet; }
171 template<typename PreSharedKeyArnT = Aws::String>
172 void SetPreSharedKeyArn(PreSharedKeyArnT&& value) { m_preSharedKeyArnHasBeenSet = true; m_preSharedKeyArn = std::forward<PreSharedKeyArnT>(value); }
173 template<typename PreSharedKeyArnT = Aws::String>
174 VpnConnection& WithPreSharedKeyArn(PreSharedKeyArnT&& value) { SetPreSharedKeyArn(std::forward<PreSharedKeyArnT>(value)); return *this;}
176
178
181 inline const Aws::String& GetVpnConnectionId() const { return m_vpnConnectionId; }
182 inline bool VpnConnectionIdHasBeenSet() const { return m_vpnConnectionIdHasBeenSet; }
183 template<typename VpnConnectionIdT = Aws::String>
184 void SetVpnConnectionId(VpnConnectionIdT&& value) { m_vpnConnectionIdHasBeenSet = true; m_vpnConnectionId = std::forward<VpnConnectionIdT>(value); }
185 template<typename VpnConnectionIdT = Aws::String>
186 VpnConnection& WithVpnConnectionId(VpnConnectionIdT&& value) { SetVpnConnectionId(std::forward<VpnConnectionIdT>(value)); return *this;}
188
190
193 inline VpnState GetState() const { return m_state; }
194 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
195 inline void SetState(VpnState value) { m_stateHasBeenSet = true; m_state = value; }
196 inline VpnConnection& WithState(VpnState value) { SetState(value); return *this;}
198
200
207 inline const Aws::String& GetCustomerGatewayConfiguration() const { return m_customerGatewayConfiguration; }
208 inline bool CustomerGatewayConfigurationHasBeenSet() const { return m_customerGatewayConfigurationHasBeenSet; }
209 template<typename CustomerGatewayConfigurationT = Aws::String>
210 void SetCustomerGatewayConfiguration(CustomerGatewayConfigurationT&& value) { m_customerGatewayConfigurationHasBeenSet = true; m_customerGatewayConfiguration = std::forward<CustomerGatewayConfigurationT>(value); }
211 template<typename CustomerGatewayConfigurationT = Aws::String>
212 VpnConnection& WithCustomerGatewayConfiguration(CustomerGatewayConfigurationT&& value) { SetCustomerGatewayConfiguration(std::forward<CustomerGatewayConfigurationT>(value)); return *this;}
214
216
219 inline GatewayType GetType() const { return m_type; }
220 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
221 inline void SetType(GatewayType value) { m_typeHasBeenSet = true; m_type = value; }
222 inline VpnConnection& WithType(GatewayType value) { SetType(value); return *this;}
224
226
229 inline const Aws::String& GetCustomerGatewayId() const { return m_customerGatewayId; }
230 inline bool CustomerGatewayIdHasBeenSet() const { return m_customerGatewayIdHasBeenSet; }
231 template<typename CustomerGatewayIdT = Aws::String>
232 void SetCustomerGatewayId(CustomerGatewayIdT&& value) { m_customerGatewayIdHasBeenSet = true; m_customerGatewayId = std::forward<CustomerGatewayIdT>(value); }
233 template<typename CustomerGatewayIdT = Aws::String>
234 VpnConnection& WithCustomerGatewayId(CustomerGatewayIdT&& value) { SetCustomerGatewayId(std::forward<CustomerGatewayIdT>(value)); return *this;}
236
238
242 inline const Aws::String& GetVpnGatewayId() const { return m_vpnGatewayId; }
243 inline bool VpnGatewayIdHasBeenSet() const { return m_vpnGatewayIdHasBeenSet; }
244 template<typename VpnGatewayIdT = Aws::String>
245 void SetVpnGatewayId(VpnGatewayIdT&& value) { m_vpnGatewayIdHasBeenSet = true; m_vpnGatewayId = std::forward<VpnGatewayIdT>(value); }
246 template<typename VpnGatewayIdT = Aws::String>
247 VpnConnection& WithVpnGatewayId(VpnGatewayIdT&& value) { SetVpnGatewayId(std::forward<VpnGatewayIdT>(value)); return *this;}
249 private:
250
251 Aws::String m_category;
252 bool m_categoryHasBeenSet = false;
253
254 Aws::String m_transitGatewayId;
255 bool m_transitGatewayIdHasBeenSet = false;
256
257 Aws::String m_coreNetworkArn;
258 bool m_coreNetworkArnHasBeenSet = false;
259
260 Aws::String m_coreNetworkAttachmentArn;
261 bool m_coreNetworkAttachmentArnHasBeenSet = false;
262
264 bool m_gatewayAssociationStateHasBeenSet = false;
265
266 VpnConnectionOptions m_options;
267 bool m_optionsHasBeenSet = false;
268
270 bool m_routesHasBeenSet = false;
271
272 Aws::Vector<Tag> m_tags;
273 bool m_tagsHasBeenSet = false;
274
275 Aws::Vector<VgwTelemetry> m_vgwTelemetry;
276 bool m_vgwTelemetryHasBeenSet = false;
277
278 Aws::String m_preSharedKeyArn;
279 bool m_preSharedKeyArnHasBeenSet = false;
280
281 Aws::String m_vpnConnectionId;
282 bool m_vpnConnectionIdHasBeenSet = false;
283
285 bool m_stateHasBeenSet = false;
286
287 Aws::String m_customerGatewayConfiguration;
288 bool m_customerGatewayConfigurationHasBeenSet = false;
289
291 bool m_typeHasBeenSet = false;
292
293 Aws::String m_customerGatewayId;
294 bool m_customerGatewayIdHasBeenSet = false;
295
296 Aws::String m_vpnGatewayId;
297 bool m_vpnGatewayIdHasBeenSet = false;
298 };
299
300} // namespace Model
301} // namespace EC2
302} // namespace Aws
const Aws::String & GetCoreNetworkAttachmentArn() const
void SetPreSharedKeyArn(PreSharedKeyArnT &&value)
void SetCustomerGatewayConfiguration(CustomerGatewayConfigurationT &&value)
VpnConnection & WithCategory(CategoryT &&value)
VpnConnection & WithType(GatewayType value)
const Aws::String & GetCustomerGatewayConfiguration() const
const Aws::String & GetVpnGatewayId() const
void SetCoreNetworkArn(CoreNetworkArnT &&value)
void SetVpnConnectionId(VpnConnectionIdT &&value)
const VpnConnectionOptions & GetOptions() const
VpnConnection & WithPreSharedKeyArn(PreSharedKeyArnT &&value)
GatewayAssociationState GetGatewayAssociationState() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
VpnConnection & WithCoreNetworkAttachmentArn(CoreNetworkAttachmentArnT &&value)
void SetVgwTelemetry(VgwTelemetryT &&value)
void SetOptions(OptionsT &&value)
bool CustomerGatewayConfigurationHasBeenSet() const
VpnConnection & WithCustomerGatewayId(CustomerGatewayIdT &&value)
const Aws::String & GetTransitGatewayId() const
VpnConnection & WithVpnConnectionId(VpnConnectionIdT &&value)
VpnConnection & AddVgwTelemetry(VgwTelemetryT &&value)
void SetCustomerGatewayId(CustomerGatewayIdT &&value)
bool CoreNetworkAttachmentArnHasBeenSet() const
VpnConnection & WithVgwTelemetry(VgwTelemetryT &&value)
const Aws::String & GetCategory() const
void SetGatewayAssociationState(GatewayAssociationState value)
void SetType(GatewayType value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetCategory(CategoryT &&value)
VpnConnection & AddTags(TagsT &&value)
VpnConnection & WithRoutes(RoutesT &&value)
VpnConnection & WithOptions(OptionsT &&value)
void SetTransitGatewayId(TransitGatewayIdT &&value)
void SetRoutes(RoutesT &&value)
const Aws::String & GetCoreNetworkArn() const
const Aws::String & GetPreSharedKeyArn() const
VpnConnection & WithCustomerGatewayConfiguration(CustomerGatewayConfigurationT &&value)
VpnConnection & WithVpnGatewayId(VpnGatewayIdT &&value)
bool GatewayAssociationStateHasBeenSet() const
VpnConnection & AddRoutes(RoutesT &&value)
const Aws::String & GetCustomerGatewayId() const
const Aws::Vector< VgwTelemetry > & GetVgwTelemetry() const
VpnConnection & WithState(VpnState value)
VpnConnection & WithCoreNetworkArn(CoreNetworkArnT &&value)
VpnConnection & WithGatewayAssociationState(GatewayAssociationState value)
VpnConnection & WithTransitGatewayId(TransitGatewayIdT &&value)
AWS_EC2_API VpnConnection(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API VpnConnection()=default
void SetVpnGatewayId(VpnGatewayIdT &&value)
const Aws::String & GetVpnConnectionId() const
AWS_EC2_API VpnConnection & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetState(VpnState value)
const Aws::Vector< Tag > & GetTags() const
void SetCoreNetworkAttachmentArn(CoreNetworkAttachmentArnT &&value)
VpnConnection & WithTags(TagsT &&value)
const Aws::Vector< VpnStaticRoute > & GetRoutes() const
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