AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
ModifyTransitGatewayOptions.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/AutoAcceptSharedAttachmentsValue.h>
12#include <aws/ec2/model/DefaultRouteTableAssociationValue.h>
13#include <aws/ec2/model/DefaultRouteTablePropagationValue.h>
14#include <aws/ec2/model/DnsSupportValue.h>
15#include <aws/ec2/model/EncryptionSupportOptionValue.h>
16#include <aws/ec2/model/SecurityGroupReferencingSupportValue.h>
17#include <aws/ec2/model/VpnEcmpSupportValue.h>
18
19#include <utility>
20
21namespace Aws {
22namespace Utils {
23namespace Xml {
24class XmlNode;
25} // namespace Xml
26} // namespace Utils
27namespace EC2 {
28namespace Model {
29
36 public:
37 AWS_EC2_API ModifyTransitGatewayOptions() = 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
45
49 inline const Aws::Vector<Aws::String>& GetAddTransitGatewayCidrBlocks() const { return m_addTransitGatewayCidrBlocks; }
50 inline bool AddTransitGatewayCidrBlocksHasBeenSet() const { return m_addTransitGatewayCidrBlocksHasBeenSet; }
51 template <typename AddTransitGatewayCidrBlocksT = Aws::Vector<Aws::String>>
52 void SetAddTransitGatewayCidrBlocks(AddTransitGatewayCidrBlocksT&& value) {
53 m_addTransitGatewayCidrBlocksHasBeenSet = true;
54 m_addTransitGatewayCidrBlocks = std::forward<AddTransitGatewayCidrBlocksT>(value);
55 }
56 template <typename AddTransitGatewayCidrBlocksT = Aws::Vector<Aws::String>>
57 ModifyTransitGatewayOptions& WithAddTransitGatewayCidrBlocks(AddTransitGatewayCidrBlocksT&& value) {
58 SetAddTransitGatewayCidrBlocks(std::forward<AddTransitGatewayCidrBlocksT>(value));
59 return *this;
60 }
61 template <typename AddTransitGatewayCidrBlocksT = Aws::String>
62 ModifyTransitGatewayOptions& AddAddTransitGatewayCidrBlocks(AddTransitGatewayCidrBlocksT&& value) {
63 m_addTransitGatewayCidrBlocksHasBeenSet = true;
64 m_addTransitGatewayCidrBlocks.emplace_back(std::forward<AddTransitGatewayCidrBlocksT>(value));
65 return *this;
66 }
68
70
73 inline const Aws::Vector<Aws::String>& GetRemoveTransitGatewayCidrBlocks() const { return m_removeTransitGatewayCidrBlocks; }
74 inline bool RemoveTransitGatewayCidrBlocksHasBeenSet() const { return m_removeTransitGatewayCidrBlocksHasBeenSet; }
75 template <typename RemoveTransitGatewayCidrBlocksT = Aws::Vector<Aws::String>>
76 void SetRemoveTransitGatewayCidrBlocks(RemoveTransitGatewayCidrBlocksT&& value) {
77 m_removeTransitGatewayCidrBlocksHasBeenSet = true;
78 m_removeTransitGatewayCidrBlocks = std::forward<RemoveTransitGatewayCidrBlocksT>(value);
79 }
80 template <typename RemoveTransitGatewayCidrBlocksT = Aws::Vector<Aws::String>>
81 ModifyTransitGatewayOptions& WithRemoveTransitGatewayCidrBlocks(RemoveTransitGatewayCidrBlocksT&& value) {
82 SetRemoveTransitGatewayCidrBlocks(std::forward<RemoveTransitGatewayCidrBlocksT>(value));
83 return *this;
84 }
85 template <typename RemoveTransitGatewayCidrBlocksT = Aws::String>
86 ModifyTransitGatewayOptions& AddRemoveTransitGatewayCidrBlocks(RemoveTransitGatewayCidrBlocksT&& value) {
87 m_removeTransitGatewayCidrBlocksHasBeenSet = true;
88 m_removeTransitGatewayCidrBlocks.emplace_back(std::forward<RemoveTransitGatewayCidrBlocksT>(value));
89 return *this;
90 }
92
94
97 inline VpnEcmpSupportValue GetVpnEcmpSupport() const { return m_vpnEcmpSupport; }
98 inline bool VpnEcmpSupportHasBeenSet() const { return m_vpnEcmpSupportHasBeenSet; }
100 m_vpnEcmpSupportHasBeenSet = true;
101 m_vpnEcmpSupport = value;
102 }
104 SetVpnEcmpSupport(value);
105 return *this;
106 }
108
110
113 inline DnsSupportValue GetDnsSupport() const { return m_dnsSupport; }
114 inline bool DnsSupportHasBeenSet() const { return m_dnsSupportHasBeenSet; }
115 inline void SetDnsSupport(DnsSupportValue value) {
116 m_dnsSupportHasBeenSet = true;
117 m_dnsSupport = value;
118 }
120 SetDnsSupport(value);
121 return *this;
122 }
124
126
134 inline SecurityGroupReferencingSupportValue GetSecurityGroupReferencingSupport() const { return m_securityGroupReferencingSupport; }
135 inline bool SecurityGroupReferencingSupportHasBeenSet() const { return m_securityGroupReferencingSupportHasBeenSet; }
137 m_securityGroupReferencingSupportHasBeenSet = true;
138 m_securityGroupReferencingSupport = value;
139 }
142 return *this;
143 }
145
147
150 inline AutoAcceptSharedAttachmentsValue GetAutoAcceptSharedAttachments() const { return m_autoAcceptSharedAttachments; }
151 inline bool AutoAcceptSharedAttachmentsHasBeenSet() const { return m_autoAcceptSharedAttachmentsHasBeenSet; }
153 m_autoAcceptSharedAttachmentsHasBeenSet = true;
154 m_autoAcceptSharedAttachments = value;
155 }
158 return *this;
159 }
161
163
167 inline DefaultRouteTableAssociationValue GetDefaultRouteTableAssociation() const { return m_defaultRouteTableAssociation; }
168 inline bool DefaultRouteTableAssociationHasBeenSet() const { return m_defaultRouteTableAssociationHasBeenSet; }
170 m_defaultRouteTableAssociationHasBeenSet = true;
171 m_defaultRouteTableAssociation = value;
172 }
175 return *this;
176 }
178
180
183 inline const Aws::String& GetAssociationDefaultRouteTableId() const { return m_associationDefaultRouteTableId; }
184 inline bool AssociationDefaultRouteTableIdHasBeenSet() const { return m_associationDefaultRouteTableIdHasBeenSet; }
185 template <typename AssociationDefaultRouteTableIdT = Aws::String>
186 void SetAssociationDefaultRouteTableId(AssociationDefaultRouteTableIdT&& value) {
187 m_associationDefaultRouteTableIdHasBeenSet = true;
188 m_associationDefaultRouteTableId = std::forward<AssociationDefaultRouteTableIdT>(value);
189 }
190 template <typename AssociationDefaultRouteTableIdT = Aws::String>
191 ModifyTransitGatewayOptions& WithAssociationDefaultRouteTableId(AssociationDefaultRouteTableIdT&& value) {
192 SetAssociationDefaultRouteTableId(std::forward<AssociationDefaultRouteTableIdT>(value));
193 return *this;
194 }
196
198
205 inline DefaultRouteTablePropagationValue GetDefaultRouteTablePropagation() const { return m_defaultRouteTablePropagation; }
206 inline bool DefaultRouteTablePropagationHasBeenSet() const { return m_defaultRouteTablePropagationHasBeenSet; }
208 m_defaultRouteTablePropagationHasBeenSet = true;
209 m_defaultRouteTablePropagation = value;
210 }
213 return *this;
214 }
216
218
221 inline const Aws::String& GetPropagationDefaultRouteTableId() const { return m_propagationDefaultRouteTableId; }
222 inline bool PropagationDefaultRouteTableIdHasBeenSet() const { return m_propagationDefaultRouteTableIdHasBeenSet; }
223 template <typename PropagationDefaultRouteTableIdT = Aws::String>
224 void SetPropagationDefaultRouteTableId(PropagationDefaultRouteTableIdT&& value) {
225 m_propagationDefaultRouteTableIdHasBeenSet = true;
226 m_propagationDefaultRouteTableId = std::forward<PropagationDefaultRouteTableIdT>(value);
227 }
228 template <typename PropagationDefaultRouteTableIdT = Aws::String>
229 ModifyTransitGatewayOptions& WithPropagationDefaultRouteTableId(PropagationDefaultRouteTableIdT&& value) {
230 SetPropagationDefaultRouteTableId(std::forward<PropagationDefaultRouteTableIdT>(value));
231 return *this;
232 }
234
236
246 inline long long GetAmazonSideAsn() const { return m_amazonSideAsn; }
247 inline bool AmazonSideAsnHasBeenSet() const { return m_amazonSideAsnHasBeenSet; }
248 inline void SetAmazonSideAsn(long long value) {
249 m_amazonSideAsnHasBeenSet = true;
250 m_amazonSideAsn = value;
251 }
253 SetAmazonSideAsn(value);
254 return *this;
255 }
257
259
262 inline EncryptionSupportOptionValue GetEncryptionSupport() const { return m_encryptionSupport; }
263 inline bool EncryptionSupportHasBeenSet() const { return m_encryptionSupportHasBeenSet; }
265 m_encryptionSupportHasBeenSet = true;
266 m_encryptionSupport = value;
267 }
270 return *this;
271 }
273 private:
274 Aws::Vector<Aws::String> m_addTransitGatewayCidrBlocks;
275
276 Aws::Vector<Aws::String> m_removeTransitGatewayCidrBlocks;
277
279
281
283
285
287
288 Aws::String m_associationDefaultRouteTableId;
289
291
292 Aws::String m_propagationDefaultRouteTableId;
293
294 long long m_amazonSideAsn{0};
295
297 bool m_addTransitGatewayCidrBlocksHasBeenSet = false;
298 bool m_removeTransitGatewayCidrBlocksHasBeenSet = false;
299 bool m_vpnEcmpSupportHasBeenSet = false;
300 bool m_dnsSupportHasBeenSet = false;
301 bool m_securityGroupReferencingSupportHasBeenSet = false;
302 bool m_autoAcceptSharedAttachmentsHasBeenSet = false;
303 bool m_defaultRouteTableAssociationHasBeenSet = false;
304 bool m_associationDefaultRouteTableIdHasBeenSet = false;
305 bool m_defaultRouteTablePropagationHasBeenSet = false;
306 bool m_propagationDefaultRouteTableIdHasBeenSet = false;
307 bool m_amazonSideAsnHasBeenSet = false;
308 bool m_encryptionSupportHasBeenSet = false;
309};
310
311} // namespace Model
312} // namespace EC2
313} // namespace Aws
EncryptionSupportOptionValue GetEncryptionSupport() const
AutoAcceptSharedAttachmentsValue GetAutoAcceptSharedAttachments() const
const Aws::Vector< Aws::String > & GetAddTransitGatewayCidrBlocks() const
AWS_EC2_API ModifyTransitGatewayOptions & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API ModifyTransitGatewayOptions()=default
ModifyTransitGatewayOptions & WithDefaultRouteTableAssociation(DefaultRouteTableAssociationValue value)
void SetAddTransitGatewayCidrBlocks(AddTransitGatewayCidrBlocksT &&value)
ModifyTransitGatewayOptions & WithPropagationDefaultRouteTableId(PropagationDefaultRouteTableIdT &&value)
AWS_EC2_API ModifyTransitGatewayOptions(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetPropagationDefaultRouteTableId(PropagationDefaultRouteTableIdT &&value)
ModifyTransitGatewayOptions & WithEncryptionSupport(EncryptionSupportOptionValue value)
ModifyTransitGatewayOptions & WithSecurityGroupReferencingSupport(SecurityGroupReferencingSupportValue value)
ModifyTransitGatewayOptions & WithAssociationDefaultRouteTableId(AssociationDefaultRouteTableIdT &&value)
ModifyTransitGatewayOptions & AddRemoveTransitGatewayCidrBlocks(RemoveTransitGatewayCidrBlocksT &&value)
DefaultRouteTableAssociationValue GetDefaultRouteTableAssociation() const
void SetDefaultRouteTableAssociation(DefaultRouteTableAssociationValue value)
void SetAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue value)
void SetDefaultRouteTablePropagation(DefaultRouteTablePropagationValue value)
void SetSecurityGroupReferencingSupport(SecurityGroupReferencingSupportValue value)
const Aws::Vector< Aws::String > & GetRemoveTransitGatewayCidrBlocks() const
DefaultRouteTablePropagationValue GetDefaultRouteTablePropagation() const
ModifyTransitGatewayOptions & WithAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue value)
ModifyTransitGatewayOptions & WithVpnEcmpSupport(VpnEcmpSupportValue value)
void SetAssociationDefaultRouteTableId(AssociationDefaultRouteTableIdT &&value)
ModifyTransitGatewayOptions & WithDefaultRouteTablePropagation(DefaultRouteTablePropagationValue value)
ModifyTransitGatewayOptions & WithAmazonSideAsn(long long value)
ModifyTransitGatewayOptions & WithAddTransitGatewayCidrBlocks(AddTransitGatewayCidrBlocksT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
ModifyTransitGatewayOptions & WithDnsSupport(DnsSupportValue value)
ModifyTransitGatewayOptions & WithRemoveTransitGatewayCidrBlocks(RemoveTransitGatewayCidrBlocksT &&value)
void SetRemoveTransitGatewayCidrBlocks(RemoveTransitGatewayCidrBlocksT &&value)
ModifyTransitGatewayOptions & AddAddTransitGatewayCidrBlocks(AddTransitGatewayCidrBlocksT &&value)
void SetEncryptionSupport(EncryptionSupportOptionValue value)
SecurityGroupReferencingSupportValue GetSecurityGroupReferencingSupport() 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