AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
NewPrivateVirtualInterface.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 NewPrivateVirtualInterface() = 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 NewPrivateVirtualInterface& 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
86 inline int GetAsn() const { return m_asn; }
87 inline bool AsnHasBeenSet() const { return m_asnHasBeenSet; }
88 inline void SetAsn(int value) {
89 m_asnHasBeenSet = true;
90 m_asn = value;
91 }
93 SetAsn(value);
94 return *this;
95 }
97
99
109 inline long long GetAsnLong() const { return m_asnLong; }
110 inline bool AsnLongHasBeenSet() const { return m_asnLongHasBeenSet; }
111 inline void SetAsnLong(long long value) {
112 m_asnLongHasBeenSet = true;
113 m_asnLong = value;
114 }
115 inline NewPrivateVirtualInterface& WithAsnLong(long long value) {
116 SetAsnLong(value);
117 return *this;
118 }
120
122
126 inline int GetMtu() const { return m_mtu; }
127 inline bool MtuHasBeenSet() const { return m_mtuHasBeenSet; }
128 inline void SetMtu(int value) {
129 m_mtuHasBeenSet = true;
130 m_mtu = value;
131 }
133 SetMtu(value);
134 return *this;
135 }
137
139
143 inline const Aws::String& GetAuthKey() const { return m_authKey; }
144 inline bool AuthKeyHasBeenSet() const { return m_authKeyHasBeenSet; }
145 template <typename AuthKeyT = Aws::String>
146 void SetAuthKey(AuthKeyT&& value) {
147 m_authKeyHasBeenSet = true;
148 m_authKey = std::forward<AuthKeyT>(value);
149 }
150 template <typename AuthKeyT = Aws::String>
152 SetAuthKey(std::forward<AuthKeyT>(value));
153 return *this;
154 }
156
158
161 inline const Aws::String& GetAmazonAddress() const { return m_amazonAddress; }
162 inline bool AmazonAddressHasBeenSet() const { return m_amazonAddressHasBeenSet; }
163 template <typename AmazonAddressT = Aws::String>
164 void SetAmazonAddress(AmazonAddressT&& value) {
165 m_amazonAddressHasBeenSet = true;
166 m_amazonAddress = std::forward<AmazonAddressT>(value);
167 }
168 template <typename AmazonAddressT = Aws::String>
170 SetAmazonAddress(std::forward<AmazonAddressT>(value));
171 return *this;
172 }
174
176
179 inline const Aws::String& GetCustomerAddress() const { return m_customerAddress; }
180 inline bool CustomerAddressHasBeenSet() const { return m_customerAddressHasBeenSet; }
181 template <typename CustomerAddressT = Aws::String>
182 void SetCustomerAddress(CustomerAddressT&& value) {
183 m_customerAddressHasBeenSet = true;
184 m_customerAddress = std::forward<CustomerAddressT>(value);
185 }
186 template <typename CustomerAddressT = Aws::String>
188 SetCustomerAddress(std::forward<CustomerAddressT>(value));
189 return *this;
190 }
192
194
197 inline AddressFamily GetAddressFamily() const { return m_addressFamily; }
198 inline bool AddressFamilyHasBeenSet() const { return m_addressFamilyHasBeenSet; }
199 inline void SetAddressFamily(AddressFamily value) {
200 m_addressFamilyHasBeenSet = true;
201 m_addressFamily = value;
202 }
204 SetAddressFamily(value);
205 return *this;
206 }
208
210
213 inline const Aws::String& GetVirtualGatewayId() const { return m_virtualGatewayId; }
214 inline bool VirtualGatewayIdHasBeenSet() const { return m_virtualGatewayIdHasBeenSet; }
215 template <typename VirtualGatewayIdT = Aws::String>
216 void SetVirtualGatewayId(VirtualGatewayIdT&& value) {
217 m_virtualGatewayIdHasBeenSet = true;
218 m_virtualGatewayId = std::forward<VirtualGatewayIdT>(value);
219 }
220 template <typename VirtualGatewayIdT = Aws::String>
222 SetVirtualGatewayId(std::forward<VirtualGatewayIdT>(value));
223 return *this;
224 }
226
228
231 inline const Aws::String& GetDirectConnectGatewayId() const { return m_directConnectGatewayId; }
232 inline bool DirectConnectGatewayIdHasBeenSet() const { return m_directConnectGatewayIdHasBeenSet; }
233 template <typename DirectConnectGatewayIdT = Aws::String>
234 void SetDirectConnectGatewayId(DirectConnectGatewayIdT&& value) {
235 m_directConnectGatewayIdHasBeenSet = true;
236 m_directConnectGatewayId = std::forward<DirectConnectGatewayIdT>(value);
237 }
238 template <typename DirectConnectGatewayIdT = Aws::String>
239 NewPrivateVirtualInterface& WithDirectConnectGatewayId(DirectConnectGatewayIdT&& value) {
240 SetDirectConnectGatewayId(std::forward<DirectConnectGatewayIdT>(value));
241 return *this;
242 }
244
246
249 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
250 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
251 template <typename TagsT = Aws::Vector<Tag>>
252 void SetTags(TagsT&& value) {
253 m_tagsHasBeenSet = true;
254 m_tags = std::forward<TagsT>(value);
255 }
256 template <typename TagsT = Aws::Vector<Tag>>
258 SetTags(std::forward<TagsT>(value));
259 return *this;
260 }
261 template <typename TagsT = Tag>
263 m_tagsHasBeenSet = true;
264 m_tags.emplace_back(std::forward<TagsT>(value));
265 return *this;
266 }
268
270
273 inline bool GetEnableSiteLink() const { return m_enableSiteLink; }
274 inline bool EnableSiteLinkHasBeenSet() const { return m_enableSiteLinkHasBeenSet; }
275 inline void SetEnableSiteLink(bool value) {
276 m_enableSiteLinkHasBeenSet = true;
277 m_enableSiteLink = value;
278 }
280 SetEnableSiteLink(value);
281 return *this;
282 }
284 private:
285 Aws::String m_virtualInterfaceName;
286
287 int m_vlan{0};
288
289 int m_asn{0};
290
291 long long m_asnLong{0};
292
293 int m_mtu{0};
294
295 Aws::String m_authKey;
296
297 Aws::String m_amazonAddress;
298
299 Aws::String m_customerAddress;
300
301 AddressFamily m_addressFamily{AddressFamily::NOT_SET};
302
303 Aws::String m_virtualGatewayId;
304
305 Aws::String m_directConnectGatewayId;
306
307 Aws::Vector<Tag> m_tags;
308
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;
323};
324
325} // namespace Model
326} // namespace DirectConnect
327} // namespace Aws
NewPrivateVirtualInterface & WithEnableSiteLink(bool value)
NewPrivateVirtualInterface & WithVirtualInterfaceName(VirtualInterfaceNameT &&value)
NewPrivateVirtualInterface & WithAuthKey(AuthKeyT &&value)
NewPrivateVirtualInterface & WithAmazonAddress(AmazonAddressT &&value)
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
NewPrivateVirtualInterface & WithAsnLong(long long value)
AWS_DIRECTCONNECT_API NewPrivateVirtualInterface()=default
NewPrivateVirtualInterface & WithDirectConnectGatewayId(DirectConnectGatewayIdT &&value)
NewPrivateVirtualInterface & WithVirtualGatewayId(VirtualGatewayIdT &&value)
AWS_DIRECTCONNECT_API NewPrivateVirtualInterface & operator=(Aws::Utils::Json::JsonView jsonValue)
NewPrivateVirtualInterface & WithAddressFamily(AddressFamily value)
AWS_DIRECTCONNECT_API NewPrivateVirtualInterface(Aws::Utils::Json::JsonView jsonValue)
NewPrivateVirtualInterface & WithCustomerAddress(CustomerAddressT &&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