/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about a link aggregation group (LAG).See Also:
* AWS
* API Reference
The individual bandwidth of the physical connections bundled by the LAG. The * possible values are 1Gbps and 10Gbps.
*/ inline const Aws::String& GetConnectionsBandwidth() const{ return m_connectionsBandwidth; } /** *The individual bandwidth of the physical connections bundled by the LAG. The * possible values are 1Gbps and 10Gbps.
*/ inline void SetConnectionsBandwidth(const Aws::String& value) { m_connectionsBandwidth = value; } /** *The individual bandwidth of the physical connections bundled by the LAG. The * possible values are 1Gbps and 10Gbps.
*/ inline void SetConnectionsBandwidth(Aws::String&& value) { m_connectionsBandwidth = std::move(value); } /** *The individual bandwidth of the physical connections bundled by the LAG. The * possible values are 1Gbps and 10Gbps.
*/ inline void SetConnectionsBandwidth(const char* value) { m_connectionsBandwidth.assign(value); } /** *The individual bandwidth of the physical connections bundled by the LAG. The * possible values are 1Gbps and 10Gbps.
*/ inline UpdateLagResult& WithConnectionsBandwidth(const Aws::String& value) { SetConnectionsBandwidth(value); return *this;} /** *The individual bandwidth of the physical connections bundled by the LAG. The * possible values are 1Gbps and 10Gbps.
*/ inline UpdateLagResult& WithConnectionsBandwidth(Aws::String&& value) { SetConnectionsBandwidth(std::move(value)); return *this;} /** *The individual bandwidth of the physical connections bundled by the LAG. The * possible values are 1Gbps and 10Gbps.
*/ inline UpdateLagResult& WithConnectionsBandwidth(const char* value) { SetConnectionsBandwidth(value); return *this;} /** *The number of physical dedicated connections bundled by the LAG, up to a * maximum of 10.
*/ inline int GetNumberOfConnections() const{ return m_numberOfConnections; } /** *The number of physical dedicated connections bundled by the LAG, up to a * maximum of 10.
*/ inline void SetNumberOfConnections(int value) { m_numberOfConnections = value; } /** *The number of physical dedicated connections bundled by the LAG, up to a * maximum of 10.
*/ inline UpdateLagResult& WithNumberOfConnections(int value) { SetNumberOfConnections(value); return *this;} /** *The ID of the LAG.
*/ inline const Aws::String& GetLagId() const{ return m_lagId; } /** *The ID of the LAG.
*/ inline void SetLagId(const Aws::String& value) { m_lagId = value; } /** *The ID of the LAG.
*/ inline void SetLagId(Aws::String&& value) { m_lagId = std::move(value); } /** *The ID of the LAG.
*/ inline void SetLagId(const char* value) { m_lagId.assign(value); } /** *The ID of the LAG.
*/ inline UpdateLagResult& WithLagId(const Aws::String& value) { SetLagId(value); return *this;} /** *The ID of the LAG.
*/ inline UpdateLagResult& WithLagId(Aws::String&& value) { SetLagId(std::move(value)); return *this;} /** *The ID of the LAG.
*/ inline UpdateLagResult& WithLagId(const char* value) { SetLagId(value); return *this;} /** *The ID of the Amazon Web Services account that owns the LAG.
*/ inline const Aws::String& GetOwnerAccount() const{ return m_ownerAccount; } /** *The ID of the Amazon Web Services account that owns the LAG.
*/ inline void SetOwnerAccount(const Aws::String& value) { m_ownerAccount = value; } /** *The ID of the Amazon Web Services account that owns the LAG.
*/ inline void SetOwnerAccount(Aws::String&& value) { m_ownerAccount = std::move(value); } /** *The ID of the Amazon Web Services account that owns the LAG.
*/ inline void SetOwnerAccount(const char* value) { m_ownerAccount.assign(value); } /** *The ID of the Amazon Web Services account that owns the LAG.
*/ inline UpdateLagResult& WithOwnerAccount(const Aws::String& value) { SetOwnerAccount(value); return *this;} /** *The ID of the Amazon Web Services account that owns the LAG.
*/ inline UpdateLagResult& WithOwnerAccount(Aws::String&& value) { SetOwnerAccount(std::move(value)); return *this;} /** *The ID of the Amazon Web Services account that owns the LAG.
*/ inline UpdateLagResult& WithOwnerAccount(const char* value) { SetOwnerAccount(value); return *this;} /** *The name of the LAG.
*/ inline const Aws::String& GetLagName() const{ return m_lagName; } /** *The name of the LAG.
*/ inline void SetLagName(const Aws::String& value) { m_lagName = value; } /** *The name of the LAG.
*/ inline void SetLagName(Aws::String&& value) { m_lagName = std::move(value); } /** *The name of the LAG.
*/ inline void SetLagName(const char* value) { m_lagName.assign(value); } /** *The name of the LAG.
*/ inline UpdateLagResult& WithLagName(const Aws::String& value) { SetLagName(value); return *this;} /** *The name of the LAG.
*/ inline UpdateLagResult& WithLagName(Aws::String&& value) { SetLagName(std::move(value)); return *this;} /** *The name of the LAG.
*/ inline UpdateLagResult& WithLagName(const char* value) { SetLagName(value); return *this;} /** *The state of the LAG. The following are the possible values:
requested
: The initial state of a LAG. The LAG stays in the
* requested state until the Letter of Authorization (LOA) is available.
pending
: The LAG has been approved and is being
* initialized.
available
: The network link is
* established and the LAG is ready for use.
down
:
* The network link is down.
deleting
: The LAG is
* being deleted.
deleted
: The LAG is deleted.
unknown
: The state of the LAG is not available.
The state of the LAG. The following are the possible values:
requested
: The initial state of a LAG. The LAG stays in the
* requested state until the Letter of Authorization (LOA) is available.
pending
: The LAG has been approved and is being
* initialized.
available
: The network link is
* established and the LAG is ready for use.
down
:
* The network link is down.
deleting
: The LAG is
* being deleted.
deleted
: The LAG is deleted.
unknown
: The state of the LAG is not available.
The state of the LAG. The following are the possible values:
requested
: The initial state of a LAG. The LAG stays in the
* requested state until the Letter of Authorization (LOA) is available.
pending
: The LAG has been approved and is being
* initialized.
available
: The network link is
* established and the LAG is ready for use.
down
:
* The network link is down.
deleting
: The LAG is
* being deleted.
deleted
: The LAG is deleted.
unknown
: The state of the LAG is not available.
The state of the LAG. The following are the possible values:
requested
: The initial state of a LAG. The LAG stays in the
* requested state until the Letter of Authorization (LOA) is available.
pending
: The LAG has been approved and is being
* initialized.
available
: The network link is
* established and the LAG is ready for use.
down
:
* The network link is down.
deleting
: The LAG is
* being deleted.
deleted
: The LAG is deleted.
unknown
: The state of the LAG is not available.
The state of the LAG. The following are the possible values:
requested
: The initial state of a LAG. The LAG stays in the
* requested state until the Letter of Authorization (LOA) is available.
pending
: The LAG has been approved and is being
* initialized.
available
: The network link is
* established and the LAG is ready for use.
down
:
* The network link is down.
deleting
: The LAG is
* being deleted.
deleted
: The LAG is deleted.
unknown
: The state of the LAG is not available.
The location of the LAG.
*/ inline const Aws::String& GetLocation() const{ return m_location; } /** *The location of the LAG.
*/ inline void SetLocation(const Aws::String& value) { m_location = value; } /** *The location of the LAG.
*/ inline void SetLocation(Aws::String&& value) { m_location = std::move(value); } /** *The location of the LAG.
*/ inline void SetLocation(const char* value) { m_location.assign(value); } /** *The location of the LAG.
*/ inline UpdateLagResult& WithLocation(const Aws::String& value) { SetLocation(value); return *this;} /** *The location of the LAG.
*/ inline UpdateLagResult& WithLocation(Aws::String&& value) { SetLocation(std::move(value)); return *this;} /** *The location of the LAG.
*/ inline UpdateLagResult& WithLocation(const char* value) { SetLocation(value); return *this;} /** *The Amazon Web Services Region where the connection is located.
*/ inline const Aws::String& GetRegion() const{ return m_region; } /** *The Amazon Web Services Region where the connection is located.
*/ inline void SetRegion(const Aws::String& value) { m_region = value; } /** *The Amazon Web Services Region where the connection is located.
*/ inline void SetRegion(Aws::String&& value) { m_region = std::move(value); } /** *The Amazon Web Services Region where the connection is located.
*/ inline void SetRegion(const char* value) { m_region.assign(value); } /** *The Amazon Web Services Region where the connection is located.
*/ inline UpdateLagResult& WithRegion(const Aws::String& value) { SetRegion(value); return *this;} /** *The Amazon Web Services Region where the connection is located.
*/ inline UpdateLagResult& WithRegion(Aws::String&& value) { SetRegion(std::move(value)); return *this;} /** *The Amazon Web Services Region where the connection is located.
*/ inline UpdateLagResult& WithRegion(const char* value) { SetRegion(value); return *this;} /** *The minimum number of physical dedicated connections that must be operational * for the LAG itself to be operational.
*/ inline int GetMinimumLinks() const{ return m_minimumLinks; } /** *The minimum number of physical dedicated connections that must be operational * for the LAG itself to be operational.
*/ inline void SetMinimumLinks(int value) { m_minimumLinks = value; } /** *The minimum number of physical dedicated connections that must be operational * for the LAG itself to be operational.
*/ inline UpdateLagResult& WithMinimumLinks(int value) { SetMinimumLinks(value); return *this;} /** *The Direct Connect endpoint that hosts the LAG.
*/ inline const Aws::String& GetAwsDevice() const{ return m_awsDevice; } /** *The Direct Connect endpoint that hosts the LAG.
*/ inline void SetAwsDevice(const Aws::String& value) { m_awsDevice = value; } /** *The Direct Connect endpoint that hosts the LAG.
*/ inline void SetAwsDevice(Aws::String&& value) { m_awsDevice = std::move(value); } /** *The Direct Connect endpoint that hosts the LAG.
*/ inline void SetAwsDevice(const char* value) { m_awsDevice.assign(value); } /** *The Direct Connect endpoint that hosts the LAG.
*/ inline UpdateLagResult& WithAwsDevice(const Aws::String& value) { SetAwsDevice(value); return *this;} /** *The Direct Connect endpoint that hosts the LAG.
*/ inline UpdateLagResult& WithAwsDevice(Aws::String&& value) { SetAwsDevice(std::move(value)); return *this;} /** *The Direct Connect endpoint that hosts the LAG.
*/ inline UpdateLagResult& WithAwsDevice(const char* value) { SetAwsDevice(value); return *this;} /** *The Direct Connect endpoint that hosts the LAG.
*/ inline const Aws::String& GetAwsDeviceV2() const{ return m_awsDeviceV2; } /** *The Direct Connect endpoint that hosts the LAG.
*/ inline void SetAwsDeviceV2(const Aws::String& value) { m_awsDeviceV2 = value; } /** *The Direct Connect endpoint that hosts the LAG.
*/ inline void SetAwsDeviceV2(Aws::String&& value) { m_awsDeviceV2 = std::move(value); } /** *The Direct Connect endpoint that hosts the LAG.
*/ inline void SetAwsDeviceV2(const char* value) { m_awsDeviceV2.assign(value); } /** *The Direct Connect endpoint that hosts the LAG.
*/ inline UpdateLagResult& WithAwsDeviceV2(const Aws::String& value) { SetAwsDeviceV2(value); return *this;} /** *The Direct Connect endpoint that hosts the LAG.
*/ inline UpdateLagResult& WithAwsDeviceV2(Aws::String&& value) { SetAwsDeviceV2(std::move(value)); return *this;} /** *The Direct Connect endpoint that hosts the LAG.
*/ inline UpdateLagResult& WithAwsDeviceV2(const char* value) { SetAwsDeviceV2(value); return *this;} /** *The Direct Connect endpoint that terminates the logical connection. This * device might be different than the device that terminates the physical * connection.
*/ inline const Aws::String& GetAwsLogicalDeviceId() const{ return m_awsLogicalDeviceId; } /** *The Direct Connect endpoint that terminates the logical connection. This * device might be different than the device that terminates the physical * connection.
*/ inline void SetAwsLogicalDeviceId(const Aws::String& value) { m_awsLogicalDeviceId = value; } /** *The Direct Connect endpoint that terminates the logical connection. This * device might be different than the device that terminates the physical * connection.
*/ inline void SetAwsLogicalDeviceId(Aws::String&& value) { m_awsLogicalDeviceId = std::move(value); } /** *The Direct Connect endpoint that terminates the logical connection. This * device might be different than the device that terminates the physical * connection.
*/ inline void SetAwsLogicalDeviceId(const char* value) { m_awsLogicalDeviceId.assign(value); } /** *The Direct Connect endpoint that terminates the logical connection. This * device might be different than the device that terminates the physical * connection.
*/ inline UpdateLagResult& WithAwsLogicalDeviceId(const Aws::String& value) { SetAwsLogicalDeviceId(value); return *this;} /** *The Direct Connect endpoint that terminates the logical connection. This * device might be different than the device that terminates the physical * connection.
*/ inline UpdateLagResult& WithAwsLogicalDeviceId(Aws::String&& value) { SetAwsLogicalDeviceId(std::move(value)); return *this;} /** *The Direct Connect endpoint that terminates the logical connection. This * device might be different than the device that terminates the physical * connection.
*/ inline UpdateLagResult& WithAwsLogicalDeviceId(const char* value) { SetAwsLogicalDeviceId(value); return *this;} /** *The connections bundled by the LAG.
*/ inline const Aws::VectorThe connections bundled by the LAG.
*/ inline void SetConnections(const Aws::VectorThe connections bundled by the LAG.
*/ inline void SetConnections(Aws::VectorThe connections bundled by the LAG.
*/ inline UpdateLagResult& WithConnections(const Aws::VectorThe connections bundled by the LAG.
*/ inline UpdateLagResult& WithConnections(Aws::VectorThe connections bundled by the LAG.
*/ inline UpdateLagResult& AddConnections(const Connection& value) { m_connections.push_back(value); return *this; } /** *The connections bundled by the LAG.
*/ inline UpdateLagResult& AddConnections(Connection&& value) { m_connections.push_back(std::move(value)); return *this; } /** *Indicates whether the LAG can host other connections.
*/ inline bool GetAllowsHostedConnections() const{ return m_allowsHostedConnections; } /** *Indicates whether the LAG can host other connections.
*/ inline void SetAllowsHostedConnections(bool value) { m_allowsHostedConnections = value; } /** *Indicates whether the LAG can host other connections.
*/ inline UpdateLagResult& WithAllowsHostedConnections(bool value) { SetAllowsHostedConnections(value); return *this;} /** *Indicates whether jumbo frames are supported.
*/ inline bool GetJumboFrameCapable() const{ return m_jumboFrameCapable; } /** *Indicates whether jumbo frames are supported.
*/ inline void SetJumboFrameCapable(bool value) { m_jumboFrameCapable = value; } /** *Indicates whether jumbo frames are supported.
*/ inline UpdateLagResult& WithJumboFrameCapable(bool value) { SetJumboFrameCapable(value); return *this;} /** *Indicates whether the LAG supports a secondary BGP peer in the same address * family (IPv4/IPv6).
*/ inline const HasLogicalRedundancy& GetHasLogicalRedundancy() const{ return m_hasLogicalRedundancy; } /** *Indicates whether the LAG supports a secondary BGP peer in the same address * family (IPv4/IPv6).
*/ inline void SetHasLogicalRedundancy(const HasLogicalRedundancy& value) { m_hasLogicalRedundancy = value; } /** *Indicates whether the LAG supports a secondary BGP peer in the same address * family (IPv4/IPv6).
*/ inline void SetHasLogicalRedundancy(HasLogicalRedundancy&& value) { m_hasLogicalRedundancy = std::move(value); } /** *Indicates whether the LAG supports a secondary BGP peer in the same address * family (IPv4/IPv6).
*/ inline UpdateLagResult& WithHasLogicalRedundancy(const HasLogicalRedundancy& value) { SetHasLogicalRedundancy(value); return *this;} /** *Indicates whether the LAG supports a secondary BGP peer in the same address * family (IPv4/IPv6).
*/ inline UpdateLagResult& WithHasLogicalRedundancy(HasLogicalRedundancy&& value) { SetHasLogicalRedundancy(std::move(value)); return *this;} /** *The tags associated with the LAG.
*/ inline const Aws::VectorThe tags associated with the LAG.
*/ inline void SetTags(const Aws::VectorThe tags associated with the LAG.
*/ inline void SetTags(Aws::VectorThe tags associated with the LAG.
*/ inline UpdateLagResult& WithTags(const Aws::VectorThe tags associated with the LAG.
*/ inline UpdateLagResult& WithTags(Aws::VectorThe tags associated with the LAG.
*/ inline UpdateLagResult& AddTags(const Tag& value) { m_tags.push_back(value); return *this; } /** *The tags associated with the LAG.
*/ inline UpdateLagResult& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; } /** *The name of the service provider associated with the LAG.
*/ inline const Aws::String& GetProviderName() const{ return m_providerName; } /** *The name of the service provider associated with the LAG.
*/ inline void SetProviderName(const Aws::String& value) { m_providerName = value; } /** *The name of the service provider associated with the LAG.
*/ inline void SetProviderName(Aws::String&& value) { m_providerName = std::move(value); } /** *The name of the service provider associated with the LAG.
*/ inline void SetProviderName(const char* value) { m_providerName.assign(value); } /** *The name of the service provider associated with the LAG.
*/ inline UpdateLagResult& WithProviderName(const Aws::String& value) { SetProviderName(value); return *this;} /** *The name of the service provider associated with the LAG.
*/ inline UpdateLagResult& WithProviderName(Aws::String&& value) { SetProviderName(std::move(value)); return *this;} /** *The name of the service provider associated with the LAG.
*/ inline UpdateLagResult& WithProviderName(const char* value) { SetProviderName(value); return *this;} /** *Indicates whether the LAG supports MAC Security (MACsec).
*/ inline bool GetMacSecCapable() const{ return m_macSecCapable; } /** *Indicates whether the LAG supports MAC Security (MACsec).
*/ inline void SetMacSecCapable(bool value) { m_macSecCapable = value; } /** *Indicates whether the LAG supports MAC Security (MACsec).
*/ inline UpdateLagResult& WithMacSecCapable(bool value) { SetMacSecCapable(value); return *this;} /** *The LAG MAC Security (MACsec) encryption mode.
The valid values are
* no_encrypt
, should_encrypt
, and
* must_encrypt
.
The LAG MAC Security (MACsec) encryption mode.
The valid values are
* no_encrypt
, should_encrypt
, and
* must_encrypt
.
The LAG MAC Security (MACsec) encryption mode.
The valid values are
* no_encrypt
, should_encrypt
, and
* must_encrypt
.
The LAG MAC Security (MACsec) encryption mode.
The valid values are
* no_encrypt
, should_encrypt
, and
* must_encrypt
.
The LAG MAC Security (MACsec) encryption mode.
The valid values are
* no_encrypt
, should_encrypt
, and
* must_encrypt
.
The LAG MAC Security (MACsec) encryption mode.
The valid values are
* no_encrypt
, should_encrypt
, and
* must_encrypt
.
The LAG MAC Security (MACsec) encryption mode.
The valid values are
* no_encrypt
, should_encrypt
, and
* must_encrypt
.
The MAC Security (MACsec) security keys associated with the LAG.
*/ inline const Aws::VectorThe MAC Security (MACsec) security keys associated with the LAG.
*/ inline void SetMacSecKeys(const Aws::VectorThe MAC Security (MACsec) security keys associated with the LAG.
*/ inline void SetMacSecKeys(Aws::VectorThe MAC Security (MACsec) security keys associated with the LAG.
*/ inline UpdateLagResult& WithMacSecKeys(const Aws::VectorThe MAC Security (MACsec) security keys associated with the LAG.
*/ inline UpdateLagResult& WithMacSecKeys(Aws::VectorThe MAC Security (MACsec) security keys associated with the LAG.
*/ inline UpdateLagResult& AddMacSecKeys(const MacSecKey& value) { m_macSecKeys.push_back(value); return *this; } /** *The MAC Security (MACsec) security keys associated with the LAG.
*/ inline UpdateLagResult& AddMacSecKeys(MacSecKey&& value) { m_macSecKeys.push_back(std::move(value)); return *this; } inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline UpdateLagResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline UpdateLagResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline UpdateLagResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_connectionsBandwidth; int m_numberOfConnections; Aws::String m_lagId; Aws::String m_ownerAccount; Aws::String m_lagName; LagState m_lagState; Aws::String m_location; Aws::String m_region; int m_minimumLinks; Aws::String m_awsDevice; Aws::String m_awsDeviceV2; Aws::String m_awsLogicalDeviceId; Aws::Vector