/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace DirectConnect { namespace Model { /** */ class AssociateMacSecKeyRequest : public DirectConnectRequest { public: AWS_DIRECTCONNECT_API AssociateMacSecKeyRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "AssociateMacSecKey"; } AWS_DIRECTCONNECT_API Aws::String SerializePayload() const override; AWS_DIRECTCONNECT_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG * (dxlag-xxxx).

You can use DescribeConnections or * DescribeLags to retrieve connection ID.

*/ inline const Aws::String& GetConnectionId() const{ return m_connectionId; } /** *

The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG * (dxlag-xxxx).

You can use DescribeConnections or * DescribeLags to retrieve connection ID.

*/ inline bool ConnectionIdHasBeenSet() const { return m_connectionIdHasBeenSet; } /** *

The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG * (dxlag-xxxx).

You can use DescribeConnections or * DescribeLags to retrieve connection ID.

*/ inline void SetConnectionId(const Aws::String& value) { m_connectionIdHasBeenSet = true; m_connectionId = value; } /** *

The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG * (dxlag-xxxx).

You can use DescribeConnections or * DescribeLags to retrieve connection ID.

*/ inline void SetConnectionId(Aws::String&& value) { m_connectionIdHasBeenSet = true; m_connectionId = std::move(value); } /** *

The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG * (dxlag-xxxx).

You can use DescribeConnections or * DescribeLags to retrieve connection ID.

*/ inline void SetConnectionId(const char* value) { m_connectionIdHasBeenSet = true; m_connectionId.assign(value); } /** *

The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG * (dxlag-xxxx).

You can use DescribeConnections or * DescribeLags to retrieve connection ID.

*/ inline AssociateMacSecKeyRequest& WithConnectionId(const Aws::String& value) { SetConnectionId(value); return *this;} /** *

The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG * (dxlag-xxxx).

You can use DescribeConnections or * DescribeLags to retrieve connection ID.

*/ inline AssociateMacSecKeyRequest& WithConnectionId(Aws::String&& value) { SetConnectionId(std::move(value)); return *this;} /** *

The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG * (dxlag-xxxx).

You can use DescribeConnections or * DescribeLags to retrieve connection ID.

*/ inline AssociateMacSecKeyRequest& WithConnectionId(const char* value) { SetConnectionId(value); return *this;} /** *

The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to * associate with the dedicated connection.

You can use * DescribeConnections or DescribeLags to retrieve the MAC Security * (MACsec) secret key.

If you use this request parameter, you do not use * the ckn and cak request parameters.

*/ inline const Aws::String& GetSecretARN() const{ return m_secretARN; } /** *

The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to * associate with the dedicated connection.

You can use * DescribeConnections or DescribeLags to retrieve the MAC Security * (MACsec) secret key.

If you use this request parameter, you do not use * the ckn and cak request parameters.

*/ inline bool SecretARNHasBeenSet() const { return m_secretARNHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to * associate with the dedicated connection.

You can use * DescribeConnections or DescribeLags to retrieve the MAC Security * (MACsec) secret key.

If you use this request parameter, you do not use * the ckn and cak request parameters.

*/ inline void SetSecretARN(const Aws::String& value) { m_secretARNHasBeenSet = true; m_secretARN = value; } /** *

The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to * associate with the dedicated connection.

You can use * DescribeConnections or DescribeLags to retrieve the MAC Security * (MACsec) secret key.

If you use this request parameter, you do not use * the ckn and cak request parameters.

*/ inline void SetSecretARN(Aws::String&& value) { m_secretARNHasBeenSet = true; m_secretARN = std::move(value); } /** *

The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to * associate with the dedicated connection.

You can use * DescribeConnections or DescribeLags to retrieve the MAC Security * (MACsec) secret key.

If you use this request parameter, you do not use * the ckn and cak request parameters.

*/ inline void SetSecretARN(const char* value) { m_secretARNHasBeenSet = true; m_secretARN.assign(value); } /** *

The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to * associate with the dedicated connection.

You can use * DescribeConnections or DescribeLags to retrieve the MAC Security * (MACsec) secret key.

If you use this request parameter, you do not use * the ckn and cak request parameters.

*/ inline AssociateMacSecKeyRequest& WithSecretARN(const Aws::String& value) { SetSecretARN(value); return *this;} /** *

The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to * associate with the dedicated connection.

You can use * DescribeConnections or DescribeLags to retrieve the MAC Security * (MACsec) secret key.

If you use this request parameter, you do not use * the ckn and cak request parameters.

*/ inline AssociateMacSecKeyRequest& WithSecretARN(Aws::String&& value) { SetSecretARN(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to * associate with the dedicated connection.

You can use * DescribeConnections or DescribeLags to retrieve the MAC Security * (MACsec) secret key.

If you use this request parameter, you do not use * the ckn and cak request parameters.

*/ inline AssociateMacSecKeyRequest& WithSecretARN(const char* value) { SetSecretARN(value); return *this;} /** *

The MAC Security (MACsec) CKN to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the cak request parameter and not * use the secretARN request parameter.

*/ inline const Aws::String& GetCkn() const{ return m_ckn; } /** *

The MAC Security (MACsec) CKN to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the cak request parameter and not * use the secretARN request parameter.

*/ inline bool CknHasBeenSet() const { return m_cknHasBeenSet; } /** *

The MAC Security (MACsec) CKN to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the cak request parameter and not * use the secretARN request parameter.

*/ inline void SetCkn(const Aws::String& value) { m_cknHasBeenSet = true; m_ckn = value; } /** *

The MAC Security (MACsec) CKN to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the cak request parameter and not * use the secretARN request parameter.

*/ inline void SetCkn(Aws::String&& value) { m_cknHasBeenSet = true; m_ckn = std::move(value); } /** *

The MAC Security (MACsec) CKN to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the cak request parameter and not * use the secretARN request parameter.

*/ inline void SetCkn(const char* value) { m_cknHasBeenSet = true; m_ckn.assign(value); } /** *

The MAC Security (MACsec) CKN to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the cak request parameter and not * use the secretARN request parameter.

*/ inline AssociateMacSecKeyRequest& WithCkn(const Aws::String& value) { SetCkn(value); return *this;} /** *

The MAC Security (MACsec) CKN to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the cak request parameter and not * use the secretARN request parameter.

*/ inline AssociateMacSecKeyRequest& WithCkn(Aws::String&& value) { SetCkn(std::move(value)); return *this;} /** *

The MAC Security (MACsec) CKN to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the cak request parameter and not * use the secretARN request parameter.

*/ inline AssociateMacSecKeyRequest& WithCkn(const char* value) { SetCkn(value); return *this;} /** *

The MAC Security (MACsec) CAK to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the ckn request parameter and not * use the secretARN request parameter.

*/ inline const Aws::String& GetCak() const{ return m_cak; } /** *

The MAC Security (MACsec) CAK to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the ckn request parameter and not * use the secretARN request parameter.

*/ inline bool CakHasBeenSet() const { return m_cakHasBeenSet; } /** *

The MAC Security (MACsec) CAK to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the ckn request parameter and not * use the secretARN request parameter.

*/ inline void SetCak(const Aws::String& value) { m_cakHasBeenSet = true; m_cak = value; } /** *

The MAC Security (MACsec) CAK to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the ckn request parameter and not * use the secretARN request parameter.

*/ inline void SetCak(Aws::String&& value) { m_cakHasBeenSet = true; m_cak = std::move(value); } /** *

The MAC Security (MACsec) CAK to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the ckn request parameter and not * use the secretARN request parameter.

*/ inline void SetCak(const char* value) { m_cakHasBeenSet = true; m_cak.assign(value); } /** *

The MAC Security (MACsec) CAK to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the ckn request parameter and not * use the secretARN request parameter.

*/ inline AssociateMacSecKeyRequest& WithCak(const Aws::String& value) { SetCak(value); return *this;} /** *

The MAC Security (MACsec) CAK to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the ckn request parameter and not * use the secretARN request parameter.

*/ inline AssociateMacSecKeyRequest& WithCak(Aws::String&& value) { SetCak(std::move(value)); return *this;} /** *

The MAC Security (MACsec) CAK to associate with the dedicated connection.

*

You can create the CKN/CAK pair using an industry standard tool.

The * valid values are 64 hexadecimal characters (0-9, A-E).

If you use this * request parameter, you must use the ckn request parameter and not * use the secretARN request parameter.

*/ inline AssociateMacSecKeyRequest& WithCak(const char* value) { SetCak(value); return *this;} private: Aws::String m_connectionId; bool m_connectionIdHasBeenSet = false; Aws::String m_secretARN; bool m_secretARNHasBeenSet = false; Aws::String m_ckn; bool m_cknHasBeenSet = false; Aws::String m_cak; bool m_cakHasBeenSet = false; }; } // namespace Model } // namespace DirectConnect } // namespace Aws