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;
86 inline int GetAsn()
const {
return m_asn; }
89 m_asnHasBeenSet =
true;
112 m_asnLongHasBeenSet =
true;
126 inline int GetMtu()
const {
return m_mtu; }
129 m_mtuHasBeenSet =
true;
145 template <
typename AuthKeyT = Aws::String>
147 m_authKeyHasBeenSet =
true;
148 m_authKey = std::forward<AuthKeyT>(value);
150 template <
typename AuthKeyT = Aws::String>
163 template <
typename AmazonAddressT = Aws::String>
165 m_amazonAddressHasBeenSet =
true;
166 m_amazonAddress = std::forward<AmazonAddressT>(value);
168 template <
typename AmazonAddressT = Aws::String>
181 template <
typename CustomerAddressT = Aws::String>
183 m_customerAddressHasBeenSet =
true;
184 m_customerAddress = std::forward<CustomerAddressT>(value);
186 template <
typename CustomerAddressT = Aws::String>
200 m_addressFamilyHasBeenSet =
true;
201 m_addressFamily = value;
215 template <
typename VirtualGatewayIdT = Aws::String>
217 m_virtualGatewayIdHasBeenSet =
true;
218 m_virtualGatewayId = std::forward<VirtualGatewayIdT>(value);
220 template <
typename VirtualGatewayIdT = Aws::String>
233 template <
typename DirectConnectGatewayIdT = Aws::String>
235 m_directConnectGatewayIdHasBeenSet =
true;
236 m_directConnectGatewayId = std::forward<DirectConnectGatewayIdT>(value);
238 template <
typename DirectConnectGatewayIdT = Aws::String>
251 template <
typename TagsT = Aws::Vector<Tag>>
253 m_tagsHasBeenSet =
true;
254 m_tags = std::forward<TagsT>(value);
256 template <
typename TagsT = Aws::Vector<Tag>>
258 SetTags(std::forward<TagsT>(value));
261 template <
typename TagsT = Tag>
263 m_tagsHasBeenSet =
true;
264 m_tags.emplace_back(std::forward<TagsT>(value));
276 m_enableSiteLinkHasBeenSet =
true;
277 m_enableSiteLink = value;
291 long long m_asnLong{0};
309 bool m_enableSiteLink{
false};
310 bool m_virtualInterfaceNameHasBeenSet =
false;
311 bool m_vlanHasBeenSet =
false;
312 bool m_asnHasBeenSet =
false;
313 bool m_asnLongHasBeenSet =
false;
314 bool m_mtuHasBeenSet =
false;
315 bool m_authKeyHasBeenSet =
false;
316 bool m_amazonAddressHasBeenSet =
false;
317 bool m_customerAddressHasBeenSet =
false;
318 bool m_addressFamilyHasBeenSet =
false;
319 bool m_virtualGatewayIdHasBeenSet =
false;
320 bool m_directConnectGatewayIdHasBeenSet =
false;
321 bool m_tagsHasBeenSet =
false;
322 bool m_enableSiteLinkHasBeenSet =
false;
bool VirtualGatewayIdHasBeenSet() const
AddressFamily GetAddressFamily() const
NewPrivateVirtualInterface & WithMtu(int value)
void SetVirtualInterfaceName(VirtualInterfaceNameT &&value)
NewPrivateVirtualInterface & WithEnableSiteLink(bool value)
bool AmazonAddressHasBeenSet() const
bool GetEnableSiteLink() const
bool AsnHasBeenSet() const
bool MtuHasBeenSet() const
bool VirtualInterfaceNameHasBeenSet() const
void SetEnableSiteLink(bool value)
const Aws::String & GetVirtualInterfaceName() const
void SetAsnLong(long long value)
NewPrivateVirtualInterface & WithVirtualInterfaceName(VirtualInterfaceNameT &&value)
void SetAmazonAddress(AmazonAddressT &&value)
bool AddressFamilyHasBeenSet() const
const Aws::String & GetCustomerAddress() const
NewPrivateVirtualInterface & WithAuthKey(AuthKeyT &&value)
NewPrivateVirtualInterface & WithAmazonAddress(AmazonAddressT &&value)
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetTags(TagsT &&value)
void SetAuthKey(AuthKeyT &&value)
bool EnableSiteLinkHasBeenSet() const
NewPrivateVirtualInterface & AddTags(TagsT &&value)
void SetCustomerAddress(CustomerAddressT &&value)
const Aws::String & GetAmazonAddress() const
const Aws::Vector< Tag > & GetTags() const
NewPrivateVirtualInterface & WithAsnLong(long long value)
void SetAddressFamily(AddressFamily value)
AWS_DIRECTCONNECT_API NewPrivateVirtualInterface()=default
long long GetAsnLong() const
NewPrivateVirtualInterface & WithVlan(int value)
bool TagsHasBeenSet() const
bool AsnLongHasBeenSet() const
NewPrivateVirtualInterface & WithDirectConnectGatewayId(DirectConnectGatewayIdT &&value)
const Aws::String & GetDirectConnectGatewayId() const
void SetDirectConnectGatewayId(DirectConnectGatewayIdT &&value)
NewPrivateVirtualInterface & WithTags(TagsT &&value)
NewPrivateVirtualInterface & WithVirtualGatewayId(VirtualGatewayIdT &&value)
const Aws::String & GetAuthKey() const
bool DirectConnectGatewayIdHasBeenSet() const
AWS_DIRECTCONNECT_API NewPrivateVirtualInterface & operator=(Aws::Utils::Json::JsonView jsonValue)
bool CustomerAddressHasBeenSet() const
NewPrivateVirtualInterface & WithAddressFamily(AddressFamily value)
AWS_DIRECTCONNECT_API NewPrivateVirtualInterface(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetVirtualGatewayId() const
NewPrivateVirtualInterface & WithCustomerAddress(CustomerAddressT &&value)
NewPrivateVirtualInterface & WithAsn(int value)
void SetVirtualGatewayId(VirtualGatewayIdT &&value)
bool AuthKeyHasBeenSet() const
bool VlanHasBeenSet() 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