/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes a subnet.See Also:
AWS API
* Reference
The Availability Zone of the subnet.
*/ inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; } /** *The Availability Zone of the subnet.
*/ inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; } /** *The Availability Zone of the subnet.
*/ inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; } /** *The Availability Zone of the subnet.
*/ inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); } /** *The Availability Zone of the subnet.
*/ inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); } /** *The Availability Zone of the subnet.
*/ inline Subnet& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;} /** *The Availability Zone of the subnet.
*/ inline Subnet& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;} /** *The Availability Zone of the subnet.
*/ inline Subnet& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;} /** *The AZ ID of the subnet.
*/ inline const Aws::String& GetAvailabilityZoneId() const{ return m_availabilityZoneId; } /** *The AZ ID of the subnet.
*/ inline bool AvailabilityZoneIdHasBeenSet() const { return m_availabilityZoneIdHasBeenSet; } /** *The AZ ID of the subnet.
*/ inline void SetAvailabilityZoneId(const Aws::String& value) { m_availabilityZoneIdHasBeenSet = true; m_availabilityZoneId = value; } /** *The AZ ID of the subnet.
*/ inline void SetAvailabilityZoneId(Aws::String&& value) { m_availabilityZoneIdHasBeenSet = true; m_availabilityZoneId = std::move(value); } /** *The AZ ID of the subnet.
*/ inline void SetAvailabilityZoneId(const char* value) { m_availabilityZoneIdHasBeenSet = true; m_availabilityZoneId.assign(value); } /** *The AZ ID of the subnet.
*/ inline Subnet& WithAvailabilityZoneId(const Aws::String& value) { SetAvailabilityZoneId(value); return *this;} /** *The AZ ID of the subnet.
*/ inline Subnet& WithAvailabilityZoneId(Aws::String&& value) { SetAvailabilityZoneId(std::move(value)); return *this;} /** *The AZ ID of the subnet.
*/ inline Subnet& WithAvailabilityZoneId(const char* value) { SetAvailabilityZoneId(value); return *this;} /** *The number of unused private IPv4 addresses in the subnet. The IPv4 addresses * for any stopped instances are considered unavailable.
*/ inline int GetAvailableIpAddressCount() const{ return m_availableIpAddressCount; } /** *The number of unused private IPv4 addresses in the subnet. The IPv4 addresses * for any stopped instances are considered unavailable.
*/ inline bool AvailableIpAddressCountHasBeenSet() const { return m_availableIpAddressCountHasBeenSet; } /** *The number of unused private IPv4 addresses in the subnet. The IPv4 addresses * for any stopped instances are considered unavailable.
*/ inline void SetAvailableIpAddressCount(int value) { m_availableIpAddressCountHasBeenSet = true; m_availableIpAddressCount = value; } /** *The number of unused private IPv4 addresses in the subnet. The IPv4 addresses * for any stopped instances are considered unavailable.
*/ inline Subnet& WithAvailableIpAddressCount(int value) { SetAvailableIpAddressCount(value); return *this;} /** *The IPv4 CIDR block assigned to the subnet.
*/ inline const Aws::String& GetCidrBlock() const{ return m_cidrBlock; } /** *The IPv4 CIDR block assigned to the subnet.
*/ inline bool CidrBlockHasBeenSet() const { return m_cidrBlockHasBeenSet; } /** *The IPv4 CIDR block assigned to the subnet.
*/ inline void SetCidrBlock(const Aws::String& value) { m_cidrBlockHasBeenSet = true; m_cidrBlock = value; } /** *The IPv4 CIDR block assigned to the subnet.
*/ inline void SetCidrBlock(Aws::String&& value) { m_cidrBlockHasBeenSet = true; m_cidrBlock = std::move(value); } /** *The IPv4 CIDR block assigned to the subnet.
*/ inline void SetCidrBlock(const char* value) { m_cidrBlockHasBeenSet = true; m_cidrBlock.assign(value); } /** *The IPv4 CIDR block assigned to the subnet.
*/ inline Subnet& WithCidrBlock(const Aws::String& value) { SetCidrBlock(value); return *this;} /** *The IPv4 CIDR block assigned to the subnet.
*/ inline Subnet& WithCidrBlock(Aws::String&& value) { SetCidrBlock(std::move(value)); return *this;} /** *The IPv4 CIDR block assigned to the subnet.
*/ inline Subnet& WithCidrBlock(const char* value) { SetCidrBlock(value); return *this;} /** *Indicates whether this is the default subnet for the Availability Zone.
*/ inline bool GetDefaultForAz() const{ return m_defaultForAz; } /** *Indicates whether this is the default subnet for the Availability Zone.
*/ inline bool DefaultForAzHasBeenSet() const { return m_defaultForAzHasBeenSet; } /** *Indicates whether this is the default subnet for the Availability Zone.
*/ inline void SetDefaultForAz(bool value) { m_defaultForAzHasBeenSet = true; m_defaultForAz = value; } /** *Indicates whether this is the default subnet for the Availability Zone.
*/ inline Subnet& WithDefaultForAz(bool value) { SetDefaultForAz(value); return *this;} /** * Indicates the device position for local network interfaces in this subnet.
* For example, 1
indicates local network interfaces in this subnet
* are the secondary network interface (eth1).
Indicates the device position for local network interfaces in this subnet.
* For example, 1
indicates local network interfaces in this subnet
* are the secondary network interface (eth1).
Indicates the device position for local network interfaces in this subnet.
* For example, 1
indicates local network interfaces in this subnet
* are the secondary network interface (eth1).
Indicates the device position for local network interfaces in this subnet.
* For example, 1
indicates local network interfaces in this subnet
* are the secondary network interface (eth1).
Indicates whether instances launched in this subnet receive a public IPv4 * address.
*/ inline bool GetMapPublicIpOnLaunch() const{ return m_mapPublicIpOnLaunch; } /** *Indicates whether instances launched in this subnet receive a public IPv4 * address.
*/ inline bool MapPublicIpOnLaunchHasBeenSet() const { return m_mapPublicIpOnLaunchHasBeenSet; } /** *Indicates whether instances launched in this subnet receive a public IPv4 * address.
*/ inline void SetMapPublicIpOnLaunch(bool value) { m_mapPublicIpOnLaunchHasBeenSet = true; m_mapPublicIpOnLaunch = value; } /** *Indicates whether instances launched in this subnet receive a public IPv4 * address.
*/ inline Subnet& WithMapPublicIpOnLaunch(bool value) { SetMapPublicIpOnLaunch(value); return *this;} /** *Indicates whether a network interface created in this subnet (including a * network interface created by RunInstances) receives a customer-owned IPv4 * address.
*/ inline bool GetMapCustomerOwnedIpOnLaunch() const{ return m_mapCustomerOwnedIpOnLaunch; } /** *Indicates whether a network interface created in this subnet (including a * network interface created by RunInstances) receives a customer-owned IPv4 * address.
*/ inline bool MapCustomerOwnedIpOnLaunchHasBeenSet() const { return m_mapCustomerOwnedIpOnLaunchHasBeenSet; } /** *Indicates whether a network interface created in this subnet (including a * network interface created by RunInstances) receives a customer-owned IPv4 * address.
*/ inline void SetMapCustomerOwnedIpOnLaunch(bool value) { m_mapCustomerOwnedIpOnLaunchHasBeenSet = true; m_mapCustomerOwnedIpOnLaunch = value; } /** *Indicates whether a network interface created in this subnet (including a * network interface created by RunInstances) receives a customer-owned IPv4 * address.
*/ inline Subnet& WithMapCustomerOwnedIpOnLaunch(bool value) { SetMapCustomerOwnedIpOnLaunch(value); return *this;} /** *The customer-owned IPv4 address pool associated with the subnet.
*/ inline const Aws::String& GetCustomerOwnedIpv4Pool() const{ return m_customerOwnedIpv4Pool; } /** *The customer-owned IPv4 address pool associated with the subnet.
*/ inline bool CustomerOwnedIpv4PoolHasBeenSet() const { return m_customerOwnedIpv4PoolHasBeenSet; } /** *The customer-owned IPv4 address pool associated with the subnet.
*/ inline void SetCustomerOwnedIpv4Pool(const Aws::String& value) { m_customerOwnedIpv4PoolHasBeenSet = true; m_customerOwnedIpv4Pool = value; } /** *The customer-owned IPv4 address pool associated with the subnet.
*/ inline void SetCustomerOwnedIpv4Pool(Aws::String&& value) { m_customerOwnedIpv4PoolHasBeenSet = true; m_customerOwnedIpv4Pool = std::move(value); } /** *The customer-owned IPv4 address pool associated with the subnet.
*/ inline void SetCustomerOwnedIpv4Pool(const char* value) { m_customerOwnedIpv4PoolHasBeenSet = true; m_customerOwnedIpv4Pool.assign(value); } /** *The customer-owned IPv4 address pool associated with the subnet.
*/ inline Subnet& WithCustomerOwnedIpv4Pool(const Aws::String& value) { SetCustomerOwnedIpv4Pool(value); return *this;} /** *The customer-owned IPv4 address pool associated with the subnet.
*/ inline Subnet& WithCustomerOwnedIpv4Pool(Aws::String&& value) { SetCustomerOwnedIpv4Pool(std::move(value)); return *this;} /** *The customer-owned IPv4 address pool associated with the subnet.
*/ inline Subnet& WithCustomerOwnedIpv4Pool(const char* value) { SetCustomerOwnedIpv4Pool(value); return *this;} /** *The current state of the subnet.
*/ inline const SubnetState& GetState() const{ return m_state; } /** *The current state of the subnet.
*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *The current state of the subnet.
*/ inline void SetState(const SubnetState& value) { m_stateHasBeenSet = true; m_state = value; } /** *The current state of the subnet.
*/ inline void SetState(SubnetState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *The current state of the subnet.
*/ inline Subnet& WithState(const SubnetState& value) { SetState(value); return *this;} /** *The current state of the subnet.
*/ inline Subnet& WithState(SubnetState&& value) { SetState(std::move(value)); return *this;} /** *The ID of the subnet.
*/ inline const Aws::String& GetSubnetId() const{ return m_subnetId; } /** *The ID of the subnet.
*/ inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; } /** *The ID of the subnet.
*/ inline void SetSubnetId(const Aws::String& value) { m_subnetIdHasBeenSet = true; m_subnetId = value; } /** *The ID of the subnet.
*/ inline void SetSubnetId(Aws::String&& value) { m_subnetIdHasBeenSet = true; m_subnetId = std::move(value); } /** *The ID of the subnet.
*/ inline void SetSubnetId(const char* value) { m_subnetIdHasBeenSet = true; m_subnetId.assign(value); } /** *The ID of the subnet.
*/ inline Subnet& WithSubnetId(const Aws::String& value) { SetSubnetId(value); return *this;} /** *The ID of the subnet.
*/ inline Subnet& WithSubnetId(Aws::String&& value) { SetSubnetId(std::move(value)); return *this;} /** *The ID of the subnet.
*/ inline Subnet& WithSubnetId(const char* value) { SetSubnetId(value); return *this;} /** *The ID of the VPC the subnet is in.
*/ inline const Aws::String& GetVpcId() const{ return m_vpcId; } /** *The ID of the VPC the subnet is in.
*/ inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; } /** *The ID of the VPC the subnet is in.
*/ inline void SetVpcId(const Aws::String& value) { m_vpcIdHasBeenSet = true; m_vpcId = value; } /** *The ID of the VPC the subnet is in.
*/ inline void SetVpcId(Aws::String&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::move(value); } /** *The ID of the VPC the subnet is in.
*/ inline void SetVpcId(const char* value) { m_vpcIdHasBeenSet = true; m_vpcId.assign(value); } /** *The ID of the VPC the subnet is in.
*/ inline Subnet& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} /** *The ID of the VPC the subnet is in.
*/ inline Subnet& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} /** *The ID of the VPC the subnet is in.
*/ inline Subnet& WithVpcId(const char* value) { SetVpcId(value); return *this;} /** *The ID of the Amazon Web Services account that owns the subnet.
*/ inline const Aws::String& GetOwnerId() const{ return m_ownerId; } /** *The ID of the Amazon Web Services account that owns the subnet.
*/ inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; } /** *The ID of the Amazon Web Services account that owns the subnet.
*/ inline void SetOwnerId(const Aws::String& value) { m_ownerIdHasBeenSet = true; m_ownerId = value; } /** *The ID of the Amazon Web Services account that owns the subnet.
*/ inline void SetOwnerId(Aws::String&& value) { m_ownerIdHasBeenSet = true; m_ownerId = std::move(value); } /** *The ID of the Amazon Web Services account that owns the subnet.
*/ inline void SetOwnerId(const char* value) { m_ownerIdHasBeenSet = true; m_ownerId.assign(value); } /** *The ID of the Amazon Web Services account that owns the subnet.
*/ inline Subnet& WithOwnerId(const Aws::String& value) { SetOwnerId(value); return *this;} /** *The ID of the Amazon Web Services account that owns the subnet.
*/ inline Subnet& WithOwnerId(Aws::String&& value) { SetOwnerId(std::move(value)); return *this;} /** *The ID of the Amazon Web Services account that owns the subnet.
*/ inline Subnet& WithOwnerId(const char* value) { SetOwnerId(value); return *this;} /** *Indicates whether a network interface created in this subnet (including a * network interface created by RunInstances) receives an IPv6 address.
*/ inline bool GetAssignIpv6AddressOnCreation() const{ return m_assignIpv6AddressOnCreation; } /** *Indicates whether a network interface created in this subnet (including a * network interface created by RunInstances) receives an IPv6 address.
*/ inline bool AssignIpv6AddressOnCreationHasBeenSet() const { return m_assignIpv6AddressOnCreationHasBeenSet; } /** *Indicates whether a network interface created in this subnet (including a * network interface created by RunInstances) receives an IPv6 address.
*/ inline void SetAssignIpv6AddressOnCreation(bool value) { m_assignIpv6AddressOnCreationHasBeenSet = true; m_assignIpv6AddressOnCreation = value; } /** *Indicates whether a network interface created in this subnet (including a * network interface created by RunInstances) receives an IPv6 address.
*/ inline Subnet& WithAssignIpv6AddressOnCreation(bool value) { SetAssignIpv6AddressOnCreation(value); return *this;} /** *Information about the IPv6 CIDR blocks associated with the subnet.
*/ inline const Aws::VectorInformation about the IPv6 CIDR blocks associated with the subnet.
*/ inline bool Ipv6CidrBlockAssociationSetHasBeenSet() const { return m_ipv6CidrBlockAssociationSetHasBeenSet; } /** *Information about the IPv6 CIDR blocks associated with the subnet.
*/ inline void SetIpv6CidrBlockAssociationSet(const Aws::VectorInformation about the IPv6 CIDR blocks associated with the subnet.
*/ inline void SetIpv6CidrBlockAssociationSet(Aws::VectorInformation about the IPv6 CIDR blocks associated with the subnet.
*/ inline Subnet& WithIpv6CidrBlockAssociationSet(const Aws::VectorInformation about the IPv6 CIDR blocks associated with the subnet.
*/ inline Subnet& WithIpv6CidrBlockAssociationSet(Aws::VectorInformation about the IPv6 CIDR blocks associated with the subnet.
*/ inline Subnet& AddIpv6CidrBlockAssociationSet(const SubnetIpv6CidrBlockAssociation& value) { m_ipv6CidrBlockAssociationSetHasBeenSet = true; m_ipv6CidrBlockAssociationSet.push_back(value); return *this; } /** *Information about the IPv6 CIDR blocks associated with the subnet.
*/ inline Subnet& AddIpv6CidrBlockAssociationSet(SubnetIpv6CidrBlockAssociation&& value) { m_ipv6CidrBlockAssociationSetHasBeenSet = true; m_ipv6CidrBlockAssociationSet.push_back(std::move(value)); return *this; } /** *Any tags assigned to the subnet.
*/ inline const Aws::VectorAny tags assigned to the subnet.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *Any tags assigned to the subnet.
*/ inline void SetTags(const Aws::VectorAny tags assigned to the subnet.
*/ inline void SetTags(Aws::VectorAny tags assigned to the subnet.
*/ inline Subnet& WithTags(const Aws::VectorAny tags assigned to the subnet.
*/ inline Subnet& WithTags(Aws::VectorAny tags assigned to the subnet.
*/ inline Subnet& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *Any tags assigned to the subnet.
*/ inline Subnet& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *The Amazon Resource Name (ARN) of the subnet.
*/ inline const Aws::String& GetSubnetArn() const{ return m_subnetArn; } /** *The Amazon Resource Name (ARN) of the subnet.
*/ inline bool SubnetArnHasBeenSet() const { return m_subnetArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the subnet.
*/ inline void SetSubnetArn(const Aws::String& value) { m_subnetArnHasBeenSet = true; m_subnetArn = value; } /** *The Amazon Resource Name (ARN) of the subnet.
*/ inline void SetSubnetArn(Aws::String&& value) { m_subnetArnHasBeenSet = true; m_subnetArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the subnet.
*/ inline void SetSubnetArn(const char* value) { m_subnetArnHasBeenSet = true; m_subnetArn.assign(value); } /** *The Amazon Resource Name (ARN) of the subnet.
*/ inline Subnet& WithSubnetArn(const Aws::String& value) { SetSubnetArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the subnet.
*/ inline Subnet& WithSubnetArn(Aws::String&& value) { SetSubnetArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the subnet.
*/ inline Subnet& WithSubnetArn(const char* value) { SetSubnetArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline const Aws::String& GetOutpostArn() const{ return m_outpostArn; } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline void SetOutpostArn(const Aws::String& value) { m_outpostArnHasBeenSet = true; m_outpostArn = value; } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline void SetOutpostArn(Aws::String&& value) { m_outpostArnHasBeenSet = true; m_outpostArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline void SetOutpostArn(const char* value) { m_outpostArnHasBeenSet = true; m_outpostArn.assign(value); } /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline Subnet& WithOutpostArn(const Aws::String& value) { SetOutpostArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline Subnet& WithOutpostArn(Aws::String&& value) { SetOutpostArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the Outpost.
*/ inline Subnet& WithOutpostArn(const char* value) { SetOutpostArn(value); return *this;} /** *Indicates whether DNS queries made to the Amazon-provided DNS Resolver in * this subnet should return synthetic IPv6 addresses for IPv4-only * destinations.
*/ inline bool GetEnableDns64() const{ return m_enableDns64; } /** *Indicates whether DNS queries made to the Amazon-provided DNS Resolver in * this subnet should return synthetic IPv6 addresses for IPv4-only * destinations.
*/ inline bool EnableDns64HasBeenSet() const { return m_enableDns64HasBeenSet; } /** *Indicates whether DNS queries made to the Amazon-provided DNS Resolver in * this subnet should return synthetic IPv6 addresses for IPv4-only * destinations.
*/ inline void SetEnableDns64(bool value) { m_enableDns64HasBeenSet = true; m_enableDns64 = value; } /** *Indicates whether DNS queries made to the Amazon-provided DNS Resolver in * this subnet should return synthetic IPv6 addresses for IPv4-only * destinations.
*/ inline Subnet& WithEnableDns64(bool value) { SetEnableDns64(value); return *this;} /** *Indicates whether this is an IPv6 only subnet.
*/ inline bool GetIpv6Native() const{ return m_ipv6Native; } /** *Indicates whether this is an IPv6 only subnet.
*/ inline bool Ipv6NativeHasBeenSet() const { return m_ipv6NativeHasBeenSet; } /** *Indicates whether this is an IPv6 only subnet.
*/ inline void SetIpv6Native(bool value) { m_ipv6NativeHasBeenSet = true; m_ipv6Native = value; } /** *Indicates whether this is an IPv6 only subnet.
*/ inline Subnet& WithIpv6Native(bool value) { SetIpv6Native(value); return *this;} /** *The type of hostnames to assign to instances in the subnet at launch. An * instance hostname is based on the IPv4 address or ID of the instance.
*/ inline const PrivateDnsNameOptionsOnLaunch& GetPrivateDnsNameOptionsOnLaunch() const{ return m_privateDnsNameOptionsOnLaunch; } /** *The type of hostnames to assign to instances in the subnet at launch. An * instance hostname is based on the IPv4 address or ID of the instance.
*/ inline bool PrivateDnsNameOptionsOnLaunchHasBeenSet() const { return m_privateDnsNameOptionsOnLaunchHasBeenSet; } /** *The type of hostnames to assign to instances in the subnet at launch. An * instance hostname is based on the IPv4 address or ID of the instance.
*/ inline void SetPrivateDnsNameOptionsOnLaunch(const PrivateDnsNameOptionsOnLaunch& value) { m_privateDnsNameOptionsOnLaunchHasBeenSet = true; m_privateDnsNameOptionsOnLaunch = value; } /** *The type of hostnames to assign to instances in the subnet at launch. An * instance hostname is based on the IPv4 address or ID of the instance.
*/ inline void SetPrivateDnsNameOptionsOnLaunch(PrivateDnsNameOptionsOnLaunch&& value) { m_privateDnsNameOptionsOnLaunchHasBeenSet = true; m_privateDnsNameOptionsOnLaunch = std::move(value); } /** *The type of hostnames to assign to instances in the subnet at launch. An * instance hostname is based on the IPv4 address or ID of the instance.
*/ inline Subnet& WithPrivateDnsNameOptionsOnLaunch(const PrivateDnsNameOptionsOnLaunch& value) { SetPrivateDnsNameOptionsOnLaunch(value); return *this;} /** *The type of hostnames to assign to instances in the subnet at launch. An * instance hostname is based on the IPv4 address or ID of the instance.
*/ inline Subnet& WithPrivateDnsNameOptionsOnLaunch(PrivateDnsNameOptionsOnLaunch&& value) { SetPrivateDnsNameOptionsOnLaunch(std::move(value)); return *this;} private: Aws::String m_availabilityZone; bool m_availabilityZoneHasBeenSet = false; Aws::String m_availabilityZoneId; bool m_availabilityZoneIdHasBeenSet = false; int m_availableIpAddressCount; bool m_availableIpAddressCountHasBeenSet = false; Aws::String m_cidrBlock; bool m_cidrBlockHasBeenSet = false; bool m_defaultForAz; bool m_defaultForAzHasBeenSet = false; int m_enableLniAtDeviceIndex; bool m_enableLniAtDeviceIndexHasBeenSet = false; bool m_mapPublicIpOnLaunch; bool m_mapPublicIpOnLaunchHasBeenSet = false; bool m_mapCustomerOwnedIpOnLaunch; bool m_mapCustomerOwnedIpOnLaunchHasBeenSet = false; Aws::String m_customerOwnedIpv4Pool; bool m_customerOwnedIpv4PoolHasBeenSet = false; SubnetState m_state; bool m_stateHasBeenSet = false; Aws::String m_subnetId; bool m_subnetIdHasBeenSet = false; Aws::String m_vpcId; bool m_vpcIdHasBeenSet = false; Aws::String m_ownerId; bool m_ownerIdHasBeenSet = false; bool m_assignIpv6AddressOnCreation; bool m_assignIpv6AddressOnCreationHasBeenSet = false; Aws::Vector