AWS SDK for C++

AWS SDK for C++ Version 1.11.641

Loading...
Searching...
No Matches
NewPublicVirtualInterfaceAllocation.h
1
6#pragma once
7#include <aws/directconnect/DirectConnect_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/directconnect/model/AddressFamily.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/directconnect/model/RouteFilterPrefix.h>
12#include <aws/directconnect/model/Tag.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace DirectConnect
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_DIRECTCONNECT_API NewPublicVirtualInterfaceAllocation() = default;
42 AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
51 inline const Aws::String& GetVirtualInterfaceName() const { return m_virtualInterfaceName; }
52 inline bool VirtualInterfaceNameHasBeenSet() const { return m_virtualInterfaceNameHasBeenSet; }
53 template<typename VirtualInterfaceNameT = Aws::String>
54 void SetVirtualInterfaceName(VirtualInterfaceNameT&& value) { m_virtualInterfaceNameHasBeenSet = true; m_virtualInterfaceName = std::forward<VirtualInterfaceNameT>(value); }
55 template<typename VirtualInterfaceNameT = Aws::String>
56 NewPublicVirtualInterfaceAllocation& WithVirtualInterfaceName(VirtualInterfaceNameT&& value) { SetVirtualInterfaceName(std::forward<VirtualInterfaceNameT>(value)); return *this;}
58
60
63 inline int GetVlan() const { return m_vlan; }
64 inline bool VlanHasBeenSet() const { return m_vlanHasBeenSet; }
65 inline void SetVlan(int value) { m_vlanHasBeenSet = true; m_vlan = value; }
66 inline NewPublicVirtualInterfaceAllocation& WithVlan(int value) { SetVlan(value); return *this;}
68
70
82 inline int GetAsn() const { return m_asn; }
83 inline bool AsnHasBeenSet() const { return m_asnHasBeenSet; }
84 inline void SetAsn(int value) { m_asnHasBeenSet = true; m_asn = value; }
85 inline NewPublicVirtualInterfaceAllocation& WithAsn(int value) { SetAsn(value); return *this;}
87
89
99 inline long long GetAsnLong() const { return m_asnLong; }
100 inline bool AsnLongHasBeenSet() const { return m_asnLongHasBeenSet; }
101 inline void SetAsnLong(long long value) { m_asnLongHasBeenSet = true; m_asnLong = value; }
102 inline NewPublicVirtualInterfaceAllocation& WithAsnLong(long long value) { SetAsnLong(value); return *this;}
104
106
110 inline const Aws::String& GetAuthKey() const { return m_authKey; }
111 inline bool AuthKeyHasBeenSet() const { return m_authKeyHasBeenSet; }
112 template<typename AuthKeyT = Aws::String>
113 void SetAuthKey(AuthKeyT&& value) { m_authKeyHasBeenSet = true; m_authKey = std::forward<AuthKeyT>(value); }
114 template<typename AuthKeyT = Aws::String>
115 NewPublicVirtualInterfaceAllocation& WithAuthKey(AuthKeyT&& value) { SetAuthKey(std::forward<AuthKeyT>(value)); return *this;}
117
119
122 inline const Aws::String& GetAmazonAddress() const { return m_amazonAddress; }
123 inline bool AmazonAddressHasBeenSet() const { return m_amazonAddressHasBeenSet; }
124 template<typename AmazonAddressT = Aws::String>
125 void SetAmazonAddress(AmazonAddressT&& value) { m_amazonAddressHasBeenSet = true; m_amazonAddress = std::forward<AmazonAddressT>(value); }
126 template<typename AmazonAddressT = Aws::String>
127 NewPublicVirtualInterfaceAllocation& WithAmazonAddress(AmazonAddressT&& value) { SetAmazonAddress(std::forward<AmazonAddressT>(value)); return *this;}
129
131
134 inline const Aws::String& GetCustomerAddress() const { return m_customerAddress; }
135 inline bool CustomerAddressHasBeenSet() const { return m_customerAddressHasBeenSet; }
136 template<typename CustomerAddressT = Aws::String>
137 void SetCustomerAddress(CustomerAddressT&& value) { m_customerAddressHasBeenSet = true; m_customerAddress = std::forward<CustomerAddressT>(value); }
138 template<typename CustomerAddressT = Aws::String>
139 NewPublicVirtualInterfaceAllocation& WithCustomerAddress(CustomerAddressT&& value) { SetCustomerAddress(std::forward<CustomerAddressT>(value)); return *this;}
141
143
146 inline AddressFamily GetAddressFamily() const { return m_addressFamily; }
147 inline bool AddressFamilyHasBeenSet() const { return m_addressFamilyHasBeenSet; }
148 inline void SetAddressFamily(AddressFamily value) { m_addressFamilyHasBeenSet = true; m_addressFamily = value; }
151
153
157 inline const Aws::Vector<RouteFilterPrefix>& GetRouteFilterPrefixes() const { return m_routeFilterPrefixes; }
158 inline bool RouteFilterPrefixesHasBeenSet() const { return m_routeFilterPrefixesHasBeenSet; }
159 template<typename RouteFilterPrefixesT = Aws::Vector<RouteFilterPrefix>>
160 void SetRouteFilterPrefixes(RouteFilterPrefixesT&& value) { m_routeFilterPrefixesHasBeenSet = true; m_routeFilterPrefixes = std::forward<RouteFilterPrefixesT>(value); }
161 template<typename RouteFilterPrefixesT = Aws::Vector<RouteFilterPrefix>>
162 NewPublicVirtualInterfaceAllocation& WithRouteFilterPrefixes(RouteFilterPrefixesT&& value) { SetRouteFilterPrefixes(std::forward<RouteFilterPrefixesT>(value)); return *this;}
163 template<typename RouteFilterPrefixesT = RouteFilterPrefix>
164 NewPublicVirtualInterfaceAllocation& AddRouteFilterPrefixes(RouteFilterPrefixesT&& value) { m_routeFilterPrefixesHasBeenSet = true; m_routeFilterPrefixes.emplace_back(std::forward<RouteFilterPrefixesT>(value)); return *this; }
166
168
171 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
172 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
173 template<typename TagsT = Aws::Vector<Tag>>
174 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
175 template<typename TagsT = Aws::Vector<Tag>>
176 NewPublicVirtualInterfaceAllocation& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
177 template<typename TagsT = Tag>
178 NewPublicVirtualInterfaceAllocation& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
180 private:
181
182 Aws::String m_virtualInterfaceName;
183 bool m_virtualInterfaceNameHasBeenSet = false;
184
185 int m_vlan{0};
186 bool m_vlanHasBeenSet = false;
187
188 int m_asn{0};
189 bool m_asnHasBeenSet = false;
190
191 long long m_asnLong{0};
192 bool m_asnLongHasBeenSet = false;
193
194 Aws::String m_authKey;
195 bool m_authKeyHasBeenSet = false;
196
197 Aws::String m_amazonAddress;
198 bool m_amazonAddressHasBeenSet = false;
199
200 Aws::String m_customerAddress;
201 bool m_customerAddressHasBeenSet = false;
202
203 AddressFamily m_addressFamily{AddressFamily::NOT_SET};
204 bool m_addressFamilyHasBeenSet = false;
205
206 Aws::Vector<RouteFilterPrefix> m_routeFilterPrefixes;
207 bool m_routeFilterPrefixesHasBeenSet = false;
208
209 Aws::Vector<Tag> m_tags;
210 bool m_tagsHasBeenSet = false;
211 };
212
213} // namespace Model
214} // namespace DirectConnect
215} // namespace Aws
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
NewPublicVirtualInterfaceAllocation & WithVirtualInterfaceName(VirtualInterfaceNameT &&value)
NewPublicVirtualInterfaceAllocation & AddRouteFilterPrefixes(RouteFilterPrefixesT &&value)
NewPublicVirtualInterfaceAllocation & WithRouteFilterPrefixes(RouteFilterPrefixesT &&value)
AWS_DIRECTCONNECT_API NewPublicVirtualInterfaceAllocation(Aws::Utils::Json::JsonView jsonValue)
NewPublicVirtualInterfaceAllocation & WithAmazonAddress(AmazonAddressT &&value)
AWS_DIRECTCONNECT_API NewPublicVirtualInterfaceAllocation()=default
NewPublicVirtualInterfaceAllocation & WithCustomerAddress(CustomerAddressT &&value)
NewPublicVirtualInterfaceAllocation & WithAuthKey(AuthKeyT &&value)
NewPublicVirtualInterfaceAllocation & WithAddressFamily(AddressFamily value)
AWS_DIRECTCONNECT_API NewPublicVirtualInterfaceAllocation & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue