Class: AWSCDK::EC2::CfnTransitGatewayProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::EC2::CfnTransitGatewayProps
- Defined in:
- ec2/cfn_transit_gateway_props.rb
Overview
Properties for defining a CfnTransitGateway.
Instance Attribute Summary collapse
-
#amazon_side_asn ⇒ Numeric?
readonly
A private Autonomous System Number (ASN) for the Amazon side of a BGP session.
-
#association_default_route_table_id ⇒ String?
readonly
The ID of the default association route table.
-
#auto_accept_shared_attachments ⇒ String?
readonly
Enable or disable automatic acceptance of attachment requests.
-
#default_route_table_association ⇒ String?
readonly
Enable or disable automatic association with the default association route table.
-
#default_route_table_propagation ⇒ String?
readonly
Enable or disable automatic propagation of routes to the default propagation route table.
-
#description ⇒ String?
readonly
The description of the transit gateway.
-
#dns_support ⇒ String?
readonly
Enable or disable DNS support.
-
#encryption_support ⇒ String?
readonly
Enable or disable encryption support.
-
#multicast_support ⇒ String?
readonly
Indicates whether multicast is enabled on the transit gateway.
-
#propagation_default_route_table_id ⇒ String?
readonly
The ID of the default propagation route table.
-
#security_group_referencing_support ⇒ String?
readonly
Enables you to reference a security group across VPCs attached to a transit gateway (TGW).
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The tags for the transit gateway.
-
#transit_gateway_cidr_blocks ⇒ Array<String>?
readonly
The transit gateway CIDR blocks.
-
#vpn_ecmp_support ⇒ String?
readonly
Enable or disable Equal Cost Multipath Protocol support.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(amazon_side_asn: nil, association_default_route_table_id: nil, auto_accept_shared_attachments: nil, default_route_table_association: nil, default_route_table_propagation: nil, description: nil, dns_support: nil, encryption_support: nil, multicast_support: nil, propagation_default_route_table_id: nil, security_group_referencing_support: nil, tags: nil, transit_gateway_cidr_blocks: nil, vpn_ecmp_support: nil) ⇒ CfnTransitGatewayProps
constructor
A new instance of CfnTransitGatewayProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(amazon_side_asn: nil, association_default_route_table_id: nil, auto_accept_shared_attachments: nil, default_route_table_association: nil, default_route_table_propagation: nil, description: nil, dns_support: nil, encryption_support: nil, multicast_support: nil, propagation_default_route_table_id: nil, security_group_referencing_support: nil, tags: nil, transit_gateway_cidr_blocks: nil, vpn_ecmp_support: nil) ⇒ CfnTransitGatewayProps
Returns a new instance of CfnTransitGatewayProps.
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'ec2/cfn_transit_gateway_props.rb', line 23 def initialize(amazon_side_asn: nil, association_default_route_table_id: nil, auto_accept_shared_attachments: nil, default_route_table_association: nil, default_route_table_propagation: nil, description: nil, dns_support: nil, encryption_support: nil, multicast_support: nil, propagation_default_route_table_id: nil, security_group_referencing_support: nil, tags: nil, transit_gateway_cidr_blocks: nil, vpn_ecmp_support: nil) @amazon_side_asn = amazon_side_asn Jsii::Type.check_type(@amazon_side_asn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "amazonSideAsn") unless @amazon_side_asn.nil? @association_default_route_table_id = association_default_route_table_id Jsii::Type.check_type(@association_default_route_table_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "associationDefaultRouteTableId") unless @association_default_route_table_id.nil? @auto_accept_shared_attachments = Jsii::Type.check_type(@auto_accept_shared_attachments, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "autoAcceptSharedAttachments") unless @auto_accept_shared_attachments.nil? @default_route_table_association = default_route_table_association Jsii::Type.check_type(@default_route_table_association, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "defaultRouteTableAssociation") unless @default_route_table_association.nil? @default_route_table_propagation = default_route_table_propagation Jsii::Type.check_type(@default_route_table_propagation, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "defaultRouteTablePropagation") unless @default_route_table_propagation.nil? @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @dns_support = dns_support Jsii::Type.check_type(@dns_support, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dnsSupport") unless @dns_support.nil? @encryption_support = encryption_support Jsii::Type.check_type(@encryption_support, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "encryptionSupport") unless @encryption_support.nil? @multicast_support = multicast_support Jsii::Type.check_type(@multicast_support, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "multicastSupport") unless @multicast_support.nil? @propagation_default_route_table_id = propagation_default_route_table_id Jsii::Type.check_type(@propagation_default_route_table_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "propagationDefaultRouteTableId") unless @propagation_default_route_table_id.nil? @security_group_referencing_support = security_group_referencing_support Jsii::Type.check_type(@security_group_referencing_support, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "securityGroupReferencingSupport") unless @security_group_referencing_support.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? @transit_gateway_cidr_blocks = transit_gateway_cidr_blocks Jsii::Type.check_type(@transit_gateway_cidr_blocks, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "transitGatewayCidrBlocks") unless @transit_gateway_cidr_blocks.nil? @vpn_ecmp_support = vpn_ecmp_support Jsii::Type.check_type(@vpn_ecmp_support, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "vpnEcmpSupport") unless @vpn_ecmp_support.nil? end |
Instance Attribute Details
#amazon_side_asn ⇒ Numeric? (readonly)
A private Autonomous System Number (ASN) for the Amazon side of a BGP session.
The range is 64512 to 65534 for 16-bit ASNs. The default is 64512.
60 61 62 |
# File 'ec2/cfn_transit_gateway_props.rb', line 60 def amazon_side_asn @amazon_side_asn end |
#association_default_route_table_id ⇒ String? (readonly)
The ID of the default association route table.
65 66 67 |
# File 'ec2/cfn_transit_gateway_props.rb', line 65 def association_default_route_table_id @association_default_route_table_id end |
#auto_accept_shared_attachments ⇒ String? (readonly)
Enable or disable automatic acceptance of attachment requests.
Disabled by default.
72 73 74 |
# File 'ec2/cfn_transit_gateway_props.rb', line 72 def @auto_accept_shared_attachments end |
#default_route_table_association ⇒ String? (readonly)
Enable or disable automatic association with the default association route table.
Enabled by default. If DefaultRouteTableAssociation is set to enable, AWS Transit Gateway will create the default transit gateway route table.
79 80 81 |
# File 'ec2/cfn_transit_gateway_props.rb', line 79 def default_route_table_association @default_route_table_association end |
#default_route_table_propagation ⇒ String? (readonly)
Enable or disable automatic propagation of routes to the default propagation route table.
Enabled by default. If DefaultRouteTablePropagation is set to enable, AWS Transit Gateway will create the default transit gateway route table.
86 87 88 |
# File 'ec2/cfn_transit_gateway_props.rb', line 86 def default_route_table_propagation @default_route_table_propagation end |
#description ⇒ String? (readonly)
The description of the transit gateway.
91 92 93 |
# File 'ec2/cfn_transit_gateway_props.rb', line 91 def description @description end |
#dns_support ⇒ String? (readonly)
Enable or disable DNS support.
Enabled by default.
98 99 100 |
# File 'ec2/cfn_transit_gateway_props.rb', line 98 def dns_support @dns_support end |
#encryption_support ⇒ String? (readonly)
Enable or disable encryption support.
Disabled by default.
105 106 107 |
# File 'ec2/cfn_transit_gateway_props.rb', line 105 def encryption_support @encryption_support end |
#multicast_support ⇒ String? (readonly)
Indicates whether multicast is enabled on the transit gateway.
110 111 112 |
# File 'ec2/cfn_transit_gateway_props.rb', line 110 def multicast_support @multicast_support end |
#propagation_default_route_table_id ⇒ String? (readonly)
The ID of the default propagation route table.
115 116 117 |
# File 'ec2/cfn_transit_gateway_props.rb', line 115 def propagation_default_route_table_id @propagation_default_route_table_id end |
#security_group_referencing_support ⇒ String? (readonly)
Enables you to reference a security group across VPCs attached to a transit gateway (TGW).
Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.
For important information about this feature, see Create a transit gateway in the AWS Transit Gateway Guide .
124 125 126 |
# File 'ec2/cfn_transit_gateway_props.rb', line 124 def security_group_referencing_support @security_group_referencing_support end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The tags for the transit gateway.
129 130 131 |
# File 'ec2/cfn_transit_gateway_props.rb', line 129 def @tags end |
#transit_gateway_cidr_blocks ⇒ Array<String>? (readonly)
The transit gateway CIDR blocks.
134 135 136 |
# File 'ec2/cfn_transit_gateway_props.rb', line 134 def transit_gateway_cidr_blocks @transit_gateway_cidr_blocks end |
#vpn_ecmp_support ⇒ String? (readonly)
Enable or disable Equal Cost Multipath Protocol support.
Enabled by default.
141 142 143 |
# File 'ec2/cfn_transit_gateway_props.rb', line 141 def vpn_ecmp_support @vpn_ecmp_support end |
Class Method Details
.jsii_properties ⇒ Object
143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 |
# File 'ec2/cfn_transit_gateway_props.rb', line 143 def self.jsii_properties { :amazon_side_asn => "amazonSideAsn", :association_default_route_table_id => "associationDefaultRouteTableId", :auto_accept_shared_attachments => "autoAcceptSharedAttachments", :default_route_table_association => "defaultRouteTableAssociation", :default_route_table_propagation => "defaultRouteTablePropagation", :description => "description", :dns_support => "dnsSupport", :encryption_support => "encryptionSupport", :multicast_support => "multicastSupport", :propagation_default_route_table_id => "propagationDefaultRouteTableId", :security_group_referencing_support => "securityGroupReferencingSupport", :tags => "tags", :transit_gateway_cidr_blocks => "transitGatewayCidrBlocks", :vpn_ecmp_support => "vpnEcmpSupport", } end |
Instance Method Details
#to_jsii ⇒ Object
162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 |
# File 'ec2/cfn_transit_gateway_props.rb', line 162 def to_jsii result = {} result.merge!({ "amazonSideAsn" => @amazon_side_asn, "associationDefaultRouteTableId" => @association_default_route_table_id, "autoAcceptSharedAttachments" => @auto_accept_shared_attachments, "defaultRouteTableAssociation" => @default_route_table_association, "defaultRouteTablePropagation" => @default_route_table_propagation, "description" => @description, "dnsSupport" => @dns_support, "encryptionSupport" => @encryption_support, "multicastSupport" => @multicast_support, "propagationDefaultRouteTableId" => @propagation_default_route_table_id, "securityGroupReferencingSupport" => @security_group_referencing_support, "tags" => @tags, "transitGatewayCidrBlocks" => @transit_gateway_cidr_blocks, "vpnEcmpSupport" => @vpn_ecmp_support, }) result.compact end |