Class: AWSCDK::EC2::SubnetProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::EC2::SubnetProps
- Defined in:
- ec2/subnet_props.rb
Overview
Specify configuration parameters for a VPC subnet.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#assign_ipv6_address_on_creation ⇒ Boolean?
readonly
Indicates whether a network interface created in this subnet receives an IPv6 address.
-
#availability_zone ⇒ String
readonly
The availability zone for the subnet.
-
#cidr_block ⇒ String
readonly
The CIDR notation for this subnet.
-
#ipv6_cidr_block ⇒ String?
readonly
The IPv6 CIDR block.
-
#map_public_ip_on_launch ⇒ Boolean?
readonly
Controls if a public IP is associated to an instance at launch.
-
#vpc_id ⇒ String
readonly
The VPC which this subnet is part of.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(availability_zone:, cidr_block:, vpc_id:, assign_ipv6_address_on_creation: nil, ipv6_cidr_block: nil, map_public_ip_on_launch: nil) ⇒ SubnetProps
constructor
A new instance of SubnetProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(availability_zone:, cidr_block:, vpc_id:, assign_ipv6_address_on_creation: nil, ipv6_cidr_block: nil, map_public_ip_on_launch: nil) ⇒ SubnetProps
Returns a new instance of SubnetProps.
13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'ec2/subnet_props.rb', line 13 def initialize(availability_zone:, cidr_block:, vpc_id:, assign_ipv6_address_on_creation: nil, ipv6_cidr_block: nil, map_public_ip_on_launch: nil) @availability_zone = availability_zone Jsii::Type.check_type(@availability_zone, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "availabilityZone") @cidr_block = cidr_block Jsii::Type.check_type(@cidr_block, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "cidrBlock") @vpc_id = vpc_id Jsii::Type.check_type(@vpc_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "vpcId") @assign_ipv6_address_on_creation = assign_ipv6_address_on_creation Jsii::Type.check_type(@assign_ipv6_address_on_creation, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "assignIpv6AddressOnCreation") unless @assign_ipv6_address_on_creation.nil? @ipv6_cidr_block = ipv6_cidr_block Jsii::Type.check_type(@ipv6_cidr_block, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ipv6CidrBlock") unless @ipv6_cidr_block.nil? @map_public_ip_on_launch = map_public_ip_on_launch Jsii::Type.check_type(@map_public_ip_on_launch, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "mapPublicIpOnLaunch") unless @map_public_ip_on_launch.nil? end |
Instance Attribute Details
#assign_ipv6_address_on_creation ⇒ Boolean? (readonly)
Default: false
Indicates whether a network interface created in this subnet receives an IPv6 address.
If you specify AssignIpv6AddressOnCreation, you must also specify Ipv6CidrBlock.
46 47 48 |
# File 'ec2/subnet_props.rb', line 46 def assign_ipv6_address_on_creation @assign_ipv6_address_on_creation end |
#availability_zone ⇒ String (readonly)
The availability zone for the subnet.
31 32 33 |
# File 'ec2/subnet_props.rb', line 31 def availability_zone @availability_zone end |
#cidr_block ⇒ String (readonly)
The CIDR notation for this subnet.
35 36 37 |
# File 'ec2/subnet_props.rb', line 35 def cidr_block @cidr_block end |
#ipv6_cidr_block ⇒ String? (readonly)
Default: - no IPv6 CIDR block.
The IPv6 CIDR block.
If you specify AssignIpv6AddressOnCreation, you must also specify Ipv6CidrBlock.
53 54 55 |
# File 'ec2/subnet_props.rb', line 53 def ipv6_cidr_block @ipv6_cidr_block end |
#map_public_ip_on_launch ⇒ Boolean? (readonly)
Default: true in Subnet.Public, false in Subnet.Private or Subnet.Isolated.
Controls if a public IP is associated to an instance at launch.
58 59 60 |
# File 'ec2/subnet_props.rb', line 58 def map_public_ip_on_launch @map_public_ip_on_launch end |
#vpc_id ⇒ String (readonly)
The VPC which this subnet is part of.
39 40 41 |
# File 'ec2/subnet_props.rb', line 39 def vpc_id @vpc_id end |
Class Method Details
.jsii_properties ⇒ Object
60 61 62 63 64 65 66 67 68 69 |
# File 'ec2/subnet_props.rb', line 60 def self.jsii_properties { :availability_zone => "availabilityZone", :cidr_block => "cidrBlock", :vpc_id => "vpcId", :assign_ipv6_address_on_creation => "assignIpv6AddressOnCreation", :ipv6_cidr_block => "ipv6CidrBlock", :map_public_ip_on_launch => "mapPublicIpOnLaunch", } end |
Instance Method Details
#to_jsii ⇒ Object
71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'ec2/subnet_props.rb', line 71 def to_jsii result = {} result.merge!({ "availabilityZone" => @availability_zone, "cidrBlock" => @cidr_block, "vpcId" => @vpc_id, "assignIpv6AddressOnCreation" => @assign_ipv6_address_on_creation, "ipv6CidrBlock" => @ipv6_cidr_block, "mapPublicIpOnLaunch" => @map_public_ip_on_launch, }) result.compact end |