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/RouteFilterPrefix.h>
12#include <aws/directconnect/model/Tag.h>
23namespace DirectConnect {
47 template <
typename VirtualInterfaceNameT = Aws::String>
49 m_virtualInterfaceNameHasBeenSet =
true;
50 m_virtualInterfaceName = std::forward<VirtualInterfaceNameT>(value);
52 template <
typename VirtualInterfaceNameT = Aws::String>
63 inline int GetVlan()
const {
return m_vlan; }
66 m_vlanHasBeenSet =
true;
90 inline int GetAsn()
const {
return m_asn; }
93 m_asnHasBeenSet =
true;
122 m_asnLongHasBeenSet =
true;
138 template <
typename AuthKeyT = Aws::String>
140 m_authKeyHasBeenSet =
true;
141 m_authKey = std::forward<AuthKeyT>(value);
143 template <
typename AuthKeyT = Aws::String>
156 template <
typename AmazonAddressT = Aws::String>
158 m_amazonAddressHasBeenSet =
true;
159 m_amazonAddress = std::forward<AmazonAddressT>(value);
161 template <
typename AmazonAddressT = Aws::String>
174 template <
typename CustomerAddressT = Aws::String>
176 m_customerAddressHasBeenSet =
true;
177 m_customerAddress = std::forward<CustomerAddressT>(value);
179 template <
typename CustomerAddressT = Aws::String>
193 m_addressFamilyHasBeenSet =
true;
194 m_addressFamily = value;
209 template <
typename RouteFilterPrefixesT = Aws::Vector<RouteFilterPrefix>>
211 m_routeFilterPrefixesHasBeenSet =
true;
212 m_routeFilterPrefixes = std::forward<RouteFilterPrefixesT>(value);
214 template <
typename RouteFilterPrefixesT = Aws::Vector<RouteFilterPrefix>>
219 template <
typename RouteFilterPrefixesT = RouteFilterPrefix>
221 m_routeFilterPrefixesHasBeenSet =
true;
222 m_routeFilterPrefixes.emplace_back(std::forward<RouteFilterPrefixesT>(value));
233 template <
typename TagsT = Aws::Vector<Tag>>
235 m_tagsHasBeenSet =
true;
236 m_tags = std::forward<TagsT>(value);
238 template <
typename TagsT = Aws::Vector<Tag>>
240 SetTags(std::forward<TagsT>(value));
243 template <
typename TagsT = Tag>
245 m_tagsHasBeenSet =
true;
246 m_tags.emplace_back(std::forward<TagsT>(value));
259 template <
typename RateLimitT = Aws::String>
261 m_rateLimitHasBeenSet =
true;
262 m_rateLimit = std::forward<RateLimitT>(value);
264 template <
typename RateLimitT = Aws::String>
277 long long m_asnLong{0};
292 bool m_virtualInterfaceNameHasBeenSet =
false;
293 bool m_vlanHasBeenSet =
false;
294 bool m_asnHasBeenSet =
false;
295 bool m_asnLongHasBeenSet =
false;
296 bool m_authKeyHasBeenSet =
false;
297 bool m_amazonAddressHasBeenSet =
false;
298 bool m_customerAddressHasBeenSet =
false;
299 bool m_addressFamilyHasBeenSet =
false;
300 bool m_routeFilterPrefixesHasBeenSet =
false;
301 bool m_tagsHasBeenSet =
false;
302 bool m_rateLimitHasBeenSet =
false;
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetAddressFamily(AddressFamily value)
bool AsnHasBeenSet() const
void SetRouteFilterPrefixes(RouteFilterPrefixesT &&value)
NewPublicVirtualInterfaceAllocation & WithVirtualInterfaceName(VirtualInterfaceNameT &&value)
void SetVirtualInterfaceName(VirtualInterfaceNameT &&value)
NewPublicVirtualInterfaceAllocation & AddRouteFilterPrefixes(RouteFilterPrefixesT &&value)
NewPublicVirtualInterfaceAllocation & WithRouteFilterPrefixes(RouteFilterPrefixesT &&value)
const Aws::String & GetRateLimit() const
const Aws::Vector< RouteFilterPrefix > & GetRouteFilterPrefixes() const
const Aws::String & GetAmazonAddress() const
bool RouteFilterPrefixesHasBeenSet() const
const Aws::String & GetCustomerAddress() const
AWS_DIRECTCONNECT_API NewPublicVirtualInterfaceAllocation(Aws::Utils::Json::JsonView jsonValue)
AddressFamily GetAddressFamily() const
void SetRateLimit(RateLimitT &&value)
bool AsnLongHasBeenSet() const
void SetCustomerAddress(CustomerAddressT &&value)
NewPublicVirtualInterfaceAllocation & WithAsn(int value)
bool AddressFamilyHasBeenSet() const
NewPublicVirtualInterfaceAllocation & WithAmazonAddress(AmazonAddressT &&value)
AWS_DIRECTCONNECT_API NewPublicVirtualInterfaceAllocation()=default
bool CustomerAddressHasBeenSet() const
NewPublicVirtualInterfaceAllocation & WithAsnLong(long long value)
NewPublicVirtualInterfaceAllocation & AddTags(TagsT &&value)
NewPublicVirtualInterfaceAllocation & WithCustomerAddress(CustomerAddressT &&value)
NewPublicVirtualInterfaceAllocation & WithAuthKey(AuthKeyT &&value)
const Aws::String & GetAuthKey() const
NewPublicVirtualInterfaceAllocation & WithVlan(int value)
const Aws::Vector< Tag > & GetTags() const
bool VirtualInterfaceNameHasBeenSet() const
bool AuthKeyHasBeenSet() const
void SetAuthKey(AuthKeyT &&value)
bool AmazonAddressHasBeenSet() const
const Aws::String & GetVirtualInterfaceName() const
NewPublicVirtualInterfaceAllocation & WithAddressFamily(AddressFamily value)
AWS_DIRECTCONNECT_API NewPublicVirtualInterfaceAllocation & operator=(Aws::Utils::Json::JsonView jsonValue)
bool VlanHasBeenSet() const
bool RateLimitHasBeenSet() const
bool TagsHasBeenSet() const
long long GetAsnLong() const
NewPublicVirtualInterfaceAllocation & WithRateLimit(RateLimitT &&value)
void SetAmazonAddress(AmazonAddressT &&value)
NewPublicVirtualInterfaceAllocation & WithTags(TagsT &&value)
void SetAsnLong(long long value)
void SetTags(TagsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue