AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
TransitGatewayRequestOptions.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/AutoAcceptSharedAttachmentsValue.h>
10#include <aws/ec2/model/DefaultRouteTableAssociationValue.h>
11#include <aws/ec2/model/DefaultRouteTablePropagationValue.h>
12#include <aws/ec2/model/VpnEcmpSupportValue.h>
13#include <aws/ec2/model/DnsSupportValue.h>
14#include <aws/ec2/model/SecurityGroupReferencingSupportValue.h>
15#include <aws/ec2/model/MulticastSupportValue.h>
16#include <aws/core/utils/memory/stl/AWSVector.h>
17#include <aws/core/utils/memory/stl/AWSString.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 TransitGatewayRequestOptions() = default;
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 long long GetAmazonSideAsn() const { return m_amazonSideAsn; }
57 inline bool AmazonSideAsnHasBeenSet() const { return m_amazonSideAsnHasBeenSet; }
58 inline void SetAmazonSideAsn(long long value) { m_amazonSideAsnHasBeenSet = true; m_amazonSideAsn = value; }
59 inline TransitGatewayRequestOptions& WithAmazonSideAsn(long long value) { SetAmazonSideAsn(value); return *this;}
61
63
67 inline AutoAcceptSharedAttachmentsValue GetAutoAcceptSharedAttachments() const { return m_autoAcceptSharedAttachments; }
68 inline bool AutoAcceptSharedAttachmentsHasBeenSet() const { return m_autoAcceptSharedAttachmentsHasBeenSet; }
69 inline void SetAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue value) { m_autoAcceptSharedAttachmentsHasBeenSet = true; m_autoAcceptSharedAttachments = value; }
72
74
78 inline DefaultRouteTableAssociationValue GetDefaultRouteTableAssociation() const { return m_defaultRouteTableAssociation; }
79 inline bool DefaultRouteTableAssociationHasBeenSet() const { return m_defaultRouteTableAssociationHasBeenSet; }
80 inline void SetDefaultRouteTableAssociation(DefaultRouteTableAssociationValue value) { m_defaultRouteTableAssociationHasBeenSet = true; m_defaultRouteTableAssociation = value; }
83
85
89 inline DefaultRouteTablePropagationValue GetDefaultRouteTablePropagation() const { return m_defaultRouteTablePropagation; }
90 inline bool DefaultRouteTablePropagationHasBeenSet() const { return m_defaultRouteTablePropagationHasBeenSet; }
91 inline void SetDefaultRouteTablePropagation(DefaultRouteTablePropagationValue value) { m_defaultRouteTablePropagationHasBeenSet = true; m_defaultRouteTablePropagation = value; }
94
96
100 inline VpnEcmpSupportValue GetVpnEcmpSupport() const { return m_vpnEcmpSupport; }
101 inline bool VpnEcmpSupportHasBeenSet() const { return m_vpnEcmpSupportHasBeenSet; }
102 inline void SetVpnEcmpSupport(VpnEcmpSupportValue value) { m_vpnEcmpSupportHasBeenSet = true; m_vpnEcmpSupport = value; }
105
107
110 inline DnsSupportValue GetDnsSupport() const { return m_dnsSupport; }
111 inline bool DnsSupportHasBeenSet() const { return m_dnsSupportHasBeenSet; }
112 inline void SetDnsSupport(DnsSupportValue value) { m_dnsSupportHasBeenSet = true; m_dnsSupport = value; }
115
117
125 inline SecurityGroupReferencingSupportValue GetSecurityGroupReferencingSupport() const { return m_securityGroupReferencingSupport; }
126 inline bool SecurityGroupReferencingSupportHasBeenSet() const { return m_securityGroupReferencingSupportHasBeenSet; }
127 inline void SetSecurityGroupReferencingSupport(SecurityGroupReferencingSupportValue value) { m_securityGroupReferencingSupportHasBeenSet = true; m_securityGroupReferencingSupport = value; }
130
132
135 inline MulticastSupportValue GetMulticastSupport() const { return m_multicastSupport; }
136 inline bool MulticastSupportHasBeenSet() const { return m_multicastSupportHasBeenSet; }
137 inline void SetMulticastSupport(MulticastSupportValue value) { m_multicastSupportHasBeenSet = true; m_multicastSupport = value; }
140
142
147 inline const Aws::Vector<Aws::String>& GetTransitGatewayCidrBlocks() const { return m_transitGatewayCidrBlocks; }
148 inline bool TransitGatewayCidrBlocksHasBeenSet() const { return m_transitGatewayCidrBlocksHasBeenSet; }
149 template<typename TransitGatewayCidrBlocksT = Aws::Vector<Aws::String>>
150 void SetTransitGatewayCidrBlocks(TransitGatewayCidrBlocksT&& value) { m_transitGatewayCidrBlocksHasBeenSet = true; m_transitGatewayCidrBlocks = std::forward<TransitGatewayCidrBlocksT>(value); }
151 template<typename TransitGatewayCidrBlocksT = Aws::Vector<Aws::String>>
152 TransitGatewayRequestOptions& WithTransitGatewayCidrBlocks(TransitGatewayCidrBlocksT&& value) { SetTransitGatewayCidrBlocks(std::forward<TransitGatewayCidrBlocksT>(value)); return *this;}
153 template<typename TransitGatewayCidrBlocksT = Aws::String>
154 TransitGatewayRequestOptions& AddTransitGatewayCidrBlocks(TransitGatewayCidrBlocksT&& value) { m_transitGatewayCidrBlocksHasBeenSet = true; m_transitGatewayCidrBlocks.emplace_back(std::forward<TransitGatewayCidrBlocksT>(value)); return *this; }
156 private:
157
158 long long m_amazonSideAsn{0};
159 bool m_amazonSideAsnHasBeenSet = false;
160
162 bool m_autoAcceptSharedAttachmentsHasBeenSet = false;
163
165 bool m_defaultRouteTableAssociationHasBeenSet = false;
166
168 bool m_defaultRouteTablePropagationHasBeenSet = false;
169
171 bool m_vpnEcmpSupportHasBeenSet = false;
172
174 bool m_dnsSupportHasBeenSet = false;
175
177 bool m_securityGroupReferencingSupportHasBeenSet = false;
178
180 bool m_multicastSupportHasBeenSet = false;
181
182 Aws::Vector<Aws::String> m_transitGatewayCidrBlocks;
183 bool m_transitGatewayCidrBlocksHasBeenSet = false;
184 };
185
186} // namespace Model
187} // namespace EC2
188} // namespace Aws
AWS_EC2_API TransitGatewayRequestOptions & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API TransitGatewayRequestOptions()=default
TransitGatewayRequestOptions & WithDefaultRouteTablePropagation(DefaultRouteTablePropagationValue value)
void SetAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue value)
TransitGatewayRequestOptions & WithDefaultRouteTableAssociation(DefaultRouteTableAssociationValue value)
DefaultRouteTableAssociationValue GetDefaultRouteTableAssociation() const
void SetSecurityGroupReferencingSupport(SecurityGroupReferencingSupportValue value)
void SetDefaultRouteTableAssociation(DefaultRouteTableAssociationValue value)
AutoAcceptSharedAttachmentsValue GetAutoAcceptSharedAttachments() const
TransitGatewayRequestOptions & WithSecurityGroupReferencingSupport(SecurityGroupReferencingSupportValue value)
DefaultRouteTablePropagationValue GetDefaultRouteTablePropagation() const
void SetDefaultRouteTablePropagation(DefaultRouteTablePropagationValue value)
TransitGatewayRequestOptions & WithAmazonSideAsn(long long value)
void SetTransitGatewayCidrBlocks(TransitGatewayCidrBlocksT &&value)
TransitGatewayRequestOptions & WithAutoAcceptSharedAttachments(AutoAcceptSharedAttachmentsValue value)
SecurityGroupReferencingSupportValue GetSecurityGroupReferencingSupport() const
TransitGatewayRequestOptions & WithDnsSupport(DnsSupportValue value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
TransitGatewayRequestOptions & AddTransitGatewayCidrBlocks(TransitGatewayCidrBlocksT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
TransitGatewayRequestOptions & WithTransitGatewayCidrBlocks(TransitGatewayCidrBlocksT &&value)
AWS_EC2_API TransitGatewayRequestOptions(const Aws::Utils::Xml::XmlNode &xmlNode)
TransitGatewayRequestOptions & WithMulticastSupport(MulticastSupportValue value)
TransitGatewayRequestOptions & WithVpnEcmpSupport(VpnEcmpSupportValue value)
const Aws::Vector< Aws::String > & GetTransitGatewayCidrBlocks() const
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream