1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
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/AWSVector.h>
10 #include <aws/ec2/model/AutoAcceptSharedAttachmentsValue.h>
11 #include <aws/ec2/model/DefaultRouteTableAssociationValue.h>
12 #include <aws/core/utils/memory/stl/AWSString.h>
13 #include <aws/ec2/model/DefaultRouteTablePropagationValue.h>
14 #include <aws/ec2/model/VpnEcmpSupportValue.h>
15 #include <aws/ec2/model/DnsSupportValue.h>
16 #include <aws/ec2/model/MulticastSupportValue.h>
17 #include <utility>
18 
19 namespace Aws
20 {
21 namespace Utils
22 {
23 namespace Xml
24 {
25   class XmlNode;
26 } // namespace Xml
27 } // namespace Utils
28 namespace EC2
29 {
30 namespace Model
31 {
32 
33   /**
34    * <p>Describes the options for a transit gateway.</p><p><h3>See Also:</h3>   <a
35    * href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayOptions">AWS
36    * API Reference</a></p>
37    */
38   class AWS_EC2_API TransitGatewayOptions
39   {
40   public:
41     TransitGatewayOptions();
42     TransitGatewayOptions(const Aws::Utils::Xml::XmlNode& xmlNode);
43     TransitGatewayOptions& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
44 
45     void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
46     void OutputToStream(Aws::OStream& oStream, const char* location) const;
47 
48 
49     /**
50      * <p>A private Autonomous System Number (ASN) for the Amazon side of a BGP
51      * session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to
52      * 4294967294 for 32-bit ASNs.</p>
53      */
GetAmazonSideAsn()54     inline long long GetAmazonSideAsn() const{ return m_amazonSideAsn; }
55 
56     /**
57      * <p>A private Autonomous System Number (ASN) for the Amazon side of a BGP
58      * session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to
59      * 4294967294 for 32-bit ASNs.</p>
60      */
AmazonSideAsnHasBeenSet()61     inline bool AmazonSideAsnHasBeenSet() const { return m_amazonSideAsnHasBeenSet; }
62 
63     /**
64      * <p>A private Autonomous System Number (ASN) for the Amazon side of a BGP
65      * session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to
66      * 4294967294 for 32-bit ASNs.</p>
67      */
SetAmazonSideAsn(long long value)68     inline void SetAmazonSideAsn(long long value) { m_amazonSideAsnHasBeenSet = true; m_amazonSideAsn = value; }
69 
70     /**
71      * <p>A private Autonomous System Number (ASN) for the Amazon side of a BGP
72      * session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to
73      * 4294967294 for 32-bit ASNs.</p>
74      */
WithAmazonSideAsn(long long value)75     inline TransitGatewayOptions& WithAmazonSideAsn(long long value) { SetAmazonSideAsn(value); return *this;}
76 
77 
78     /**
79      * <p>The transit gateway CIDR blocks.</p>
80      */
GetTransitGatewayCidrBlocks()81     inline const Aws::Vector<Aws::String>& GetTransitGatewayCidrBlocks() const{ return m_transitGatewayCidrBlocks; }
82 
83     /**
84      * <p>The transit gateway CIDR blocks.</p>
85      */
TransitGatewayCidrBlocksHasBeenSet()86     inline bool TransitGatewayCidrBlocksHasBeenSet() const { return m_transitGatewayCidrBlocksHasBeenSet; }
87 
88     /**
89      * <p>The transit gateway CIDR blocks.</p>
90      */
SetTransitGatewayCidrBlocks(const Aws::Vector<Aws::String> & value)91     inline void SetTransitGatewayCidrBlocks(const Aws::Vector<Aws::String>& value) { m_transitGatewayCidrBlocksHasBeenSet = true; m_transitGatewayCidrBlocks = value; }
92 
93     /**
94      * <p>The transit gateway CIDR blocks.</p>
95      */
SetTransitGatewayCidrBlocks(Aws::Vector<Aws::String> && value)96     inline void SetTransitGatewayCidrBlocks(Aws::Vector<Aws::String>&& value) { m_transitGatewayCidrBlocksHasBeenSet = true; m_transitGatewayCidrBlocks = std::move(value); }
97 
98     /**
99      * <p>The transit gateway CIDR blocks.</p>
100      */
WithTransitGatewayCidrBlocks(const Aws::Vector<Aws::String> & value)101     inline TransitGatewayOptions& WithTransitGatewayCidrBlocks(const Aws::Vector<Aws::String>& value) { SetTransitGatewayCidrBlocks(value); return *this;}
102 
103     /**
104      * <p>The transit gateway CIDR blocks.</p>
105      */
WithTransitGatewayCidrBlocks(Aws::Vector<Aws::String> && value)106     inline TransitGatewayOptions& WithTransitGatewayCidrBlocks(Aws::Vector<Aws::String>&& value) { SetTransitGatewayCidrBlocks(std::move(value)); return *this;}
107 
108     /**
109      * <p>The transit gateway CIDR blocks.</p>
110      */
AddTransitGatewayCidrBlocks(const Aws::String & value)111     inline TransitGatewayOptions& AddTransitGatewayCidrBlocks(const Aws::String& value) { m_transitGatewayCidrBlocksHasBeenSet = true; m_transitGatewayCidrBlocks.push_back(value); return *this; }
112 
113     /**
114      * <p>The transit gateway CIDR blocks.</p>
115      */
AddTransitGatewayCidrBlocks(Aws::String && value)116     inline TransitGatewayOptions& AddTransitGatewayCidrBlocks(Aws::String&& value) { m_transitGatewayCidrBlocksHasBeenSet = true; m_transitGatewayCidrBlocks.push_back(std::move(value)); return *this; }
117 
118     /**
119      * <p>The transit gateway CIDR blocks.</p>
120      */
AddTransitGatewayCidrBlocks(const char * value)121     inline TransitGatewayOptions& AddTransitGatewayCidrBlocks(const char* value) { m_transitGatewayCidrBlocksHasBeenSet = true; m_transitGatewayCidrBlocks.push_back(value); return *this; }
122 
123 
124     /**
125      * <p>Indicates whether attachment requests are automatically accepted.</p>
126      */
GetAutoAcceptSharedAttachments()127     inline const AutoAcceptSharedAttachmentsValue& GetAutoAcceptSharedAttachments() const{ return m_autoAcceptSharedAttachments; }
128 
129     /**
130      * <p>Indicates whether attachment requests are automatically accepted.</p>
131      */
AutoAcceptSharedAttachmentsHasBeenSet()132     inline bool AutoAcceptSharedAttachmentsHasBeenSet() const { return m_autoAcceptSharedAttachmentsHasBeenSet; }
133 
134     /**
135      * <p>Indicates whether attachment requests are automatically accepted.</p>
136      */
SetAutoAcceptSharedAttachments(const AutoAcceptSharedAttachmentsValue & value)137     inline void SetAutoAcceptSharedAttachments(const AutoAcceptSharedAttachmentsValue& value) { m_autoAcceptSharedAttachmentsHasBeenSet = true; m_autoAcceptSharedAttachments = value; }
138 
139     /**
140      * <p>Indicates whether attachment requests are automatically accepted.</p>
141      */
SetAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue && value)142     inline void SetAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue&& value) { m_autoAcceptSharedAttachmentsHasBeenSet = true; m_autoAcceptSharedAttachments = std::move(value); }
143 
144     /**
145      * <p>Indicates whether attachment requests are automatically accepted.</p>
146      */
WithAutoAcceptSharedAttachments(const AutoAcceptSharedAttachmentsValue & value)147     inline TransitGatewayOptions& WithAutoAcceptSharedAttachments(const AutoAcceptSharedAttachmentsValue& value) { SetAutoAcceptSharedAttachments(value); return *this;}
148 
149     /**
150      * <p>Indicates whether attachment requests are automatically accepted.</p>
151      */
WithAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue && value)152     inline TransitGatewayOptions& WithAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue&& value) { SetAutoAcceptSharedAttachments(std::move(value)); return *this;}
153 
154 
155     /**
156      * <p>Indicates whether resource attachments are automatically associated with the
157      * default association route table.</p>
158      */
GetDefaultRouteTableAssociation()159     inline const DefaultRouteTableAssociationValue& GetDefaultRouteTableAssociation() const{ return m_defaultRouteTableAssociation; }
160 
161     /**
162      * <p>Indicates whether resource attachments are automatically associated with the
163      * default association route table.</p>
164      */
DefaultRouteTableAssociationHasBeenSet()165     inline bool DefaultRouteTableAssociationHasBeenSet() const { return m_defaultRouteTableAssociationHasBeenSet; }
166 
167     /**
168      * <p>Indicates whether resource attachments are automatically associated with the
169      * default association route table.</p>
170      */
SetDefaultRouteTableAssociation(const DefaultRouteTableAssociationValue & value)171     inline void SetDefaultRouteTableAssociation(const DefaultRouteTableAssociationValue& value) { m_defaultRouteTableAssociationHasBeenSet = true; m_defaultRouteTableAssociation = value; }
172 
173     /**
174      * <p>Indicates whether resource attachments are automatically associated with the
175      * default association route table.</p>
176      */
SetDefaultRouteTableAssociation(DefaultRouteTableAssociationValue && value)177     inline void SetDefaultRouteTableAssociation(DefaultRouteTableAssociationValue&& value) { m_defaultRouteTableAssociationHasBeenSet = true; m_defaultRouteTableAssociation = std::move(value); }
178 
179     /**
180      * <p>Indicates whether resource attachments are automatically associated with the
181      * default association route table.</p>
182      */
WithDefaultRouteTableAssociation(const DefaultRouteTableAssociationValue & value)183     inline TransitGatewayOptions& WithDefaultRouteTableAssociation(const DefaultRouteTableAssociationValue& value) { SetDefaultRouteTableAssociation(value); return *this;}
184 
185     /**
186      * <p>Indicates whether resource attachments are automatically associated with the
187      * default association route table.</p>
188      */
WithDefaultRouteTableAssociation(DefaultRouteTableAssociationValue && value)189     inline TransitGatewayOptions& WithDefaultRouteTableAssociation(DefaultRouteTableAssociationValue&& value) { SetDefaultRouteTableAssociation(std::move(value)); return *this;}
190 
191 
192     /**
193      * <p>The ID of the default association route table.</p>
194      */
GetAssociationDefaultRouteTableId()195     inline const Aws::String& GetAssociationDefaultRouteTableId() const{ return m_associationDefaultRouteTableId; }
196 
197     /**
198      * <p>The ID of the default association route table.</p>
199      */
AssociationDefaultRouteTableIdHasBeenSet()200     inline bool AssociationDefaultRouteTableIdHasBeenSet() const { return m_associationDefaultRouteTableIdHasBeenSet; }
201 
202     /**
203      * <p>The ID of the default association route table.</p>
204      */
SetAssociationDefaultRouteTableId(const Aws::String & value)205     inline void SetAssociationDefaultRouteTableId(const Aws::String& value) { m_associationDefaultRouteTableIdHasBeenSet = true; m_associationDefaultRouteTableId = value; }
206 
207     /**
208      * <p>The ID of the default association route table.</p>
209      */
SetAssociationDefaultRouteTableId(Aws::String && value)210     inline void SetAssociationDefaultRouteTableId(Aws::String&& value) { m_associationDefaultRouteTableIdHasBeenSet = true; m_associationDefaultRouteTableId = std::move(value); }
211 
212     /**
213      * <p>The ID of the default association route table.</p>
214      */
SetAssociationDefaultRouteTableId(const char * value)215     inline void SetAssociationDefaultRouteTableId(const char* value) { m_associationDefaultRouteTableIdHasBeenSet = true; m_associationDefaultRouteTableId.assign(value); }
216 
217     /**
218      * <p>The ID of the default association route table.</p>
219      */
WithAssociationDefaultRouteTableId(const Aws::String & value)220     inline TransitGatewayOptions& WithAssociationDefaultRouteTableId(const Aws::String& value) { SetAssociationDefaultRouteTableId(value); return *this;}
221 
222     /**
223      * <p>The ID of the default association route table.</p>
224      */
WithAssociationDefaultRouteTableId(Aws::String && value)225     inline TransitGatewayOptions& WithAssociationDefaultRouteTableId(Aws::String&& value) { SetAssociationDefaultRouteTableId(std::move(value)); return *this;}
226 
227     /**
228      * <p>The ID of the default association route table.</p>
229      */
WithAssociationDefaultRouteTableId(const char * value)230     inline TransitGatewayOptions& WithAssociationDefaultRouteTableId(const char* value) { SetAssociationDefaultRouteTableId(value); return *this;}
231 
232 
233     /**
234      * <p>Indicates whether resource attachments automatically propagate routes to the
235      * default propagation route table.</p>
236      */
GetDefaultRouteTablePropagation()237     inline const DefaultRouteTablePropagationValue& GetDefaultRouteTablePropagation() const{ return m_defaultRouteTablePropagation; }
238 
239     /**
240      * <p>Indicates whether resource attachments automatically propagate routes to the
241      * default propagation route table.</p>
242      */
DefaultRouteTablePropagationHasBeenSet()243     inline bool DefaultRouteTablePropagationHasBeenSet() const { return m_defaultRouteTablePropagationHasBeenSet; }
244 
245     /**
246      * <p>Indicates whether resource attachments automatically propagate routes to the
247      * default propagation route table.</p>
248      */
SetDefaultRouteTablePropagation(const DefaultRouteTablePropagationValue & value)249     inline void SetDefaultRouteTablePropagation(const DefaultRouteTablePropagationValue& value) { m_defaultRouteTablePropagationHasBeenSet = true; m_defaultRouteTablePropagation = value; }
250 
251     /**
252      * <p>Indicates whether resource attachments automatically propagate routes to the
253      * default propagation route table.</p>
254      */
SetDefaultRouteTablePropagation(DefaultRouteTablePropagationValue && value)255     inline void SetDefaultRouteTablePropagation(DefaultRouteTablePropagationValue&& value) { m_defaultRouteTablePropagationHasBeenSet = true; m_defaultRouteTablePropagation = std::move(value); }
256 
257     /**
258      * <p>Indicates whether resource attachments automatically propagate routes to the
259      * default propagation route table.</p>
260      */
WithDefaultRouteTablePropagation(const DefaultRouteTablePropagationValue & value)261     inline TransitGatewayOptions& WithDefaultRouteTablePropagation(const DefaultRouteTablePropagationValue& value) { SetDefaultRouteTablePropagation(value); return *this;}
262 
263     /**
264      * <p>Indicates whether resource attachments automatically propagate routes to the
265      * default propagation route table.</p>
266      */
WithDefaultRouteTablePropagation(DefaultRouteTablePropagationValue && value)267     inline TransitGatewayOptions& WithDefaultRouteTablePropagation(DefaultRouteTablePropagationValue&& value) { SetDefaultRouteTablePropagation(std::move(value)); return *this;}
268 
269 
270     /**
271      * <p>The ID of the default propagation route table.</p>
272      */
GetPropagationDefaultRouteTableId()273     inline const Aws::String& GetPropagationDefaultRouteTableId() const{ return m_propagationDefaultRouteTableId; }
274 
275     /**
276      * <p>The ID of the default propagation route table.</p>
277      */
PropagationDefaultRouteTableIdHasBeenSet()278     inline bool PropagationDefaultRouteTableIdHasBeenSet() const { return m_propagationDefaultRouteTableIdHasBeenSet; }
279 
280     /**
281      * <p>The ID of the default propagation route table.</p>
282      */
SetPropagationDefaultRouteTableId(const Aws::String & value)283     inline void SetPropagationDefaultRouteTableId(const Aws::String& value) { m_propagationDefaultRouteTableIdHasBeenSet = true; m_propagationDefaultRouteTableId = value; }
284 
285     /**
286      * <p>The ID of the default propagation route table.</p>
287      */
SetPropagationDefaultRouteTableId(Aws::String && value)288     inline void SetPropagationDefaultRouteTableId(Aws::String&& value) { m_propagationDefaultRouteTableIdHasBeenSet = true; m_propagationDefaultRouteTableId = std::move(value); }
289 
290     /**
291      * <p>The ID of the default propagation route table.</p>
292      */
SetPropagationDefaultRouteTableId(const char * value)293     inline void SetPropagationDefaultRouteTableId(const char* value) { m_propagationDefaultRouteTableIdHasBeenSet = true; m_propagationDefaultRouteTableId.assign(value); }
294 
295     /**
296      * <p>The ID of the default propagation route table.</p>
297      */
WithPropagationDefaultRouteTableId(const Aws::String & value)298     inline TransitGatewayOptions& WithPropagationDefaultRouteTableId(const Aws::String& value) { SetPropagationDefaultRouteTableId(value); return *this;}
299 
300     /**
301      * <p>The ID of the default propagation route table.</p>
302      */
WithPropagationDefaultRouteTableId(Aws::String && value)303     inline TransitGatewayOptions& WithPropagationDefaultRouteTableId(Aws::String&& value) { SetPropagationDefaultRouteTableId(std::move(value)); return *this;}
304 
305     /**
306      * <p>The ID of the default propagation route table.</p>
307      */
WithPropagationDefaultRouteTableId(const char * value)308     inline TransitGatewayOptions& WithPropagationDefaultRouteTableId(const char* value) { SetPropagationDefaultRouteTableId(value); return *this;}
309 
310 
311     /**
312      * <p>Indicates whether Equal Cost Multipath Protocol support is enabled.</p>
313      */
GetVpnEcmpSupport()314     inline const VpnEcmpSupportValue& GetVpnEcmpSupport() const{ return m_vpnEcmpSupport; }
315 
316     /**
317      * <p>Indicates whether Equal Cost Multipath Protocol support is enabled.</p>
318      */
VpnEcmpSupportHasBeenSet()319     inline bool VpnEcmpSupportHasBeenSet() const { return m_vpnEcmpSupportHasBeenSet; }
320 
321     /**
322      * <p>Indicates whether Equal Cost Multipath Protocol support is enabled.</p>
323      */
SetVpnEcmpSupport(const VpnEcmpSupportValue & value)324     inline void SetVpnEcmpSupport(const VpnEcmpSupportValue& value) { m_vpnEcmpSupportHasBeenSet = true; m_vpnEcmpSupport = value; }
325 
326     /**
327      * <p>Indicates whether Equal Cost Multipath Protocol support is enabled.</p>
328      */
SetVpnEcmpSupport(VpnEcmpSupportValue && value)329     inline void SetVpnEcmpSupport(VpnEcmpSupportValue&& value) { m_vpnEcmpSupportHasBeenSet = true; m_vpnEcmpSupport = std::move(value); }
330 
331     /**
332      * <p>Indicates whether Equal Cost Multipath Protocol support is enabled.</p>
333      */
WithVpnEcmpSupport(const VpnEcmpSupportValue & value)334     inline TransitGatewayOptions& WithVpnEcmpSupport(const VpnEcmpSupportValue& value) { SetVpnEcmpSupport(value); return *this;}
335 
336     /**
337      * <p>Indicates whether Equal Cost Multipath Protocol support is enabled.</p>
338      */
WithVpnEcmpSupport(VpnEcmpSupportValue && value)339     inline TransitGatewayOptions& WithVpnEcmpSupport(VpnEcmpSupportValue&& value) { SetVpnEcmpSupport(std::move(value)); return *this;}
340 
341 
342     /**
343      * <p>Indicates whether DNS support is enabled.</p>
344      */
GetDnsSupport()345     inline const DnsSupportValue& GetDnsSupport() const{ return m_dnsSupport; }
346 
347     /**
348      * <p>Indicates whether DNS support is enabled.</p>
349      */
DnsSupportHasBeenSet()350     inline bool DnsSupportHasBeenSet() const { return m_dnsSupportHasBeenSet; }
351 
352     /**
353      * <p>Indicates whether DNS support is enabled.</p>
354      */
SetDnsSupport(const DnsSupportValue & value)355     inline void SetDnsSupport(const DnsSupportValue& value) { m_dnsSupportHasBeenSet = true; m_dnsSupport = value; }
356 
357     /**
358      * <p>Indicates whether DNS support is enabled.</p>
359      */
SetDnsSupport(DnsSupportValue && value)360     inline void SetDnsSupport(DnsSupportValue&& value) { m_dnsSupportHasBeenSet = true; m_dnsSupport = std::move(value); }
361 
362     /**
363      * <p>Indicates whether DNS support is enabled.</p>
364      */
WithDnsSupport(const DnsSupportValue & value)365     inline TransitGatewayOptions& WithDnsSupport(const DnsSupportValue& value) { SetDnsSupport(value); return *this;}
366 
367     /**
368      * <p>Indicates whether DNS support is enabled.</p>
369      */
WithDnsSupport(DnsSupportValue && value)370     inline TransitGatewayOptions& WithDnsSupport(DnsSupportValue&& value) { SetDnsSupport(std::move(value)); return *this;}
371 
372 
373     /**
374      * <p>Indicates whether multicast is enabled on the transit gateway</p>
375      */
GetMulticastSupport()376     inline const MulticastSupportValue& GetMulticastSupport() const{ return m_multicastSupport; }
377 
378     /**
379      * <p>Indicates whether multicast is enabled on the transit gateway</p>
380      */
MulticastSupportHasBeenSet()381     inline bool MulticastSupportHasBeenSet() const { return m_multicastSupportHasBeenSet; }
382 
383     /**
384      * <p>Indicates whether multicast is enabled on the transit gateway</p>
385      */
SetMulticastSupport(const MulticastSupportValue & value)386     inline void SetMulticastSupport(const MulticastSupportValue& value) { m_multicastSupportHasBeenSet = true; m_multicastSupport = value; }
387 
388     /**
389      * <p>Indicates whether multicast is enabled on the transit gateway</p>
390      */
SetMulticastSupport(MulticastSupportValue && value)391     inline void SetMulticastSupport(MulticastSupportValue&& value) { m_multicastSupportHasBeenSet = true; m_multicastSupport = std::move(value); }
392 
393     /**
394      * <p>Indicates whether multicast is enabled on the transit gateway</p>
395      */
WithMulticastSupport(const MulticastSupportValue & value)396     inline TransitGatewayOptions& WithMulticastSupport(const MulticastSupportValue& value) { SetMulticastSupport(value); return *this;}
397 
398     /**
399      * <p>Indicates whether multicast is enabled on the transit gateway</p>
400      */
WithMulticastSupport(MulticastSupportValue && value)401     inline TransitGatewayOptions& WithMulticastSupport(MulticastSupportValue&& value) { SetMulticastSupport(std::move(value)); return *this;}
402 
403   private:
404 
405     long long m_amazonSideAsn;
406     bool m_amazonSideAsnHasBeenSet;
407 
408     Aws::Vector<Aws::String> m_transitGatewayCidrBlocks;
409     bool m_transitGatewayCidrBlocksHasBeenSet;
410 
411     AutoAcceptSharedAttachmentsValue m_autoAcceptSharedAttachments;
412     bool m_autoAcceptSharedAttachmentsHasBeenSet;
413 
414     DefaultRouteTableAssociationValue m_defaultRouteTableAssociation;
415     bool m_defaultRouteTableAssociationHasBeenSet;
416 
417     Aws::String m_associationDefaultRouteTableId;
418     bool m_associationDefaultRouteTableIdHasBeenSet;
419 
420     DefaultRouteTablePropagationValue m_defaultRouteTablePropagation;
421     bool m_defaultRouteTablePropagationHasBeenSet;
422 
423     Aws::String m_propagationDefaultRouteTableId;
424     bool m_propagationDefaultRouteTableIdHasBeenSet;
425 
426     VpnEcmpSupportValue m_vpnEcmpSupport;
427     bool m_vpnEcmpSupportHasBeenSet;
428 
429     DnsSupportValue m_dnsSupport;
430     bool m_dnsSupportHasBeenSet;
431 
432     MulticastSupportValue m_multicastSupport;
433     bool m_multicastSupportHasBeenSet;
434   };
435 
436 } // namespace Model
437 } // namespace EC2
438 } // namespace Aws
439