/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Xml { class XmlDocument; } // namespace Xml } // namespace Utils namespace EC2 { namespace Model { /** *

Contains the output of DescribeNetworkInterfaceAttribute.

See * Also:

AWS * API Reference

*/ class DescribeNetworkInterfaceAttributeResponse { public: AWS_EC2_API DescribeNetworkInterfaceAttributeResponse(); AWS_EC2_API DescribeNetworkInterfaceAttributeResponse(const Aws::AmazonWebServiceResult& result); AWS_EC2_API DescribeNetworkInterfaceAttributeResponse& operator=(const Aws::AmazonWebServiceResult& result); /** *

The attachment (if any) of the network interface.

*/ inline const NetworkInterfaceAttachment& GetAttachment() const{ return m_attachment; } /** *

The attachment (if any) of the network interface.

*/ inline void SetAttachment(const NetworkInterfaceAttachment& value) { m_attachment = value; } /** *

The attachment (if any) of the network interface.

*/ inline void SetAttachment(NetworkInterfaceAttachment&& value) { m_attachment = std::move(value); } /** *

The attachment (if any) of the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithAttachment(const NetworkInterfaceAttachment& value) { SetAttachment(value); return *this;} /** *

The attachment (if any) of the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithAttachment(NetworkInterfaceAttachment&& value) { SetAttachment(std::move(value)); return *this;} /** *

The description of the network interface.

*/ inline const AttributeValue& GetDescription() const{ return m_description; } /** *

The description of the network interface.

*/ inline void SetDescription(const AttributeValue& value) { m_description = value; } /** *

The description of the network interface.

*/ inline void SetDescription(AttributeValue&& value) { m_description = std::move(value); } /** *

The description of the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithDescription(const AttributeValue& value) { SetDescription(value); return *this;} /** *

The description of the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithDescription(AttributeValue&& value) { SetDescription(std::move(value)); return *this;} /** *

The security groups associated with the network interface.

*/ inline const Aws::Vector& GetGroups() const{ return m_groups; } /** *

The security groups associated with the network interface.

*/ inline void SetGroups(const Aws::Vector& value) { m_groups = value; } /** *

The security groups associated with the network interface.

*/ inline void SetGroups(Aws::Vector&& value) { m_groups = std::move(value); } /** *

The security groups associated with the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithGroups(const Aws::Vector& value) { SetGroups(value); return *this;} /** *

The security groups associated with the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithGroups(Aws::Vector&& value) { SetGroups(std::move(value)); return *this;} /** *

The security groups associated with the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& AddGroups(const GroupIdentifier& value) { m_groups.push_back(value); return *this; } /** *

The security groups associated with the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& AddGroups(GroupIdentifier&& value) { m_groups.push_back(std::move(value)); return *this; } /** *

The ID of the network interface.

*/ inline const Aws::String& GetNetworkInterfaceId() const{ return m_networkInterfaceId; } /** *

The ID of the network interface.

*/ inline void SetNetworkInterfaceId(const Aws::String& value) { m_networkInterfaceId = value; } /** *

The ID of the network interface.

*/ inline void SetNetworkInterfaceId(Aws::String&& value) { m_networkInterfaceId = std::move(value); } /** *

The ID of the network interface.

*/ inline void SetNetworkInterfaceId(const char* value) { m_networkInterfaceId.assign(value); } /** *

The ID of the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithNetworkInterfaceId(const Aws::String& value) { SetNetworkInterfaceId(value); return *this;} /** *

The ID of the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithNetworkInterfaceId(Aws::String&& value) { SetNetworkInterfaceId(std::move(value)); return *this;} /** *

The ID of the network interface.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithNetworkInterfaceId(const char* value) { SetNetworkInterfaceId(value); return *this;} /** *

Indicates whether source/destination checking is enabled.

*/ inline const AttributeBooleanValue& GetSourceDestCheck() const{ return m_sourceDestCheck; } /** *

Indicates whether source/destination checking is enabled.

*/ inline void SetSourceDestCheck(const AttributeBooleanValue& value) { m_sourceDestCheck = value; } /** *

Indicates whether source/destination checking is enabled.

*/ inline void SetSourceDestCheck(AttributeBooleanValue&& value) { m_sourceDestCheck = std::move(value); } /** *

Indicates whether source/destination checking is enabled.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithSourceDestCheck(const AttributeBooleanValue& value) { SetSourceDestCheck(value); return *this;} /** *

Indicates whether source/destination checking is enabled.

*/ inline DescribeNetworkInterfaceAttributeResponse& WithSourceDestCheck(AttributeBooleanValue&& value) { SetSourceDestCheck(std::move(value)); return *this;} inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; } inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; } inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = std::move(value); } inline DescribeNetworkInterfaceAttributeResponse& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;} inline DescribeNetworkInterfaceAttributeResponse& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;} private: NetworkInterfaceAttachment m_attachment; AttributeValue m_description; Aws::Vector m_groups; Aws::String m_networkInterfaceId; AttributeBooleanValue m_sourceDestCheck; ResponseMetadata m_responseMetadata; }; } // namespace Model } // namespace EC2 } // namespace Aws