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/Connection.h>
11#include <aws/directconnect/model/HasLogicalRedundancy.h>
12#include <aws/directconnect/model/LagState.h>
13#include <aws/directconnect/model/MacSecKey.h>
14#include <aws/directconnect/model/Tag.h>
25namespace DirectConnect {
36 AWS_DIRECTCONNECT_API
Lag() =
default;
48 template <
typename ConnectionsBandw
idthT = Aws::String>
50 m_connectionsBandwidthHasBeenSet =
true;
51 m_connectionsBandwidth = std::forward<ConnectionsBandwidthT>(value);
53 template <
typename ConnectionsBandw
idthT = Aws::String>
70 m_numberOfConnectionsHasBeenSet =
true;
71 m_numberOfConnections = value;
85 template <
typename LagIdT = Aws::String>
87 m_lagIdHasBeenSet =
true;
88 m_lagId = std::forward<LagIdT>(value);
90 template <
typename LagIdT = Aws::String>
92 SetLagId(std::forward<LagIdT>(value));
103 template <
typename OwnerAccountT = Aws::String>
105 m_ownerAccountHasBeenSet =
true;
106 m_ownerAccount = std::forward<OwnerAccountT>(value);
108 template <
typename OwnerAccountT = Aws::String>
121 template <
typename LagNameT = Aws::String>
123 m_lagNameHasBeenSet =
true;
124 m_lagName = std::forward<LagNameT>(value);
126 template <
typename LagNameT = Aws::String>
149 m_lagStateHasBeenSet =
true;
164 template <
typename LocationT = Aws::String>
166 m_locationHasBeenSet =
true;
167 m_location = std::forward<LocationT>(value);
169 template <
typename LocationT = Aws::String>
182 template <
typename RegionT = Aws::String>
184 m_regionHasBeenSet =
true;
185 m_region = std::forward<RegionT>(value);
187 template <
typename RegionT = Aws::String>
202 m_minimumLinksHasBeenSet =
true;
203 m_minimumLinks = value;
217 template <
typename AwsDeviceT = Aws::String>
219 m_awsDeviceHasBeenSet =
true;
220 m_awsDevice = std::forward<AwsDeviceT>(value);
222 template <
typename AwsDeviceT = Aws::String>
235 template <
typename AwsDeviceV2T = Aws::String>
237 m_awsDeviceV2HasBeenSet =
true;
238 m_awsDeviceV2 = std::forward<AwsDeviceV2T>(value);
240 template <
typename AwsDeviceV2T = Aws::String>
255 template <
typename AwsLogicalDeviceIdT = Aws::String>
257 m_awsLogicalDeviceIdHasBeenSet =
true;
258 m_awsLogicalDeviceId = std::forward<AwsLogicalDeviceIdT>(value);
260 template <
typename AwsLogicalDeviceIdT = Aws::String>
273 template <
typename ConnectionsT = Aws::Vector<Connection>>
275 m_connectionsHasBeenSet =
true;
276 m_connections = std::forward<ConnectionsT>(value);
278 template <
typename ConnectionsT = Aws::Vector<Connection>>
283 template <
typename ConnectionsT = Connection>
285 m_connectionsHasBeenSet =
true;
286 m_connections.emplace_back(std::forward<ConnectionsT>(value));
298 m_allowsHostedConnectionsHasBeenSet =
true;
299 m_allowsHostedConnections = value;
314 m_jumboFrameCapableHasBeenSet =
true;
315 m_jumboFrameCapable = value;
331 m_hasLogicalRedundancyHasBeenSet =
true;
332 m_hasLogicalRedundancy = value;
346 template <
typename TagsT = Aws::Vector<Tag>>
348 m_tagsHasBeenSet =
true;
349 m_tags = std::forward<TagsT>(value);
351 template <
typename TagsT = Aws::Vector<Tag>>
353 SetTags(std::forward<TagsT>(value));
356 template <
typename TagsT = Tag>
358 m_tagsHasBeenSet =
true;
359 m_tags.emplace_back(std::forward<TagsT>(value));
370 template <
typename Prov
iderNameT = Aws::String>
372 m_providerNameHasBeenSet =
true;
373 m_providerName = std::forward<ProviderNameT>(value);
375 template <
typename Prov
iderNameT = Aws::String>
389 m_macSecCapableHasBeenSet =
true;
390 m_macSecCapable = value;
406 template <
typename EncryptionModeT = Aws::String>
408 m_encryptionModeHasBeenSet =
true;
409 m_encryptionMode = std::forward<EncryptionModeT>(value);
411 template <
typename EncryptionModeT = Aws::String>
424 template <
typename MacSecKeysT = Aws::Vector<MacSecKey>>
426 m_macSecKeysHasBeenSet =
true;
427 m_macSecKeys = std::forward<MacSecKeysT>(value);
429 template <
typename MacSecKeysT = Aws::Vector<MacSecKey>>
434 template <
typename MacSecKeysT = MacSecKey>
436 m_macSecKeysHasBeenSet =
true;
437 m_macSecKeys.emplace_back(std::forward<MacSecKeysT>(value));
446 template <
typename RequestIdT = Aws::String>
448 m_requestIdHasBeenSet =
true;
449 m_requestId = std::forward<RequestIdT>(value);
451 template <
typename RequestIdT = Aws::String>
460 int m_numberOfConnections{0};
474 int m_minimumLinks{0};
484 bool m_allowsHostedConnections{
false};
486 bool m_jumboFrameCapable{
false};
494 bool m_macSecCapable{
false};
501 bool m_connectionsBandwidthHasBeenSet =
false;
502 bool m_numberOfConnectionsHasBeenSet =
false;
503 bool m_lagIdHasBeenSet =
false;
504 bool m_ownerAccountHasBeenSet =
false;
505 bool m_lagNameHasBeenSet =
false;
506 bool m_lagStateHasBeenSet =
false;
507 bool m_locationHasBeenSet =
false;
508 bool m_regionHasBeenSet =
false;
509 bool m_minimumLinksHasBeenSet =
false;
510 bool m_awsDeviceHasBeenSet =
false;
511 bool m_awsDeviceV2HasBeenSet =
false;
512 bool m_awsLogicalDeviceIdHasBeenSet =
false;
513 bool m_connectionsHasBeenSet =
false;
514 bool m_allowsHostedConnectionsHasBeenSet =
false;
515 bool m_jumboFrameCapableHasBeenSet =
false;
516 bool m_hasLogicalRedundancyHasBeenSet =
false;
517 bool m_tagsHasBeenSet =
false;
518 bool m_providerNameHasBeenSet =
false;
519 bool m_macSecCapableHasBeenSet =
false;
520 bool m_encryptionModeHasBeenSet =
false;
521 bool m_macSecKeysHasBeenSet =
false;
522 bool m_requestIdHasBeenSet =
false;
const Aws::String & GetLagName() const
bool GetJumboFrameCapable() const
Lag & WithJumboFrameCapable(bool value)
Lag & WithAwsLogicalDeviceId(AwsLogicalDeviceIdT &&value)
bool ConnectionsHasBeenSet() const
Lag & WithLagState(LagState value)
void SetAwsDeviceV2(AwsDeviceV2T &&value)
void SetLagState(LagState value)
const Aws::Vector< Tag > & GetTags() const
bool MacSecCapableHasBeenSet() const
const Aws::String & GetLagId() const
void SetJumboFrameCapable(bool value)
bool LagNameHasBeenSet() const
Lag & WithNumberOfConnections(int value)
bool AwsDeviceHasBeenSet() const
const Aws::String & GetConnectionsBandwidth() const
void SetHasLogicalRedundancy(HasLogicalRedundancy value)
Lag & AddMacSecKeys(MacSecKeysT &&value)
void SetMinimumLinks(int value)
const Aws::Vector< Connection > & GetConnections() const
AWS_DIRECTCONNECT_API Lag()=default
const Aws::String & GetRegion() const
const Aws::String & GetAwsLogicalDeviceId() const
bool MacSecKeysHasBeenSet() const
Lag & WithLocation(LocationT &&value)
HasLogicalRedundancy GetHasLogicalRedundancy() const
const Aws::String & GetLocation() const
void SetMacSecCapable(bool value)
bool EncryptionModeHasBeenSet() const
Lag & WithRequestId(RequestIdT &&value)
bool TagsHasBeenSet() const
AWS_DIRECTCONNECT_API Lag & operator=(Aws::Utils::Json::JsonView jsonValue)
Lag & AddConnections(ConnectionsT &&value)
Lag & WithMacSecCapable(bool value)
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
Lag & WithOwnerAccount(OwnerAccountT &&value)
Lag & WithMinimumLinks(int value)
bool RequestIdHasBeenSet() const
bool LagStateHasBeenSet() const
Lag & WithAwsDeviceV2(AwsDeviceV2T &&value)
const Aws::Vector< MacSecKey > & GetMacSecKeys() const
void SetAllowsHostedConnections(bool value)
const Aws::String & GetRequestId() const
bool LocationHasBeenSet() const
bool GetMacSecCapable() const
bool AwsLogicalDeviceIdHasBeenSet() const
const Aws::String & GetOwnerAccount() const
Lag & WithEncryptionMode(EncryptionModeT &&value)
void SetAwsDevice(AwsDeviceT &&value)
const Aws::String & GetAwsDeviceV2() const
bool RegionHasBeenSet() const
Lag & WithLagId(LagIdT &&value)
bool AllowsHostedConnectionsHasBeenSet() const
const Aws::String & GetAwsDevice() const
void SetNumberOfConnections(int value)
Lag & WithLagName(LagNameT &&value)
Lag & WithConnections(ConnectionsT &&value)
Lag & WithTags(TagsT &&value)
LagState GetLagState() const
bool LagIdHasBeenSet() const
void SetMacSecKeys(MacSecKeysT &&value)
void SetConnectionsBandwidth(ConnectionsBandwidthT &&value)
void SetLocation(LocationT &&value)
bool NumberOfConnectionsHasBeenSet() const
void SetTags(TagsT &&value)
void SetRequestId(RequestIdT &&value)
Lag & WithConnectionsBandwidth(ConnectionsBandwidthT &&value)
const Aws::String & GetEncryptionMode() const
int GetNumberOfConnections() const
Lag & WithProviderName(ProviderNameT &&value)
const Aws::String & GetProviderName() const
void SetOwnerAccount(OwnerAccountT &&value)
Lag & WithAwsDevice(AwsDeviceT &&value)
Lag & WithAllowsHostedConnections(bool value)
void SetLagId(LagIdT &&value)
bool MinimumLinksHasBeenSet() const
void SetRegion(RegionT &&value)
bool AwsDeviceV2HasBeenSet() const
void SetConnections(ConnectionsT &&value)
AWS_DIRECTCONNECT_API Lag(Aws::Utils::Json::JsonView jsonValue)
void SetEncryptionMode(EncryptionModeT &&value)
bool OwnerAccountHasBeenSet() const
Lag & WithMacSecKeys(MacSecKeysT &&value)
Lag & AddTags(TagsT &&value)
Lag & WithRegion(RegionT &&value)
int GetMinimumLinks() const
bool GetAllowsHostedConnections() const
bool ConnectionsBandwidthHasBeenSet() const
Lag & WithHasLogicalRedundancy(HasLogicalRedundancy value)
void SetAwsLogicalDeviceId(AwsLogicalDeviceIdT &&value)
bool HasLogicalRedundancyHasBeenSet() const
void SetProviderName(ProviderNameT &&value)
void SetLagName(LagNameT &&value)
bool JumboFrameCapableHasBeenSet() const
bool ProviderNameHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue