7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/directconnect/DirectConnect_EXPORTS.h>
10#include <aws/directconnect/model/AddressFamily.h>
11#include <aws/directconnect/model/Tag.h>
22namespace DirectConnect {
45 template <
typename VirtualInterfaceNameT = Aws::String>
47 m_virtualInterfaceNameHasBeenSet =
true;
48 m_virtualInterfaceName = std::forward<VirtualInterfaceNameT>(value);
50 template <
typename VirtualInterfaceNameT = Aws::String>
61 inline int GetVlan()
const {
return m_vlan; }
64 m_vlanHasBeenSet =
true;
87 inline int GetAsn()
const {
return m_asn; }
90 m_asnHasBeenSet =
true;
119 m_asnLongHasBeenSet =
true;
133 inline int GetMtu()
const {
return m_mtu; }
136 m_mtuHasBeenSet =
true;
152 template <
typename AuthKeyT = Aws::String>
154 m_authKeyHasBeenSet =
true;
155 m_authKey = std::forward<AuthKeyT>(value);
157 template <
typename AuthKeyT = Aws::String>
170 template <
typename AmazonAddressT = Aws::String>
172 m_amazonAddressHasBeenSet =
true;
173 m_amazonAddress = std::forward<AmazonAddressT>(value);
175 template <
typename AmazonAddressT = Aws::String>
188 template <
typename CustomerAddressT = Aws::String>
190 m_customerAddressHasBeenSet =
true;
191 m_customerAddress = std::forward<CustomerAddressT>(value);
193 template <
typename CustomerAddressT = Aws::String>
207 m_addressFamilyHasBeenSet =
true;
208 m_addressFamily = value;
222 template <
typename DirectConnectGatewayIdT = Aws::String>
224 m_directConnectGatewayIdHasBeenSet =
true;
225 m_directConnectGatewayId = std::forward<DirectConnectGatewayIdT>(value);
227 template <
typename DirectConnectGatewayIdT = Aws::String>
240 template <
typename TagsT = Aws::Vector<Tag>>
242 m_tagsHasBeenSet =
true;
243 m_tags = std::forward<TagsT>(value);
245 template <
typename TagsT = Aws::Vector<Tag>>
247 SetTags(std::forward<TagsT>(value));
250 template <
typename TagsT = Tag>
252 m_tagsHasBeenSet =
true;
253 m_tags.emplace_back(std::forward<TagsT>(value));
265 m_enableSiteLinkHasBeenSet =
true;
266 m_enableSiteLink = value;
282 m_prefixPoolAllocatedCountIpv4HasBeenSet =
true;
283 m_prefixPoolAllocatedCountIpv4 = value;
299 m_prefixPoolAllocatedCountIpv6HasBeenSet =
true;
300 m_prefixPoolAllocatedCountIpv6 = value;
316 template <
typename RateLimitT = Aws::String>
318 m_rateLimitHasBeenSet =
true;
319 m_rateLimit = std::forward<RateLimitT>(value);
321 template <
typename RateLimitT = Aws::String>
334 long long m_asnLong{0};
350 bool m_enableSiteLink{
false};
352 int m_prefixPoolAllocatedCountIpv4{0};
354 int m_prefixPoolAllocatedCountIpv6{0};
357 bool m_virtualInterfaceNameHasBeenSet =
false;
358 bool m_vlanHasBeenSet =
false;
359 bool m_asnHasBeenSet =
false;
360 bool m_asnLongHasBeenSet =
false;
361 bool m_mtuHasBeenSet =
false;
362 bool m_authKeyHasBeenSet =
false;
363 bool m_amazonAddressHasBeenSet =
false;
364 bool m_customerAddressHasBeenSet =
false;
365 bool m_addressFamilyHasBeenSet =
false;
366 bool m_directConnectGatewayIdHasBeenSet =
false;
367 bool m_tagsHasBeenSet =
false;
368 bool m_enableSiteLinkHasBeenSet =
false;
369 bool m_prefixPoolAllocatedCountIpv4HasBeenSet =
false;
370 bool m_prefixPoolAllocatedCountIpv6HasBeenSet =
false;
371 bool m_rateLimitHasBeenSet =
false;
void SetPrefixPoolAllocatedCountIpv6(int value)
bool DirectConnectGatewayIdHasBeenSet() const
const Aws::Vector< Tag > & GetTags() const
NewTransitVirtualInterface & WithTags(TagsT &&value)
NewTransitVirtualInterface & WithAmazonAddress(AmazonAddressT &&value)
long long GetAsnLong() const
bool VirtualInterfaceNameHasBeenSet() const
bool AddressFamilyHasBeenSet() const
NewTransitVirtualInterface & WithRateLimit(RateLimitT &&value)
NewTransitVirtualInterface & WithVlan(int value)
bool PrefixPoolAllocatedCountIpv4HasBeenSet() const
NewTransitVirtualInterface & WithAsn(int value)
void SetEnableSiteLink(bool value)
AWS_DIRECTCONNECT_API NewTransitVirtualInterface(Aws::Utils::Json::JsonView jsonValue)
bool EnableSiteLinkHasBeenSet() const
NewTransitVirtualInterface & WithDirectConnectGatewayId(DirectConnectGatewayIdT &&value)
AWS_DIRECTCONNECT_API NewTransitVirtualInterface()=default
NewTransitVirtualInterface & WithPrefixPoolAllocatedCountIpv4(int value)
NewTransitVirtualInterface & WithPrefixPoolAllocatedCountIpv6(int value)
int GetPrefixPoolAllocatedCountIpv6() const
NewTransitVirtualInterface & WithAuthKey(AuthKeyT &&value)
const Aws::String & GetDirectConnectGatewayId() const
bool MtuHasBeenSet() const
bool TagsHasBeenSet() const
AWS_DIRECTCONNECT_API NewTransitVirtualInterface & operator=(Aws::Utils::Json::JsonView jsonValue)
NewTransitVirtualInterface & WithCustomerAddress(CustomerAddressT &&value)
NewTransitVirtualInterface & WithMtu(int value)
bool AsnLongHasBeenSet() const
NewTransitVirtualInterface & WithEnableSiteLink(bool value)
int GetPrefixPoolAllocatedCountIpv4() const
void SetRateLimit(RateLimitT &&value)
void SetPrefixPoolAllocatedCountIpv4(int value)
void SetVirtualInterfaceName(VirtualInterfaceNameT &&value)
bool RateLimitHasBeenSet() const
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetVirtualInterfaceName() const
void SetDirectConnectGatewayId(DirectConnectGatewayIdT &&value)
NewTransitVirtualInterface & WithVirtualInterfaceName(VirtualInterfaceNameT &&value)
AddressFamily GetAddressFamily() const
bool GetEnableSiteLink() const
void SetAsnLong(long long value)
void SetAuthKey(AuthKeyT &&value)
NewTransitVirtualInterface & WithAddressFamily(AddressFamily value)
NewTransitVirtualInterface & AddTags(TagsT &&value)
bool AuthKeyHasBeenSet() const
bool PrefixPoolAllocatedCountIpv6HasBeenSet() const
void SetAmazonAddress(AmazonAddressT &&value)
void SetAddressFamily(AddressFamily value)
const Aws::String & GetRateLimit() const
void SetTags(TagsT &&value)
NewTransitVirtualInterface & WithAsnLong(long long value)
bool CustomerAddressHasBeenSet() const
const Aws::String & GetCustomerAddress() const
bool AsnHasBeenSet() const
const Aws::String & GetAmazonAddress() const
void SetCustomerAddress(CustomerAddressT &&value)
bool VlanHasBeenSet() const
bool AmazonAddressHasBeenSet() const
const Aws::String & GetAuthKey() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue