AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Lag.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/LagState.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/directconnect/model/HasLogicalRedundancy.h>
12#include <aws/directconnect/model/Connection.h>
13#include <aws/directconnect/model/Tag.h>
14#include <aws/directconnect/model/MacSecKey.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace DirectConnect
28{
29namespace Model
30{
31
38 class Lag
39 {
40 public:
41 AWS_DIRECTCONNECT_API Lag() = default;
42 AWS_DIRECTCONNECT_API Lag(Aws::Utils::Json::JsonView jsonValue);
43 AWS_DIRECTCONNECT_API Lag& operator=(Aws::Utils::Json::JsonView jsonValue);
44 AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
52 inline const Aws::String& GetConnectionsBandwidth() const { return m_connectionsBandwidth; }
53 inline bool ConnectionsBandwidthHasBeenSet() const { return m_connectionsBandwidthHasBeenSet; }
54 template<typename ConnectionsBandwidthT = Aws::String>
55 void SetConnectionsBandwidth(ConnectionsBandwidthT&& value) { m_connectionsBandwidthHasBeenSet = true; m_connectionsBandwidth = std::forward<ConnectionsBandwidthT>(value); }
56 template<typename ConnectionsBandwidthT = Aws::String>
57 Lag& WithConnectionsBandwidth(ConnectionsBandwidthT&& value) { SetConnectionsBandwidth(std::forward<ConnectionsBandwidthT>(value)); return *this;}
59
61
67 inline int GetNumberOfConnections() const { return m_numberOfConnections; }
68 inline bool NumberOfConnectionsHasBeenSet() const { return m_numberOfConnectionsHasBeenSet; }
69 inline void SetNumberOfConnections(int value) { m_numberOfConnectionsHasBeenSet = true; m_numberOfConnections = value; }
70 inline Lag& WithNumberOfConnections(int value) { SetNumberOfConnections(value); return *this;}
72
74
77 inline const Aws::String& GetLagId() const { return m_lagId; }
78 inline bool LagIdHasBeenSet() const { return m_lagIdHasBeenSet; }
79 template<typename LagIdT = Aws::String>
80 void SetLagId(LagIdT&& value) { m_lagIdHasBeenSet = true; m_lagId = std::forward<LagIdT>(value); }
81 template<typename LagIdT = Aws::String>
82 Lag& WithLagId(LagIdT&& value) { SetLagId(std::forward<LagIdT>(value)); return *this;}
84
86
89 inline const Aws::String& GetOwnerAccount() const { return m_ownerAccount; }
90 inline bool OwnerAccountHasBeenSet() const { return m_ownerAccountHasBeenSet; }
91 template<typename OwnerAccountT = Aws::String>
92 void SetOwnerAccount(OwnerAccountT&& value) { m_ownerAccountHasBeenSet = true; m_ownerAccount = std::forward<OwnerAccountT>(value); }
93 template<typename OwnerAccountT = Aws::String>
94 Lag& WithOwnerAccount(OwnerAccountT&& value) { SetOwnerAccount(std::forward<OwnerAccountT>(value)); return *this;}
96
98
101 inline const Aws::String& GetLagName() const { return m_lagName; }
102 inline bool LagNameHasBeenSet() const { return m_lagNameHasBeenSet; }
103 template<typename LagNameT = Aws::String>
104 void SetLagName(LagNameT&& value) { m_lagNameHasBeenSet = true; m_lagName = std::forward<LagNameT>(value); }
105 template<typename LagNameT = Aws::String>
106 Lag& WithLagName(LagNameT&& value) { SetLagName(std::forward<LagNameT>(value)); return *this;}
108
110
122 inline LagState GetLagState() const { return m_lagState; }
123 inline bool LagStateHasBeenSet() const { return m_lagStateHasBeenSet; }
124 inline void SetLagState(LagState value) { m_lagStateHasBeenSet = true; m_lagState = value; }
125 inline Lag& WithLagState(LagState value) { SetLagState(value); return *this;}
127
129
132 inline const Aws::String& GetLocation() const { return m_location; }
133 inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; }
134 template<typename LocationT = Aws::String>
135 void SetLocation(LocationT&& value) { m_locationHasBeenSet = true; m_location = std::forward<LocationT>(value); }
136 template<typename LocationT = Aws::String>
137 Lag& WithLocation(LocationT&& value) { SetLocation(std::forward<LocationT>(value)); return *this;}
139
141
144 inline const Aws::String& GetRegion() const { return m_region; }
145 inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; }
146 template<typename RegionT = Aws::String>
147 void SetRegion(RegionT&& value) { m_regionHasBeenSet = true; m_region = std::forward<RegionT>(value); }
148 template<typename RegionT = Aws::String>
149 Lag& WithRegion(RegionT&& value) { SetRegion(std::forward<RegionT>(value)); return *this;}
151
153
157 inline int GetMinimumLinks() const { return m_minimumLinks; }
158 inline bool MinimumLinksHasBeenSet() const { return m_minimumLinksHasBeenSet; }
159 inline void SetMinimumLinks(int value) { m_minimumLinksHasBeenSet = true; m_minimumLinks = value; }
160 inline Lag& WithMinimumLinks(int value) { SetMinimumLinks(value); return *this;}
162
164
167 inline const Aws::String& GetAwsDevice() const { return m_awsDevice; }
168 inline bool AwsDeviceHasBeenSet() const { return m_awsDeviceHasBeenSet; }
169 template<typename AwsDeviceT = Aws::String>
170 void SetAwsDevice(AwsDeviceT&& value) { m_awsDeviceHasBeenSet = true; m_awsDevice = std::forward<AwsDeviceT>(value); }
171 template<typename AwsDeviceT = Aws::String>
172 Lag& WithAwsDevice(AwsDeviceT&& value) { SetAwsDevice(std::forward<AwsDeviceT>(value)); return *this;}
174
176
179 inline const Aws::String& GetAwsDeviceV2() const { return m_awsDeviceV2; }
180 inline bool AwsDeviceV2HasBeenSet() const { return m_awsDeviceV2HasBeenSet; }
181 template<typename AwsDeviceV2T = Aws::String>
182 void SetAwsDeviceV2(AwsDeviceV2T&& value) { m_awsDeviceV2HasBeenSet = true; m_awsDeviceV2 = std::forward<AwsDeviceV2T>(value); }
183 template<typename AwsDeviceV2T = Aws::String>
184 Lag& WithAwsDeviceV2(AwsDeviceV2T&& value) { SetAwsDeviceV2(std::forward<AwsDeviceV2T>(value)); return *this;}
186
188
193 inline const Aws::String& GetAwsLogicalDeviceId() const { return m_awsLogicalDeviceId; }
194 inline bool AwsLogicalDeviceIdHasBeenSet() const { return m_awsLogicalDeviceIdHasBeenSet; }
195 template<typename AwsLogicalDeviceIdT = Aws::String>
196 void SetAwsLogicalDeviceId(AwsLogicalDeviceIdT&& value) { m_awsLogicalDeviceIdHasBeenSet = true; m_awsLogicalDeviceId = std::forward<AwsLogicalDeviceIdT>(value); }
197 template<typename AwsLogicalDeviceIdT = Aws::String>
198 Lag& WithAwsLogicalDeviceId(AwsLogicalDeviceIdT&& value) { SetAwsLogicalDeviceId(std::forward<AwsLogicalDeviceIdT>(value)); return *this;}
200
202
205 inline const Aws::Vector<Connection>& GetConnections() const { return m_connections; }
206 inline bool ConnectionsHasBeenSet() const { return m_connectionsHasBeenSet; }
207 template<typename ConnectionsT = Aws::Vector<Connection>>
208 void SetConnections(ConnectionsT&& value) { m_connectionsHasBeenSet = true; m_connections = std::forward<ConnectionsT>(value); }
209 template<typename ConnectionsT = Aws::Vector<Connection>>
210 Lag& WithConnections(ConnectionsT&& value) { SetConnections(std::forward<ConnectionsT>(value)); return *this;}
211 template<typename ConnectionsT = Connection>
212 Lag& AddConnections(ConnectionsT&& value) { m_connectionsHasBeenSet = true; m_connections.emplace_back(std::forward<ConnectionsT>(value)); return *this; }
214
216
219 inline bool GetAllowsHostedConnections() const { return m_allowsHostedConnections; }
220 inline bool AllowsHostedConnectionsHasBeenSet() const { return m_allowsHostedConnectionsHasBeenSet; }
221 inline void SetAllowsHostedConnections(bool value) { m_allowsHostedConnectionsHasBeenSet = true; m_allowsHostedConnections = value; }
222 inline Lag& WithAllowsHostedConnections(bool value) { SetAllowsHostedConnections(value); return *this;}
224
226
229 inline bool GetJumboFrameCapable() const { return m_jumboFrameCapable; }
230 inline bool JumboFrameCapableHasBeenSet() const { return m_jumboFrameCapableHasBeenSet; }
231 inline void SetJumboFrameCapable(bool value) { m_jumboFrameCapableHasBeenSet = true; m_jumboFrameCapable = value; }
232 inline Lag& WithJumboFrameCapable(bool value) { SetJumboFrameCapable(value); return *this;}
234
236
240 inline HasLogicalRedundancy GetHasLogicalRedundancy() const { return m_hasLogicalRedundancy; }
241 inline bool HasLogicalRedundancyHasBeenSet() const { return m_hasLogicalRedundancyHasBeenSet; }
242 inline void SetHasLogicalRedundancy(HasLogicalRedundancy value) { m_hasLogicalRedundancyHasBeenSet = true; m_hasLogicalRedundancy = value; }
245
247
250 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
251 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
252 template<typename TagsT = Aws::Vector<Tag>>
253 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
254 template<typename TagsT = Aws::Vector<Tag>>
255 Lag& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
256 template<typename TagsT = Tag>
257 Lag& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
259
261
264 inline const Aws::String& GetProviderName() const { return m_providerName; }
265 inline bool ProviderNameHasBeenSet() const { return m_providerNameHasBeenSet; }
266 template<typename ProviderNameT = Aws::String>
267 void SetProviderName(ProviderNameT&& value) { m_providerNameHasBeenSet = true; m_providerName = std::forward<ProviderNameT>(value); }
268 template<typename ProviderNameT = Aws::String>
269 Lag& WithProviderName(ProviderNameT&& value) { SetProviderName(std::forward<ProviderNameT>(value)); return *this;}
271
273
276 inline bool GetMacSecCapable() const { return m_macSecCapable; }
277 inline bool MacSecCapableHasBeenSet() const { return m_macSecCapableHasBeenSet; }
278 inline void SetMacSecCapable(bool value) { m_macSecCapableHasBeenSet = true; m_macSecCapable = value; }
279 inline Lag& WithMacSecCapable(bool value) { SetMacSecCapable(value); return *this;}
281
283
288 inline const Aws::String& GetEncryptionMode() const { return m_encryptionMode; }
289 inline bool EncryptionModeHasBeenSet() const { return m_encryptionModeHasBeenSet; }
290 template<typename EncryptionModeT = Aws::String>
291 void SetEncryptionMode(EncryptionModeT&& value) { m_encryptionModeHasBeenSet = true; m_encryptionMode = std::forward<EncryptionModeT>(value); }
292 template<typename EncryptionModeT = Aws::String>
293 Lag& WithEncryptionMode(EncryptionModeT&& value) { SetEncryptionMode(std::forward<EncryptionModeT>(value)); return *this;}
295
297
300 inline const Aws::Vector<MacSecKey>& GetMacSecKeys() const { return m_macSecKeys; }
301 inline bool MacSecKeysHasBeenSet() const { return m_macSecKeysHasBeenSet; }
302 template<typename MacSecKeysT = Aws::Vector<MacSecKey>>
303 void SetMacSecKeys(MacSecKeysT&& value) { m_macSecKeysHasBeenSet = true; m_macSecKeys = std::forward<MacSecKeysT>(value); }
304 template<typename MacSecKeysT = Aws::Vector<MacSecKey>>
305 Lag& WithMacSecKeys(MacSecKeysT&& value) { SetMacSecKeys(std::forward<MacSecKeysT>(value)); return *this;}
306 template<typename MacSecKeysT = MacSecKey>
307 Lag& AddMacSecKeys(MacSecKeysT&& value) { m_macSecKeysHasBeenSet = true; m_macSecKeys.emplace_back(std::forward<MacSecKeysT>(value)); return *this; }
309
311
312 inline const Aws::String& GetRequestId() const { return m_requestId; }
313 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
314 template<typename RequestIdT = Aws::String>
315 void SetRequestId(RequestIdT&& value) { m_requestIdHasBeenSet = true; m_requestId = std::forward<RequestIdT>(value); }
316 template<typename RequestIdT = Aws::String>
317 Lag& WithRequestId(RequestIdT&& value) { SetRequestId(std::forward<RequestIdT>(value)); return *this;}
319 private:
320
321 Aws::String m_connectionsBandwidth;
322 bool m_connectionsBandwidthHasBeenSet = false;
323
324 int m_numberOfConnections{0};
325 bool m_numberOfConnectionsHasBeenSet = false;
326
327 Aws::String m_lagId;
328 bool m_lagIdHasBeenSet = false;
329
330 Aws::String m_ownerAccount;
331 bool m_ownerAccountHasBeenSet = false;
332
333 Aws::String m_lagName;
334 bool m_lagNameHasBeenSet = false;
335
336 LagState m_lagState{LagState::NOT_SET};
337 bool m_lagStateHasBeenSet = false;
338
339 Aws::String m_location;
340 bool m_locationHasBeenSet = false;
341
342 Aws::String m_region;
343 bool m_regionHasBeenSet = false;
344
345 int m_minimumLinks{0};
346 bool m_minimumLinksHasBeenSet = false;
347
348 Aws::String m_awsDevice;
349 bool m_awsDeviceHasBeenSet = false;
350
351 Aws::String m_awsDeviceV2;
352 bool m_awsDeviceV2HasBeenSet = false;
353
354 Aws::String m_awsLogicalDeviceId;
355 bool m_awsLogicalDeviceIdHasBeenSet = false;
356
357 Aws::Vector<Connection> m_connections;
358 bool m_connectionsHasBeenSet = false;
359
360 bool m_allowsHostedConnections{false};
361 bool m_allowsHostedConnectionsHasBeenSet = false;
362
363 bool m_jumboFrameCapable{false};
364 bool m_jumboFrameCapableHasBeenSet = false;
365
367 bool m_hasLogicalRedundancyHasBeenSet = false;
368
369 Aws::Vector<Tag> m_tags;
370 bool m_tagsHasBeenSet = false;
371
372 Aws::String m_providerName;
373 bool m_providerNameHasBeenSet = false;
374
375 bool m_macSecCapable{false};
376 bool m_macSecCapableHasBeenSet = false;
377
378 Aws::String m_encryptionMode;
379 bool m_encryptionModeHasBeenSet = false;
380
381 Aws::Vector<MacSecKey> m_macSecKeys;
382 bool m_macSecKeysHasBeenSet = false;
383
384 Aws::String m_requestId;
385 bool m_requestIdHasBeenSet = false;
386 };
387
388} // namespace Model
389} // namespace DirectConnect
390} // namespace Aws
const Aws::String & GetLagName() const
Definition Lag.h:101
bool GetJumboFrameCapable() const
Definition Lag.h:229
Lag & WithJumboFrameCapable(bool value)
Definition Lag.h:232
Lag & WithAwsLogicalDeviceId(AwsLogicalDeviceIdT &&value)
Definition Lag.h:198
bool ConnectionsHasBeenSet() const
Definition Lag.h:206
Lag & WithLagState(LagState value)
Definition Lag.h:125
void SetAwsDeviceV2(AwsDeviceV2T &&value)
Definition Lag.h:182
void SetLagState(LagState value)
Definition Lag.h:124
const Aws::Vector< Tag > & GetTags() const
Definition Lag.h:250
bool MacSecCapableHasBeenSet() const
Definition Lag.h:277
const Aws::String & GetLagId() const
Definition Lag.h:77
void SetJumboFrameCapable(bool value)
Definition Lag.h:231
bool LagNameHasBeenSet() const
Definition Lag.h:102
Lag & WithNumberOfConnections(int value)
Definition Lag.h:70
bool AwsDeviceHasBeenSet() const
Definition Lag.h:168
const Aws::String & GetConnectionsBandwidth() const
Definition Lag.h:52
void SetHasLogicalRedundancy(HasLogicalRedundancy value)
Definition Lag.h:242
Lag & AddMacSecKeys(MacSecKeysT &&value)
Definition Lag.h:307
void SetMinimumLinks(int value)
Definition Lag.h:159
const Aws::Vector< Connection > & GetConnections() const
Definition Lag.h:205
AWS_DIRECTCONNECT_API Lag()=default
const Aws::String & GetRegion() const
Definition Lag.h:144
const Aws::String & GetAwsLogicalDeviceId() const
Definition Lag.h:193
bool MacSecKeysHasBeenSet() const
Definition Lag.h:301
Lag & WithLocation(LocationT &&value)
Definition Lag.h:137
HasLogicalRedundancy GetHasLogicalRedundancy() const
Definition Lag.h:240
const Aws::String & GetLocation() const
Definition Lag.h:132
void SetMacSecCapable(bool value)
Definition Lag.h:278
bool EncryptionModeHasBeenSet() const
Definition Lag.h:289
Lag & WithRequestId(RequestIdT &&value)
Definition Lag.h:317
bool TagsHasBeenSet() const
Definition Lag.h:251
AWS_DIRECTCONNECT_API Lag & operator=(Aws::Utils::Json::JsonView jsonValue)
Lag & AddConnections(ConnectionsT &&value)
Definition Lag.h:212
Lag & WithMacSecCapable(bool value)
Definition Lag.h:279
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
Lag & WithOwnerAccount(OwnerAccountT &&value)
Definition Lag.h:94
Lag & WithMinimumLinks(int value)
Definition Lag.h:160
bool RequestIdHasBeenSet() const
Definition Lag.h:313
bool LagStateHasBeenSet() const
Definition Lag.h:123
Lag & WithAwsDeviceV2(AwsDeviceV2T &&value)
Definition Lag.h:184
const Aws::Vector< MacSecKey > & GetMacSecKeys() const
Definition Lag.h:300
void SetAllowsHostedConnections(bool value)
Definition Lag.h:221
const Aws::String & GetRequestId() const
Definition Lag.h:312
bool LocationHasBeenSet() const
Definition Lag.h:133
bool GetMacSecCapable() const
Definition Lag.h:276
bool AwsLogicalDeviceIdHasBeenSet() const
Definition Lag.h:194
const Aws::String & GetOwnerAccount() const
Definition Lag.h:89
Lag & WithEncryptionMode(EncryptionModeT &&value)
Definition Lag.h:293
void SetAwsDevice(AwsDeviceT &&value)
Definition Lag.h:170
const Aws::String & GetAwsDeviceV2() const
Definition Lag.h:179
bool RegionHasBeenSet() const
Definition Lag.h:145
Lag & WithLagId(LagIdT &&value)
Definition Lag.h:82
bool AllowsHostedConnectionsHasBeenSet() const
Definition Lag.h:220
const Aws::String & GetAwsDevice() const
Definition Lag.h:167
void SetNumberOfConnections(int value)
Definition Lag.h:69
Lag & WithLagName(LagNameT &&value)
Definition Lag.h:106
Lag & WithConnections(ConnectionsT &&value)
Definition Lag.h:210
Lag & WithTags(TagsT &&value)
Definition Lag.h:255
LagState GetLagState() const
Definition Lag.h:122
bool LagIdHasBeenSet() const
Definition Lag.h:78
void SetMacSecKeys(MacSecKeysT &&value)
Definition Lag.h:303
void SetConnectionsBandwidth(ConnectionsBandwidthT &&value)
Definition Lag.h:55
void SetLocation(LocationT &&value)
Definition Lag.h:135
bool NumberOfConnectionsHasBeenSet() const
Definition Lag.h:68
void SetTags(TagsT &&value)
Definition Lag.h:253
void SetRequestId(RequestIdT &&value)
Definition Lag.h:315
Lag & WithConnectionsBandwidth(ConnectionsBandwidthT &&value)
Definition Lag.h:57
const Aws::String & GetEncryptionMode() const
Definition Lag.h:288
int GetNumberOfConnections() const
Definition Lag.h:67
Lag & WithProviderName(ProviderNameT &&value)
Definition Lag.h:269
const Aws::String & GetProviderName() const
Definition Lag.h:264
void SetOwnerAccount(OwnerAccountT &&value)
Definition Lag.h:92
Lag & WithAwsDevice(AwsDeviceT &&value)
Definition Lag.h:172
Lag & WithAllowsHostedConnections(bool value)
Definition Lag.h:222
void SetLagId(LagIdT &&value)
Definition Lag.h:80
bool MinimumLinksHasBeenSet() const
Definition Lag.h:158
void SetRegion(RegionT &&value)
Definition Lag.h:147
bool AwsDeviceV2HasBeenSet() const
Definition Lag.h:180
void SetConnections(ConnectionsT &&value)
Definition Lag.h:208
AWS_DIRECTCONNECT_API Lag(Aws::Utils::Json::JsonView jsonValue)
void SetEncryptionMode(EncryptionModeT &&value)
Definition Lag.h:291
bool OwnerAccountHasBeenSet() const
Definition Lag.h:90
Lag & WithMacSecKeys(MacSecKeysT &&value)
Definition Lag.h:305
Lag & AddTags(TagsT &&value)
Definition Lag.h:257
Lag & WithRegion(RegionT &&value)
Definition Lag.h:149
int GetMinimumLinks() const
Definition Lag.h:157
bool GetAllowsHostedConnections() const
Definition Lag.h:219
bool ConnectionsBandwidthHasBeenSet() const
Definition Lag.h:53
Lag & WithHasLogicalRedundancy(HasLogicalRedundancy value)
Definition Lag.h:243
void SetAwsLogicalDeviceId(AwsLogicalDeviceIdT &&value)
Definition Lag.h:196
bool HasLogicalRedundancyHasBeenSet() const
Definition Lag.h:241
void SetProviderName(ProviderNameT &&value)
Definition Lag.h:267
void SetLagName(LagNameT &&value)
Definition Lag.h:104
bool JumboFrameCapableHasBeenSet() const
Definition Lag.h:230
bool ProviderNameHasBeenSet() const
Definition Lag.h:265
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue