AWS SDK for C++

AWS SDK for C++ Version 1.11.763

Loading...
Searching...
No Matches
Interconnect.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/directconnect/DirectConnect_EXPORTS.h>
11#include <aws/directconnect/model/HasLogicalRedundancy.h>
12#include <aws/directconnect/model/InterconnectState.h>
13#include <aws/directconnect/model/MacSecKey.h>
14#include <aws/directconnect/model/Tag.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace DirectConnect {
26namespace Model {
27
34 public:
35 AWS_DIRECTCONNECT_API Interconnect() = default;
36 AWS_DIRECTCONNECT_API Interconnect(Aws::Utils::Json::JsonView jsonValue);
37 AWS_DIRECTCONNECT_API Interconnect& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const Aws::String& GetInterconnectId() const { return m_interconnectId; }
45 inline bool InterconnectIdHasBeenSet() const { return m_interconnectIdHasBeenSet; }
46 template <typename InterconnectIdT = Aws::String>
47 void SetInterconnectId(InterconnectIdT&& value) {
48 m_interconnectIdHasBeenSet = true;
49 m_interconnectId = std::forward<InterconnectIdT>(value);
50 }
51 template <typename InterconnectIdT = Aws::String>
52 Interconnect& WithInterconnectId(InterconnectIdT&& value) {
53 SetInterconnectId(std::forward<InterconnectIdT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetInterconnectName() const { return m_interconnectName; }
63 inline bool InterconnectNameHasBeenSet() const { return m_interconnectNameHasBeenSet; }
64 template <typename InterconnectNameT = Aws::String>
65 void SetInterconnectName(InterconnectNameT&& value) {
66 m_interconnectNameHasBeenSet = true;
67 m_interconnectName = std::forward<InterconnectNameT>(value);
68 }
69 template <typename InterconnectNameT = Aws::String>
70 Interconnect& WithInterconnectName(InterconnectNameT&& value) {
71 SetInterconnectName(std::forward<InterconnectNameT>(value));
72 return *this;
73 }
75
77
90 inline InterconnectState GetInterconnectState() const { return m_interconnectState; }
91 inline bool InterconnectStateHasBeenSet() const { return m_interconnectStateHasBeenSet; }
93 m_interconnectStateHasBeenSet = true;
94 m_interconnectState = value;
95 }
98 return *this;
99 }
101
103
106 inline const Aws::String& GetRegion() const { return m_region; }
107 inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; }
108 template <typename RegionT = Aws::String>
109 void SetRegion(RegionT&& value) {
110 m_regionHasBeenSet = true;
111 m_region = std::forward<RegionT>(value);
112 }
113 template <typename RegionT = Aws::String>
114 Interconnect& WithRegion(RegionT&& value) {
115 SetRegion(std::forward<RegionT>(value));
116 return *this;
117 }
119
121
124 inline const Aws::String& GetLocation() const { return m_location; }
125 inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; }
126 template <typename LocationT = Aws::String>
127 void SetLocation(LocationT&& value) {
128 m_locationHasBeenSet = true;
129 m_location = std::forward<LocationT>(value);
130 }
131 template <typename LocationT = Aws::String>
132 Interconnect& WithLocation(LocationT&& value) {
133 SetLocation(std::forward<LocationT>(value));
134 return *this;
135 }
137
139
142 inline const Aws::String& GetBandwidth() const { return m_bandwidth; }
143 inline bool BandwidthHasBeenSet() const { return m_bandwidthHasBeenSet; }
144 template <typename BandwidthT = Aws::String>
145 void SetBandwidth(BandwidthT&& value) {
146 m_bandwidthHasBeenSet = true;
147 m_bandwidth = std::forward<BandwidthT>(value);
148 }
149 template <typename BandwidthT = Aws::String>
150 Interconnect& WithBandwidth(BandwidthT&& value) {
151 SetBandwidth(std::forward<BandwidthT>(value));
152 return *this;
153 }
155
157
161 inline const Aws::Utils::DateTime& GetLoaIssueTime() const { return m_loaIssueTime; }
162 inline bool LoaIssueTimeHasBeenSet() const { return m_loaIssueTimeHasBeenSet; }
163 template <typename LoaIssueTimeT = Aws::Utils::DateTime>
164 void SetLoaIssueTime(LoaIssueTimeT&& value) {
165 m_loaIssueTimeHasBeenSet = true;
166 m_loaIssueTime = std::forward<LoaIssueTimeT>(value);
167 }
168 template <typename LoaIssueTimeT = Aws::Utils::DateTime>
169 Interconnect& WithLoaIssueTime(LoaIssueTimeT&& value) {
170 SetLoaIssueTime(std::forward<LoaIssueTimeT>(value));
171 return *this;
172 }
174
176
179 inline const Aws::String& GetLagId() const { return m_lagId; }
180 inline bool LagIdHasBeenSet() const { return m_lagIdHasBeenSet; }
181 template <typename LagIdT = Aws::String>
182 void SetLagId(LagIdT&& value) {
183 m_lagIdHasBeenSet = true;
184 m_lagId = std::forward<LagIdT>(value);
185 }
186 template <typename LagIdT = Aws::String>
187 Interconnect& WithLagId(LagIdT&& value) {
188 SetLagId(std::forward<LagIdT>(value));
189 return *this;
190 }
192
194
197 inline const Aws::String& GetAwsDevice() const { return m_awsDevice; }
198 inline bool AwsDeviceHasBeenSet() const { return m_awsDeviceHasBeenSet; }
199 template <typename AwsDeviceT = Aws::String>
200 void SetAwsDevice(AwsDeviceT&& value) {
201 m_awsDeviceHasBeenSet = true;
202 m_awsDevice = std::forward<AwsDeviceT>(value);
203 }
204 template <typename AwsDeviceT = Aws::String>
205 Interconnect& WithAwsDevice(AwsDeviceT&& value) {
206 SetAwsDevice(std::forward<AwsDeviceT>(value));
207 return *this;
208 }
210
212
215 inline bool GetJumboFrameCapable() const { return m_jumboFrameCapable; }
216 inline bool JumboFrameCapableHasBeenSet() const { return m_jumboFrameCapableHasBeenSet; }
217 inline void SetJumboFrameCapable(bool value) {
218 m_jumboFrameCapableHasBeenSet = true;
219 m_jumboFrameCapable = value;
220 }
223 return *this;
224 }
226
228
231 inline const Aws::String& GetAwsDeviceV2() const { return m_awsDeviceV2; }
232 inline bool AwsDeviceV2HasBeenSet() const { return m_awsDeviceV2HasBeenSet; }
233 template <typename AwsDeviceV2T = Aws::String>
234 void SetAwsDeviceV2(AwsDeviceV2T&& value) {
235 m_awsDeviceV2HasBeenSet = true;
236 m_awsDeviceV2 = std::forward<AwsDeviceV2T>(value);
237 }
238 template <typename AwsDeviceV2T = Aws::String>
239 Interconnect& WithAwsDeviceV2(AwsDeviceV2T&& value) {
240 SetAwsDeviceV2(std::forward<AwsDeviceV2T>(value));
241 return *this;
242 }
244
246
251 inline const Aws::String& GetAwsLogicalDeviceId() const { return m_awsLogicalDeviceId; }
252 inline bool AwsLogicalDeviceIdHasBeenSet() const { return m_awsLogicalDeviceIdHasBeenSet; }
253 template <typename AwsLogicalDeviceIdT = Aws::String>
254 void SetAwsLogicalDeviceId(AwsLogicalDeviceIdT&& value) {
255 m_awsLogicalDeviceIdHasBeenSet = true;
256 m_awsLogicalDeviceId = std::forward<AwsLogicalDeviceIdT>(value);
257 }
258 template <typename AwsLogicalDeviceIdT = Aws::String>
259 Interconnect& WithAwsLogicalDeviceId(AwsLogicalDeviceIdT&& value) {
260 SetAwsLogicalDeviceId(std::forward<AwsLogicalDeviceIdT>(value));
261 return *this;
262 }
264
266
270 inline HasLogicalRedundancy GetHasLogicalRedundancy() const { return m_hasLogicalRedundancy; }
271 inline bool HasLogicalRedundancyHasBeenSet() const { return m_hasLogicalRedundancyHasBeenSet; }
273 m_hasLogicalRedundancyHasBeenSet = true;
274 m_hasLogicalRedundancy = value;
275 }
278 return *this;
279 }
281
283
286 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
287 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
288 template <typename TagsT = Aws::Vector<Tag>>
289 void SetTags(TagsT&& value) {
290 m_tagsHasBeenSet = true;
291 m_tags = std::forward<TagsT>(value);
292 }
293 template <typename TagsT = Aws::Vector<Tag>>
294 Interconnect& WithTags(TagsT&& value) {
295 SetTags(std::forward<TagsT>(value));
296 return *this;
297 }
298 template <typename TagsT = Tag>
299 Interconnect& AddTags(TagsT&& value) {
300 m_tagsHasBeenSet = true;
301 m_tags.emplace_back(std::forward<TagsT>(value));
302 return *this;
303 }
305
307
310 inline const Aws::String& GetProviderName() const { return m_providerName; }
311 inline bool ProviderNameHasBeenSet() const { return m_providerNameHasBeenSet; }
312 template <typename ProviderNameT = Aws::String>
313 void SetProviderName(ProviderNameT&& value) {
314 m_providerNameHasBeenSet = true;
315 m_providerName = std::forward<ProviderNameT>(value);
316 }
317 template <typename ProviderNameT = Aws::String>
318 Interconnect& WithProviderName(ProviderNameT&& value) {
319 SetProviderName(std::forward<ProviderNameT>(value));
320 return *this;
321 }
323
325
328 inline bool GetMacSecCapable() const { return m_macSecCapable; }
329 inline bool MacSecCapableHasBeenSet() const { return m_macSecCapableHasBeenSet; }
330 inline void SetMacSecCapable(bool value) {
331 m_macSecCapableHasBeenSet = true;
332 m_macSecCapable = value;
333 }
334 inline Interconnect& WithMacSecCapable(bool value) {
335 SetMacSecCapable(value);
336 return *this;
337 }
339
341
346 inline const Aws::String& GetPortEncryptionStatus() const { return m_portEncryptionStatus; }
347 inline bool PortEncryptionStatusHasBeenSet() const { return m_portEncryptionStatusHasBeenSet; }
348 template <typename PortEncryptionStatusT = Aws::String>
349 void SetPortEncryptionStatus(PortEncryptionStatusT&& value) {
350 m_portEncryptionStatusHasBeenSet = true;
351 m_portEncryptionStatus = std::forward<PortEncryptionStatusT>(value);
352 }
353 template <typename PortEncryptionStatusT = Aws::String>
354 Interconnect& WithPortEncryptionStatus(PortEncryptionStatusT&& value) {
355 SetPortEncryptionStatus(std::forward<PortEncryptionStatusT>(value));
356 return *this;
357 }
359
361
366 inline const Aws::String& GetEncryptionMode() const { return m_encryptionMode; }
367 inline bool EncryptionModeHasBeenSet() const { return m_encryptionModeHasBeenSet; }
368 template <typename EncryptionModeT = Aws::String>
369 void SetEncryptionMode(EncryptionModeT&& value) {
370 m_encryptionModeHasBeenSet = true;
371 m_encryptionMode = std::forward<EncryptionModeT>(value);
372 }
373 template <typename EncryptionModeT = Aws::String>
374 Interconnect& WithEncryptionMode(EncryptionModeT&& value) {
375 SetEncryptionMode(std::forward<EncryptionModeT>(value));
376 return *this;
377 }
379
381
384 inline const Aws::Vector<MacSecKey>& GetMacSecKeys() const { return m_macSecKeys; }
385 inline bool MacSecKeysHasBeenSet() const { return m_macSecKeysHasBeenSet; }
386 template <typename MacSecKeysT = Aws::Vector<MacSecKey>>
387 void SetMacSecKeys(MacSecKeysT&& value) {
388 m_macSecKeysHasBeenSet = true;
389 m_macSecKeys = std::forward<MacSecKeysT>(value);
390 }
391 template <typename MacSecKeysT = Aws::Vector<MacSecKey>>
392 Interconnect& WithMacSecKeys(MacSecKeysT&& value) {
393 SetMacSecKeys(std::forward<MacSecKeysT>(value));
394 return *this;
395 }
396 template <typename MacSecKeysT = MacSecKey>
397 Interconnect& AddMacSecKeys(MacSecKeysT&& value) {
398 m_macSecKeysHasBeenSet = true;
399 m_macSecKeys.emplace_back(std::forward<MacSecKeysT>(value));
400 return *this;
401 }
403
405
406 inline const Aws::String& GetRequestId() const { return m_requestId; }
407 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
408 template <typename RequestIdT = Aws::String>
409 void SetRequestId(RequestIdT&& value) {
410 m_requestIdHasBeenSet = true;
411 m_requestId = std::forward<RequestIdT>(value);
412 }
413 template <typename RequestIdT = Aws::String>
414 Interconnect& WithRequestId(RequestIdT&& value) {
415 SetRequestId(std::forward<RequestIdT>(value));
416 return *this;
417 }
419 private:
420 Aws::String m_interconnectId;
421
422 Aws::String m_interconnectName;
423
425
426 Aws::String m_region;
427
428 Aws::String m_location;
429
430 Aws::String m_bandwidth;
431
432 Aws::Utils::DateTime m_loaIssueTime{};
433
434 Aws::String m_lagId;
435
436 Aws::String m_awsDevice;
437
438 bool m_jumboFrameCapable{false};
439
440 Aws::String m_awsDeviceV2;
441
442 Aws::String m_awsLogicalDeviceId;
443
445
446 Aws::Vector<Tag> m_tags;
447
448 Aws::String m_providerName;
449
450 bool m_macSecCapable{false};
451
452 Aws::String m_portEncryptionStatus;
453
454 Aws::String m_encryptionMode;
455
456 Aws::Vector<MacSecKey> m_macSecKeys;
457
458 Aws::String m_requestId;
459 bool m_interconnectIdHasBeenSet = false;
460 bool m_interconnectNameHasBeenSet = false;
461 bool m_interconnectStateHasBeenSet = false;
462 bool m_regionHasBeenSet = false;
463 bool m_locationHasBeenSet = false;
464 bool m_bandwidthHasBeenSet = false;
465 bool m_loaIssueTimeHasBeenSet = false;
466 bool m_lagIdHasBeenSet = false;
467 bool m_awsDeviceHasBeenSet = false;
468 bool m_jumboFrameCapableHasBeenSet = false;
469 bool m_awsDeviceV2HasBeenSet = false;
470 bool m_awsLogicalDeviceIdHasBeenSet = false;
471 bool m_hasLogicalRedundancyHasBeenSet = false;
472 bool m_tagsHasBeenSet = false;
473 bool m_providerNameHasBeenSet = false;
474 bool m_macSecCapableHasBeenSet = false;
475 bool m_portEncryptionStatusHasBeenSet = false;
476 bool m_encryptionModeHasBeenSet = false;
477 bool m_macSecKeysHasBeenSet = false;
478 bool m_requestIdHasBeenSet = false;
479};
480
481} // namespace Model
482} // namespace DirectConnect
483} // namespace Aws
const Aws::String & GetInterconnectName() const
const Aws::String & GetAwsDevice() const
Interconnect & WithPortEncryptionStatus(PortEncryptionStatusT &&value)
void SetInterconnectName(InterconnectNameT &&value)
void SetInterconnectState(InterconnectState value)
void SetLoaIssueTime(LoaIssueTimeT &&value)
void SetRequestId(RequestIdT &&value)
Interconnect & WithRequestId(RequestIdT &&value)
const Aws::String & GetProviderName() const
Interconnect & WithHasLogicalRedundancy(HasLogicalRedundancy value)
Interconnect & WithMacSecKeys(MacSecKeysT &&value)
const Aws::String & GetPortEncryptionStatus() const
Interconnect & WithMacSecCapable(bool value)
void SetAwsLogicalDeviceId(AwsLogicalDeviceIdT &&value)
const Aws::String & GetLocation() const
Interconnect & WithAwsDeviceV2(AwsDeviceV2T &&value)
Interconnect & WithLocation(LocationT &&value)
void SetProviderName(ProviderNameT &&value)
const Aws::String & GetAwsLogicalDeviceId() const
Interconnect & WithRegion(RegionT &&value)
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
Interconnect & WithEncryptionMode(EncryptionModeT &&value)
Interconnect & WithLoaIssueTime(LoaIssueTimeT &&value)
void SetPortEncryptionStatus(PortEncryptionStatusT &&value)
const Aws::Vector< Tag > & GetTags() const
Interconnect & WithInterconnectId(InterconnectIdT &&value)
Interconnect & WithLagId(LagIdT &&value)
Interconnect & WithInterconnectState(InterconnectState value)
void SetMacSecKeys(MacSecKeysT &&value)
Interconnect & WithInterconnectName(InterconnectNameT &&value)
void SetBandwidth(BandwidthT &&value)
void SetEncryptionMode(EncryptionModeT &&value)
Interconnect & WithJumboFrameCapable(bool value)
void SetAwsDeviceV2(AwsDeviceV2T &&value)
void SetInterconnectId(InterconnectIdT &&value)
const Aws::String & GetInterconnectId() const
const Aws::String & GetLagId() const
const Aws::String & GetBandwidth() const
const Aws::String & GetRequestId() const
AWS_DIRECTCONNECT_API Interconnect(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< MacSecKey > & GetMacSecKeys() const
InterconnectState GetInterconnectState() const
Interconnect & AddTags(TagsT &&value)
Interconnect & WithBandwidth(BandwidthT &&value)
Interconnect & WithTags(TagsT &&value)
const Aws::String & GetEncryptionMode() const
Interconnect & WithAwsDevice(AwsDeviceT &&value)
const Aws::String & GetAwsDeviceV2() const
const Aws::String & GetRegion() const
void SetAwsDevice(AwsDeviceT &&value)
HasLogicalRedundancy GetHasLogicalRedundancy() const
Interconnect & AddMacSecKeys(MacSecKeysT &&value)
Interconnect & WithAwsLogicalDeviceId(AwsLogicalDeviceIdT &&value)
AWS_DIRECTCONNECT_API Interconnect & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetLoaIssueTime() const
void SetHasLogicalRedundancy(HasLogicalRedundancy value)
AWS_DIRECTCONNECT_API Interconnect()=default
Interconnect & WithProviderName(ProviderNameT &&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