/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Xml { class XmlDocument; } // namespace Xml } // namespace Utils namespace EC2 { namespace Model { class DescribeVpcAttributeResponse { public: AWS_EC2_API DescribeVpcAttributeResponse(); AWS_EC2_API DescribeVpcAttributeResponse(const Aws::AmazonWebServiceResult& result); AWS_EC2_API DescribeVpcAttributeResponse& operator=(const Aws::AmazonWebServiceResult& result); /** *

The ID of the VPC.

*/ inline const Aws::String& GetVpcId() const{ return m_vpcId; } /** *

The ID of the VPC.

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

The ID of the VPC.

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

The ID of the VPC.

*/ inline void SetVpcId(const char* value) { m_vpcId.assign(value); } /** *

The ID of the VPC.

*/ inline DescribeVpcAttributeResponse& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} /** *

The ID of the VPC.

*/ inline DescribeVpcAttributeResponse& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} /** *

The ID of the VPC.

*/ inline DescribeVpcAttributeResponse& WithVpcId(const char* value) { SetVpcId(value); return *this;} /** *

Indicates whether the instances launched in the VPC get DNS hostnames. If * this attribute is true, instances in the VPC get DNS hostnames; * otherwise, they do not.

*/ inline const AttributeBooleanValue& GetEnableDnsHostnames() const{ return m_enableDnsHostnames; } /** *

Indicates whether the instances launched in the VPC get DNS hostnames. If * this attribute is true, instances in the VPC get DNS hostnames; * otherwise, they do not.

*/ inline void SetEnableDnsHostnames(const AttributeBooleanValue& value) { m_enableDnsHostnames = value; } /** *

Indicates whether the instances launched in the VPC get DNS hostnames. If * this attribute is true, instances in the VPC get DNS hostnames; * otherwise, they do not.

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

Indicates whether the instances launched in the VPC get DNS hostnames. If * this attribute is true, instances in the VPC get DNS hostnames; * otherwise, they do not.

*/ inline DescribeVpcAttributeResponse& WithEnableDnsHostnames(const AttributeBooleanValue& value) { SetEnableDnsHostnames(value); return *this;} /** *

Indicates whether the instances launched in the VPC get DNS hostnames. If * this attribute is true, instances in the VPC get DNS hostnames; * otherwise, they do not.

*/ inline DescribeVpcAttributeResponse& WithEnableDnsHostnames(AttributeBooleanValue&& value) { SetEnableDnsHostnames(std::move(value)); return *this;} /** *

Indicates whether DNS resolution is enabled for the VPC. If this attribute is * true, the Amazon DNS server resolves DNS hostnames for your * instances to their corresponding IP addresses; otherwise, it does not.

*/ inline const AttributeBooleanValue& GetEnableDnsSupport() const{ return m_enableDnsSupport; } /** *

Indicates whether DNS resolution is enabled for the VPC. If this attribute is * true, the Amazon DNS server resolves DNS hostnames for your * instances to their corresponding IP addresses; otherwise, it does not.

*/ inline void SetEnableDnsSupport(const AttributeBooleanValue& value) { m_enableDnsSupport = value; } /** *

Indicates whether DNS resolution is enabled for the VPC. If this attribute is * true, the Amazon DNS server resolves DNS hostnames for your * instances to their corresponding IP addresses; otherwise, it does not.

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

Indicates whether DNS resolution is enabled for the VPC. If this attribute is * true, the Amazon DNS server resolves DNS hostnames for your * instances to their corresponding IP addresses; otherwise, it does not.

*/ inline DescribeVpcAttributeResponse& WithEnableDnsSupport(const AttributeBooleanValue& value) { SetEnableDnsSupport(value); return *this;} /** *

Indicates whether DNS resolution is enabled for the VPC. If this attribute is * true, the Amazon DNS server resolves DNS hostnames for your * instances to their corresponding IP addresses; otherwise, it does not.

*/ inline DescribeVpcAttributeResponse& WithEnableDnsSupport(AttributeBooleanValue&& value) { SetEnableDnsSupport(std::move(value)); return *this;} /** *

Indicates whether Network Address Usage metrics are enabled for your VPC.

*/ inline const AttributeBooleanValue& GetEnableNetworkAddressUsageMetrics() const{ return m_enableNetworkAddressUsageMetrics; } /** *

Indicates whether Network Address Usage metrics are enabled for your VPC.

*/ inline void SetEnableNetworkAddressUsageMetrics(const AttributeBooleanValue& value) { m_enableNetworkAddressUsageMetrics = value; } /** *

Indicates whether Network Address Usage metrics are enabled for your VPC.

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

Indicates whether Network Address Usage metrics are enabled for your VPC.

*/ inline DescribeVpcAttributeResponse& WithEnableNetworkAddressUsageMetrics(const AttributeBooleanValue& value) { SetEnableNetworkAddressUsageMetrics(value); return *this;} /** *

Indicates whether Network Address Usage metrics are enabled for your VPC.

*/ inline DescribeVpcAttributeResponse& WithEnableNetworkAddressUsageMetrics(AttributeBooleanValue&& value) { SetEnableNetworkAddressUsageMetrics(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 DescribeVpcAttributeResponse& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;} inline DescribeVpcAttributeResponse& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;} private: Aws::String m_vpcId; AttributeBooleanValue m_enableDnsHostnames; AttributeBooleanValue m_enableDnsSupport; AttributeBooleanValue m_enableNetworkAddressUsageMetrics; ResponseMetadata m_responseMetadata; }; } // namespace Model } // namespace EC2 } // namespace Aws