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

Information about the subnets.

*/ inline const Aws::Vector& GetAvailabilityZones() const{ return m_availabilityZones; } /** *

Information about the subnets.

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

Information about the subnets.

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

Information about the subnets.

*/ inline SetSubnetsResult& WithAvailabilityZones(const Aws::Vector& value) { SetAvailabilityZones(value); return *this;} /** *

Information about the subnets.

*/ inline SetSubnetsResult& WithAvailabilityZones(Aws::Vector&& value) { SetAvailabilityZones(std::move(value)); return *this;} /** *

Information about the subnets.

*/ inline SetSubnetsResult& AddAvailabilityZones(const AvailabilityZone& value) { m_availabilityZones.push_back(value); return *this; } /** *

Information about the subnets.

*/ inline SetSubnetsResult& AddAvailabilityZones(AvailabilityZone&& value) { m_availabilityZones.push_back(std::move(value)); return *this; } /** *

[Network Load Balancers] The IP address type.

*/ inline const IpAddressType& GetIpAddressType() const{ return m_ipAddressType; } /** *

[Network Load Balancers] The IP address type.

*/ inline void SetIpAddressType(const IpAddressType& value) { m_ipAddressType = value; } /** *

[Network Load Balancers] The IP address type.

*/ inline void SetIpAddressType(IpAddressType&& value) { m_ipAddressType = std::move(value); } /** *

[Network Load Balancers] The IP address type.

*/ inline SetSubnetsResult& WithIpAddressType(const IpAddressType& value) { SetIpAddressType(value); return *this;} /** *

[Network Load Balancers] The IP address type.

*/ inline SetSubnetsResult& WithIpAddressType(IpAddressType&& value) { SetIpAddressType(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 SetSubnetsResult& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;} inline SetSubnetsResult& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;} private: Aws::Vector m_availabilityZones; IpAddressType m_ipAddressType; ResponseMetadata m_responseMetadata; }; } // namespace Model } // namespace ElasticLoadBalancingv2 } // namespace Aws