AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ModifyVpnTunnelOptionsSpecification.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/IKEVersionsRequestListValue.h>
12#include <aws/ec2/model/Phase1DHGroupNumbersRequestListValue.h>
13#include <aws/ec2/model/Phase1EncryptionAlgorithmsRequestListValue.h>
14#include <aws/ec2/model/Phase1IntegrityAlgorithmsRequestListValue.h>
15#include <aws/ec2/model/Phase2DHGroupNumbersRequestListValue.h>
16#include <aws/ec2/model/Phase2EncryptionAlgorithmsRequestListValue.h>
17#include <aws/ec2/model/Phase2IntegrityAlgorithmsRequestListValue.h>
18#include <aws/ec2/model/VpnTunnelLogOptionsSpecification.h>
19
20#include <utility>
21
22namespace Aws {
23namespace Utils {
24namespace Xml {
25class XmlNode;
26} // namespace Xml
27} // namespace Utils
28namespace EC2 {
29namespace Model {
30
38 public:
39 AWS_EC2_API ModifyVpnTunnelOptionsSpecification() = default;
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
47
58 inline const Aws::String& GetTunnelInsideCidr() const { return m_tunnelInsideCidr; }
59 inline bool TunnelInsideCidrHasBeenSet() const { return m_tunnelInsideCidrHasBeenSet; }
60 template <typename TunnelInsideCidrT = Aws::String>
61 void SetTunnelInsideCidr(TunnelInsideCidrT&& value) {
62 m_tunnelInsideCidrHasBeenSet = true;
63 m_tunnelInsideCidr = std::forward<TunnelInsideCidrT>(value);
64 }
65 template <typename TunnelInsideCidrT = Aws::String>
67 SetTunnelInsideCidr(std::forward<TunnelInsideCidrT>(value));
68 return *this;
69 }
71
73
79 inline const Aws::String& GetTunnelInsideIpv6Cidr() const { return m_tunnelInsideIpv6Cidr; }
80 inline bool TunnelInsideIpv6CidrHasBeenSet() const { return m_tunnelInsideIpv6CidrHasBeenSet; }
81 template <typename TunnelInsideIpv6CidrT = Aws::String>
82 void SetTunnelInsideIpv6Cidr(TunnelInsideIpv6CidrT&& value) {
83 m_tunnelInsideIpv6CidrHasBeenSet = true;
84 m_tunnelInsideIpv6Cidr = std::forward<TunnelInsideIpv6CidrT>(value);
85 }
86 template <typename TunnelInsideIpv6CidrT = Aws::String>
88 SetTunnelInsideIpv6Cidr(std::forward<TunnelInsideIpv6CidrT>(value));
89 return *this;
90 }
92
94
100 inline const Aws::String& GetPreSharedKey() const { return m_preSharedKey; }
101 inline bool PreSharedKeyHasBeenSet() const { return m_preSharedKeyHasBeenSet; }
102 template <typename PreSharedKeyT = Aws::String>
103 void SetPreSharedKey(PreSharedKeyT&& value) {
104 m_preSharedKeyHasBeenSet = true;
105 m_preSharedKey = std::forward<PreSharedKeyT>(value);
106 }
107 template <typename PreSharedKeyT = Aws::String>
109 SetPreSharedKey(std::forward<PreSharedKeyT>(value));
110 return *this;
111 }
113
115
120 inline int GetPhase1LifetimeSeconds() const { return m_phase1LifetimeSeconds; }
121 inline bool Phase1LifetimeSecondsHasBeenSet() const { return m_phase1LifetimeSecondsHasBeenSet; }
122 inline void SetPhase1LifetimeSeconds(int value) {
123 m_phase1LifetimeSecondsHasBeenSet = true;
124 m_phase1LifetimeSeconds = value;
125 }
128 return *this;
129 }
131
133
139 inline int GetPhase2LifetimeSeconds() const { return m_phase2LifetimeSeconds; }
140 inline bool Phase2LifetimeSecondsHasBeenSet() const { return m_phase2LifetimeSecondsHasBeenSet; }
141 inline void SetPhase2LifetimeSeconds(int value) {
142 m_phase2LifetimeSecondsHasBeenSet = true;
143 m_phase2LifetimeSeconds = value;
144 }
147 return *this;
148 }
150
152
160 inline int GetRekeyMarginTimeSeconds() const { return m_rekeyMarginTimeSeconds; }
161 inline bool RekeyMarginTimeSecondsHasBeenSet() const { return m_rekeyMarginTimeSecondsHasBeenSet; }
162 inline void SetRekeyMarginTimeSeconds(int value) {
163 m_rekeyMarginTimeSecondsHasBeenSet = true;
164 m_rekeyMarginTimeSeconds = value;
165 }
168 return *this;
169 }
171
173
179 inline int GetRekeyFuzzPercentage() const { return m_rekeyFuzzPercentage; }
180 inline bool RekeyFuzzPercentageHasBeenSet() const { return m_rekeyFuzzPercentageHasBeenSet; }
181 inline void SetRekeyFuzzPercentage(int value) {
182 m_rekeyFuzzPercentageHasBeenSet = true;
183 m_rekeyFuzzPercentage = value;
184 }
187 return *this;
188 }
190
192
196 inline int GetReplayWindowSize() const { return m_replayWindowSize; }
197 inline bool ReplayWindowSizeHasBeenSet() const { return m_replayWindowSizeHasBeenSet; }
198 inline void SetReplayWindowSize(int value) {
199 m_replayWindowSizeHasBeenSet = true;
200 m_replayWindowSize = value;
201 }
203 SetReplayWindowSize(value);
204 return *this;
205 }
207
209
215 inline int GetDPDTimeoutSeconds() const { return m_dPDTimeoutSeconds; }
216 inline bool DPDTimeoutSecondsHasBeenSet() const { return m_dPDTimeoutSecondsHasBeenSet; }
217 inline void SetDPDTimeoutSeconds(int value) {
218 m_dPDTimeoutSecondsHasBeenSet = true;
219 m_dPDTimeoutSeconds = value;
220 }
223 return *this;
224 }
226
228
234 inline const Aws::String& GetDPDTimeoutAction() const { return m_dPDTimeoutAction; }
235 inline bool DPDTimeoutActionHasBeenSet() const { return m_dPDTimeoutActionHasBeenSet; }
236 template <typename DPDTimeoutActionT = Aws::String>
237 void SetDPDTimeoutAction(DPDTimeoutActionT&& value) {
238 m_dPDTimeoutActionHasBeenSet = true;
239 m_dPDTimeoutAction = std::forward<DPDTimeoutActionT>(value);
240 }
241 template <typename DPDTimeoutActionT = Aws::String>
243 SetDPDTimeoutAction(std::forward<DPDTimeoutActionT>(value));
244 return *this;
245 }
247
249
256 return m_phase1EncryptionAlgorithms;
257 }
258 inline bool Phase1EncryptionAlgorithmsHasBeenSet() const { return m_phase1EncryptionAlgorithmsHasBeenSet; }
259 template <typename Phase1EncryptionAlgorithmsT = Aws::Vector<Phase1EncryptionAlgorithmsRequestListValue>>
260 void SetPhase1EncryptionAlgorithms(Phase1EncryptionAlgorithmsT&& value) {
261 m_phase1EncryptionAlgorithmsHasBeenSet = true;
262 m_phase1EncryptionAlgorithms = std::forward<Phase1EncryptionAlgorithmsT>(value);
263 }
264 template <typename Phase1EncryptionAlgorithmsT = Aws::Vector<Phase1EncryptionAlgorithmsRequestListValue>>
266 SetPhase1EncryptionAlgorithms(std::forward<Phase1EncryptionAlgorithmsT>(value));
267 return *this;
268 }
269 template <typename Phase1EncryptionAlgorithmsT = Phase1EncryptionAlgorithmsRequestListValue>
271 m_phase1EncryptionAlgorithmsHasBeenSet = true;
272 m_phase1EncryptionAlgorithms.emplace_back(std::forward<Phase1EncryptionAlgorithmsT>(value));
273 return *this;
274 }
276
278
285 return m_phase2EncryptionAlgorithms;
286 }
287 inline bool Phase2EncryptionAlgorithmsHasBeenSet() const { return m_phase2EncryptionAlgorithmsHasBeenSet; }
288 template <typename Phase2EncryptionAlgorithmsT = Aws::Vector<Phase2EncryptionAlgorithmsRequestListValue>>
289 void SetPhase2EncryptionAlgorithms(Phase2EncryptionAlgorithmsT&& value) {
290 m_phase2EncryptionAlgorithmsHasBeenSet = true;
291 m_phase2EncryptionAlgorithms = std::forward<Phase2EncryptionAlgorithmsT>(value);
292 }
293 template <typename Phase2EncryptionAlgorithmsT = Aws::Vector<Phase2EncryptionAlgorithmsRequestListValue>>
295 SetPhase2EncryptionAlgorithms(std::forward<Phase2EncryptionAlgorithmsT>(value));
296 return *this;
297 }
298 template <typename Phase2EncryptionAlgorithmsT = Phase2EncryptionAlgorithmsRequestListValue>
300 m_phase2EncryptionAlgorithmsHasBeenSet = true;
301 m_phase2EncryptionAlgorithms.emplace_back(std::forward<Phase2EncryptionAlgorithmsT>(value));
302 return *this;
303 }
305
307
313 return m_phase1IntegrityAlgorithms;
314 }
315 inline bool Phase1IntegrityAlgorithmsHasBeenSet() const { return m_phase1IntegrityAlgorithmsHasBeenSet; }
316 template <typename Phase1IntegrityAlgorithmsT = Aws::Vector<Phase1IntegrityAlgorithmsRequestListValue>>
317 void SetPhase1IntegrityAlgorithms(Phase1IntegrityAlgorithmsT&& value) {
318 m_phase1IntegrityAlgorithmsHasBeenSet = true;
319 m_phase1IntegrityAlgorithms = std::forward<Phase1IntegrityAlgorithmsT>(value);
320 }
321 template <typename Phase1IntegrityAlgorithmsT = Aws::Vector<Phase1IntegrityAlgorithmsRequestListValue>>
323 SetPhase1IntegrityAlgorithms(std::forward<Phase1IntegrityAlgorithmsT>(value));
324 return *this;
325 }
326 template <typename Phase1IntegrityAlgorithmsT = Phase1IntegrityAlgorithmsRequestListValue>
328 m_phase1IntegrityAlgorithmsHasBeenSet = true;
329 m_phase1IntegrityAlgorithms.emplace_back(std::forward<Phase1IntegrityAlgorithmsT>(value));
330 return *this;
331 }
333
335
341 return m_phase2IntegrityAlgorithms;
342 }
343 inline bool Phase2IntegrityAlgorithmsHasBeenSet() const { return m_phase2IntegrityAlgorithmsHasBeenSet; }
344 template <typename Phase2IntegrityAlgorithmsT = Aws::Vector<Phase2IntegrityAlgorithmsRequestListValue>>
345 void SetPhase2IntegrityAlgorithms(Phase2IntegrityAlgorithmsT&& value) {
346 m_phase2IntegrityAlgorithmsHasBeenSet = true;
347 m_phase2IntegrityAlgorithms = std::forward<Phase2IntegrityAlgorithmsT>(value);
348 }
349 template <typename Phase2IntegrityAlgorithmsT = Aws::Vector<Phase2IntegrityAlgorithmsRequestListValue>>
351 SetPhase2IntegrityAlgorithms(std::forward<Phase2IntegrityAlgorithmsT>(value));
352 return *this;
353 }
354 template <typename Phase2IntegrityAlgorithmsT = Phase2IntegrityAlgorithmsRequestListValue>
356 m_phase2IntegrityAlgorithmsHasBeenSet = true;
357 m_phase2IntegrityAlgorithms.emplace_back(std::forward<Phase2IntegrityAlgorithmsT>(value));
358 return *this;
359 }
361
363
370 inline const Aws::Vector<Phase1DHGroupNumbersRequestListValue>& GetPhase1DHGroupNumbers() const { return m_phase1DHGroupNumbers; }
371 inline bool Phase1DHGroupNumbersHasBeenSet() const { return m_phase1DHGroupNumbersHasBeenSet; }
372 template <typename Phase1DHGroupNumbersT = Aws::Vector<Phase1DHGroupNumbersRequestListValue>>
373 void SetPhase1DHGroupNumbers(Phase1DHGroupNumbersT&& value) {
374 m_phase1DHGroupNumbersHasBeenSet = true;
375 m_phase1DHGroupNumbers = std::forward<Phase1DHGroupNumbersT>(value);
376 }
377 template <typename Phase1DHGroupNumbersT = Aws::Vector<Phase1DHGroupNumbersRequestListValue>>
379 SetPhase1DHGroupNumbers(std::forward<Phase1DHGroupNumbersT>(value));
380 return *this;
381 }
382 template <typename Phase1DHGroupNumbersT = Phase1DHGroupNumbersRequestListValue>
384 m_phase1DHGroupNumbersHasBeenSet = true;
385 m_phase1DHGroupNumbers.emplace_back(std::forward<Phase1DHGroupNumbersT>(value));
386 return *this;
387 }
389
391
398 inline const Aws::Vector<Phase2DHGroupNumbersRequestListValue>& GetPhase2DHGroupNumbers() const { return m_phase2DHGroupNumbers; }
399 inline bool Phase2DHGroupNumbersHasBeenSet() const { return m_phase2DHGroupNumbersHasBeenSet; }
400 template <typename Phase2DHGroupNumbersT = Aws::Vector<Phase2DHGroupNumbersRequestListValue>>
401 void SetPhase2DHGroupNumbers(Phase2DHGroupNumbersT&& value) {
402 m_phase2DHGroupNumbersHasBeenSet = true;
403 m_phase2DHGroupNumbers = std::forward<Phase2DHGroupNumbersT>(value);
404 }
405 template <typename Phase2DHGroupNumbersT = Aws::Vector<Phase2DHGroupNumbersRequestListValue>>
407 SetPhase2DHGroupNumbers(std::forward<Phase2DHGroupNumbersT>(value));
408 return *this;
409 }
410 template <typename Phase2DHGroupNumbersT = Phase2DHGroupNumbersRequestListValue>
412 m_phase2DHGroupNumbersHasBeenSet = true;
413 m_phase2DHGroupNumbers.emplace_back(std::forward<Phase2DHGroupNumbersT>(value));
414 return *this;
415 }
417
419
423 inline const Aws::Vector<IKEVersionsRequestListValue>& GetIKEVersions() const { return m_iKEVersions; }
424 inline bool IKEVersionsHasBeenSet() const { return m_iKEVersionsHasBeenSet; }
425 template <typename IKEVersionsT = Aws::Vector<IKEVersionsRequestListValue>>
426 void SetIKEVersions(IKEVersionsT&& value) {
427 m_iKEVersionsHasBeenSet = true;
428 m_iKEVersions = std::forward<IKEVersionsT>(value);
429 }
430 template <typename IKEVersionsT = Aws::Vector<IKEVersionsRequestListValue>>
432 SetIKEVersions(std::forward<IKEVersionsT>(value));
433 return *this;
434 }
435 template <typename IKEVersionsT = IKEVersionsRequestListValue>
437 m_iKEVersionsHasBeenSet = true;
438 m_iKEVersions.emplace_back(std::forward<IKEVersionsT>(value));
439 return *this;
440 }
442
444
451 inline const Aws::String& GetStartupAction() const { return m_startupAction; }
452 inline bool StartupActionHasBeenSet() const { return m_startupActionHasBeenSet; }
453 template <typename StartupActionT = Aws::String>
454 void SetStartupAction(StartupActionT&& value) {
455 m_startupActionHasBeenSet = true;
456 m_startupAction = std::forward<StartupActionT>(value);
457 }
458 template <typename StartupActionT = Aws::String>
460 SetStartupAction(std::forward<StartupActionT>(value));
461 return *this;
462 }
464
466
469 inline const VpnTunnelLogOptionsSpecification& GetLogOptions() const { return m_logOptions; }
470 inline bool LogOptionsHasBeenSet() const { return m_logOptionsHasBeenSet; }
471 template <typename LogOptionsT = VpnTunnelLogOptionsSpecification>
472 void SetLogOptions(LogOptionsT&& value) {
473 m_logOptionsHasBeenSet = true;
474 m_logOptions = std::forward<LogOptionsT>(value);
475 }
476 template <typename LogOptionsT = VpnTunnelLogOptionsSpecification>
478 SetLogOptions(std::forward<LogOptionsT>(value));
479 return *this;
480 }
482
484
487 inline bool GetEnableTunnelLifecycleControl() const { return m_enableTunnelLifecycleControl; }
488 inline bool EnableTunnelLifecycleControlHasBeenSet() const { return m_enableTunnelLifecycleControlHasBeenSet; }
489 inline void SetEnableTunnelLifecycleControl(bool value) {
490 m_enableTunnelLifecycleControlHasBeenSet = true;
491 m_enableTunnelLifecycleControl = value;
492 }
495 return *this;
496 }
498 private:
499 Aws::String m_tunnelInsideCidr;
500
501 Aws::String m_tunnelInsideIpv6Cidr;
502
503 Aws::String m_preSharedKey;
504
505 int m_phase1LifetimeSeconds{0};
506
507 int m_phase2LifetimeSeconds{0};
508
509 int m_rekeyMarginTimeSeconds{0};
510
511 int m_rekeyFuzzPercentage{0};
512
513 int m_replayWindowSize{0};
514
515 int m_dPDTimeoutSeconds{0};
516
517 Aws::String m_dPDTimeoutAction;
518
520
522
524
526
528
530
532
533 Aws::String m_startupAction;
534
535 VpnTunnelLogOptionsSpecification m_logOptions;
536
537 bool m_enableTunnelLifecycleControl{false};
538 bool m_tunnelInsideCidrHasBeenSet = false;
539 bool m_tunnelInsideIpv6CidrHasBeenSet = false;
540 bool m_preSharedKeyHasBeenSet = false;
541 bool m_phase1LifetimeSecondsHasBeenSet = false;
542 bool m_phase2LifetimeSecondsHasBeenSet = false;
543 bool m_rekeyMarginTimeSecondsHasBeenSet = false;
544 bool m_rekeyFuzzPercentageHasBeenSet = false;
545 bool m_replayWindowSizeHasBeenSet = false;
546 bool m_dPDTimeoutSecondsHasBeenSet = false;
547 bool m_dPDTimeoutActionHasBeenSet = false;
548 bool m_phase1EncryptionAlgorithmsHasBeenSet = false;
549 bool m_phase2EncryptionAlgorithmsHasBeenSet = false;
550 bool m_phase1IntegrityAlgorithmsHasBeenSet = false;
551 bool m_phase2IntegrityAlgorithmsHasBeenSet = false;
552 bool m_phase1DHGroupNumbersHasBeenSet = false;
553 bool m_phase2DHGroupNumbersHasBeenSet = false;
554 bool m_iKEVersionsHasBeenSet = false;
555 bool m_startupActionHasBeenSet = false;
556 bool m_logOptionsHasBeenSet = false;
557 bool m_enableTunnelLifecycleControlHasBeenSet = false;
558};
559
560} // namespace Model
561} // namespace EC2
562} // namespace Aws
const Aws::Vector< Phase2EncryptionAlgorithmsRequestListValue > & GetPhase2EncryptionAlgorithms() const
ModifyVpnTunnelOptionsSpecification & WithPhase2LifetimeSeconds(int value)
const VpnTunnelLogOptionsSpecification & GetLogOptions() const
ModifyVpnTunnelOptionsSpecification & WithPhase2EncryptionAlgorithms(Phase2EncryptionAlgorithmsT &&value)
ModifyVpnTunnelOptionsSpecification & AddPhase2IntegrityAlgorithms(Phase2IntegrityAlgorithmsT &&value)
const Aws::Vector< IKEVersionsRequestListValue > & GetIKEVersions() const
const Aws::Vector< Phase2IntegrityAlgorithmsRequestListValue > & GetPhase2IntegrityAlgorithms() const
ModifyVpnTunnelOptionsSpecification & AddIKEVersions(IKEVersionsT &&value)
ModifyVpnTunnelOptionsSpecification & WithPreSharedKey(PreSharedKeyT &&value)
ModifyVpnTunnelOptionsSpecification & WithTunnelInsideIpv6Cidr(TunnelInsideIpv6CidrT &&value)
ModifyVpnTunnelOptionsSpecification & WithReplayWindowSize(int value)
ModifyVpnTunnelOptionsSpecification & WithPhase1IntegrityAlgorithms(Phase1IntegrityAlgorithmsT &&value)
ModifyVpnTunnelOptionsSpecification & WithRekeyMarginTimeSeconds(int value)
ModifyVpnTunnelOptionsSpecification & WithPhase1LifetimeSeconds(int value)
ModifyVpnTunnelOptionsSpecification & WithPhase1DHGroupNumbers(Phase1DHGroupNumbersT &&value)
ModifyVpnTunnelOptionsSpecification & WithDPDTimeoutSeconds(int value)
AWS_EC2_API ModifyVpnTunnelOptionsSpecification & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ModifyVpnTunnelOptionsSpecification & WithPhase1EncryptionAlgorithms(Phase1EncryptionAlgorithmsT &&value)
ModifyVpnTunnelOptionsSpecification & WithPhase2IntegrityAlgorithms(Phase2IntegrityAlgorithmsT &&value)
const Aws::Vector< Phase1EncryptionAlgorithmsRequestListValue > & GetPhase1EncryptionAlgorithms() const
const Aws::Vector< Phase2DHGroupNumbersRequestListValue > & GetPhase2DHGroupNumbers() const
ModifyVpnTunnelOptionsSpecification & AddPhase1IntegrityAlgorithms(Phase1IntegrityAlgorithmsT &&value)
const Aws::Vector< Phase1IntegrityAlgorithmsRequestListValue > & GetPhase1IntegrityAlgorithms() const
ModifyVpnTunnelOptionsSpecification & WithTunnelInsideCidr(TunnelInsideCidrT &&value)
ModifyVpnTunnelOptionsSpecification & WithStartupAction(StartupActionT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::Vector< Phase1DHGroupNumbersRequestListValue > & GetPhase1DHGroupNumbers() const
ModifyVpnTunnelOptionsSpecification & WithLogOptions(LogOptionsT &&value)
ModifyVpnTunnelOptionsSpecification & WithRekeyFuzzPercentage(int value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
ModifyVpnTunnelOptionsSpecification & WithPhase2DHGroupNumbers(Phase2DHGroupNumbersT &&value)
ModifyVpnTunnelOptionsSpecification & WithEnableTunnelLifecycleControl(bool value)
ModifyVpnTunnelOptionsSpecification & WithDPDTimeoutAction(DPDTimeoutActionT &&value)
ModifyVpnTunnelOptionsSpecification & WithIKEVersions(IKEVersionsT &&value)
ModifyVpnTunnelOptionsSpecification & AddPhase1EncryptionAlgorithms(Phase1EncryptionAlgorithmsT &&value)
ModifyVpnTunnelOptionsSpecification & AddPhase2DHGroupNumbers(Phase2DHGroupNumbersT &&value)
AWS_EC2_API ModifyVpnTunnelOptionsSpecification(const Aws::Utils::Xml::XmlNode &xmlNode)
ModifyVpnTunnelOptionsSpecification & AddPhase2EncryptionAlgorithms(Phase2EncryptionAlgorithmsT &&value)
ModifyVpnTunnelOptionsSpecification & AddPhase1DHGroupNumbers(Phase1DHGroupNumbersT &&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