AWS SDK for C++

AWS SDK for C++ Version 1.11.844

Loading...
Searching...
No Matches
NewTransitVirtualInterface.h
1
6#pragma once
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>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace DirectConnect {
23namespace Model {
24
31 public:
32 AWS_DIRECTCONNECT_API NewTransitVirtualInterface() = default;
35 AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
43 inline const Aws::String& GetVirtualInterfaceName() const { return m_virtualInterfaceName; }
44 inline bool VirtualInterfaceNameHasBeenSet() const { return m_virtualInterfaceNameHasBeenSet; }
45 template <typename VirtualInterfaceNameT = Aws::String>
46 void SetVirtualInterfaceName(VirtualInterfaceNameT&& value) {
47 m_virtualInterfaceNameHasBeenSet = true;
48 m_virtualInterfaceName = std::forward<VirtualInterfaceNameT>(value);
49 }
50 template <typename VirtualInterfaceNameT = Aws::String>
51 NewTransitVirtualInterface& WithVirtualInterfaceName(VirtualInterfaceNameT&& value) {
52 SetVirtualInterfaceName(std::forward<VirtualInterfaceNameT>(value));
53 return *this;
54 }
56
58
61 inline int GetVlan() const { return m_vlan; }
62 inline bool VlanHasBeenSet() const { return m_vlanHasBeenSet; }
63 inline void SetVlan(int value) {
64 m_vlanHasBeenSet = true;
65 m_vlan = value;
66 }
68 SetVlan(value);
69 return *this;
70 }
72
74
87 inline int GetAsn() const { return m_asn; }
88 inline bool AsnHasBeenSet() const { return m_asnHasBeenSet; }
89 inline void SetAsn(int value) {
90 m_asnHasBeenSet = true;
91 m_asn = value;
92 }
94 SetAsn(value);
95 return *this;
96 }
98
100
116 inline long long GetAsnLong() const { return m_asnLong; }
117 inline bool AsnLongHasBeenSet() const { return m_asnLongHasBeenSet; }
118 inline void SetAsnLong(long long value) {
119 m_asnLongHasBeenSet = true;
120 m_asnLong = value;
121 }
122 inline NewTransitVirtualInterface& WithAsnLong(long long value) {
123 SetAsnLong(value);
124 return *this;
125 }
127
129
133 inline int GetMtu() const { return m_mtu; }
134 inline bool MtuHasBeenSet() const { return m_mtuHasBeenSet; }
135 inline void SetMtu(int value) {
136 m_mtuHasBeenSet = true;
137 m_mtu = value;
138 }
140 SetMtu(value);
141 return *this;
142 }
144
146
150 inline const Aws::String& GetAuthKey() const { return m_authKey; }
151 inline bool AuthKeyHasBeenSet() const { return m_authKeyHasBeenSet; }
152 template <typename AuthKeyT = Aws::String>
153 void SetAuthKey(AuthKeyT&& value) {
154 m_authKeyHasBeenSet = true;
155 m_authKey = std::forward<AuthKeyT>(value);
156 }
157 template <typename AuthKeyT = Aws::String>
159 SetAuthKey(std::forward<AuthKeyT>(value));
160 return *this;
161 }
163
165
168 inline const Aws::String& GetAmazonAddress() const { return m_amazonAddress; }
169 inline bool AmazonAddressHasBeenSet() const { return m_amazonAddressHasBeenSet; }
170 template <typename AmazonAddressT = Aws::String>
171 void SetAmazonAddress(AmazonAddressT&& value) {
172 m_amazonAddressHasBeenSet = true;
173 m_amazonAddress = std::forward<AmazonAddressT>(value);
174 }
175 template <typename AmazonAddressT = Aws::String>
177 SetAmazonAddress(std::forward<AmazonAddressT>(value));
178 return *this;
179 }
181
183
186 inline const Aws::String& GetCustomerAddress() const { return m_customerAddress; }
187 inline bool CustomerAddressHasBeenSet() const { return m_customerAddressHasBeenSet; }
188 template <typename CustomerAddressT = Aws::String>
189 void SetCustomerAddress(CustomerAddressT&& value) {
190 m_customerAddressHasBeenSet = true;
191 m_customerAddress = std::forward<CustomerAddressT>(value);
192 }
193 template <typename CustomerAddressT = Aws::String>
195 SetCustomerAddress(std::forward<CustomerAddressT>(value));
196 return *this;
197 }
199
201
204 inline AddressFamily GetAddressFamily() const { return m_addressFamily; }
205 inline bool AddressFamilyHasBeenSet() const { return m_addressFamilyHasBeenSet; }
206 inline void SetAddressFamily(AddressFamily value) {
207 m_addressFamilyHasBeenSet = true;
208 m_addressFamily = value;
209 }
211 SetAddressFamily(value);
212 return *this;
213 }
215
217
220 inline const Aws::String& GetDirectConnectGatewayId() const { return m_directConnectGatewayId; }
221 inline bool DirectConnectGatewayIdHasBeenSet() const { return m_directConnectGatewayIdHasBeenSet; }
222 template <typename DirectConnectGatewayIdT = Aws::String>
223 void SetDirectConnectGatewayId(DirectConnectGatewayIdT&& value) {
224 m_directConnectGatewayIdHasBeenSet = true;
225 m_directConnectGatewayId = std::forward<DirectConnectGatewayIdT>(value);
226 }
227 template <typename DirectConnectGatewayIdT = Aws::String>
228 NewTransitVirtualInterface& WithDirectConnectGatewayId(DirectConnectGatewayIdT&& value) {
229 SetDirectConnectGatewayId(std::forward<DirectConnectGatewayIdT>(value));
230 return *this;
231 }
233
235
238 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
239 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
240 template <typename TagsT = Aws::Vector<Tag>>
241 void SetTags(TagsT&& value) {
242 m_tagsHasBeenSet = true;
243 m_tags = std::forward<TagsT>(value);
244 }
245 template <typename TagsT = Aws::Vector<Tag>>
247 SetTags(std::forward<TagsT>(value));
248 return *this;
249 }
250 template <typename TagsT = Tag>
252 m_tagsHasBeenSet = true;
253 m_tags.emplace_back(std::forward<TagsT>(value));
254 return *this;
255 }
257
259
262 inline bool GetEnableSiteLink() const { return m_enableSiteLink; }
263 inline bool EnableSiteLinkHasBeenSet() const { return m_enableSiteLinkHasBeenSet; }
264 inline void SetEnableSiteLink(bool value) {
265 m_enableSiteLinkHasBeenSet = true;
266 m_enableSiteLink = value;
267 }
269 SetEnableSiteLink(value);
270 return *this;
271 }
273
275
280 inline const Aws::String& GetRateLimit() const { return m_rateLimit; }
281 inline bool RateLimitHasBeenSet() const { return m_rateLimitHasBeenSet; }
282 template <typename RateLimitT = Aws::String>
283 void SetRateLimit(RateLimitT&& value) {
284 m_rateLimitHasBeenSet = true;
285 m_rateLimit = std::forward<RateLimitT>(value);
286 }
287 template <typename RateLimitT = Aws::String>
289 SetRateLimit(std::forward<RateLimitT>(value));
290 return *this;
291 }
293 private:
294 Aws::String m_virtualInterfaceName;
295
296 int m_vlan{0};
297
298 int m_asn{0};
299
300 long long m_asnLong{0};
301
302 int m_mtu{0};
303
304 Aws::String m_authKey;
305
306 Aws::String m_amazonAddress;
307
308 Aws::String m_customerAddress;
309
310 AddressFamily m_addressFamily{AddressFamily::NOT_SET};
311
312 Aws::String m_directConnectGatewayId;
313
314 Aws::Vector<Tag> m_tags;
315
316 bool m_enableSiteLink{false};
317
318 Aws::String m_rateLimit;
319 bool m_virtualInterfaceNameHasBeenSet = false;
320 bool m_vlanHasBeenSet = false;
321 bool m_asnHasBeenSet = false;
322 bool m_asnLongHasBeenSet = false;
323 bool m_mtuHasBeenSet = false;
324 bool m_authKeyHasBeenSet = false;
325 bool m_amazonAddressHasBeenSet = false;
326 bool m_customerAddressHasBeenSet = false;
327 bool m_addressFamilyHasBeenSet = false;
328 bool m_directConnectGatewayIdHasBeenSet = false;
329 bool m_tagsHasBeenSet = false;
330 bool m_enableSiteLinkHasBeenSet = false;
331 bool m_rateLimitHasBeenSet = false;
332};
333
334} // namespace Model
335} // namespace DirectConnect
336} // namespace Aws
NewTransitVirtualInterface & WithAmazonAddress(AmazonAddressT &&value)
NewTransitVirtualInterface & WithRateLimit(RateLimitT &&value)
AWS_DIRECTCONNECT_API NewTransitVirtualInterface(Aws::Utils::Json::JsonView jsonValue)
NewTransitVirtualInterface & WithDirectConnectGatewayId(DirectConnectGatewayIdT &&value)
AWS_DIRECTCONNECT_API NewTransitVirtualInterface()=default
NewTransitVirtualInterface & WithAuthKey(AuthKeyT &&value)
AWS_DIRECTCONNECT_API NewTransitVirtualInterface & operator=(Aws::Utils::Json::JsonView jsonValue)
NewTransitVirtualInterface & WithCustomerAddress(CustomerAddressT &&value)
NewTransitVirtualInterface & WithEnableSiteLink(bool value)
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
NewTransitVirtualInterface & WithVirtualInterfaceName(VirtualInterfaceNameT &&value)
NewTransitVirtualInterface & WithAddressFamily(AddressFamily value)
NewTransitVirtualInterface & WithAsnLong(long long 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