Class: AWSCDK::Directconnect::CfnPublicVirtualInterfaceProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Directconnect::CfnPublicVirtualInterfaceProps
- Defined in:
- directconnect/cfn_public_virtual_interface_props.rb
Overview
Properties for defining a CfnPublicVirtualInterface.
Instance Attribute Summary collapse
-
#allocate_public_virtual_interface_role_arn ⇒ String?
readonly
The Amazon Resource Name (ARN) of the role to allocate the public virtual interface.
-
#bgp_peers ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Directconnect::CfnPublicVirtualInterface::BgpPeerProperty>
readonly
The BGP peers configured on this virtual interface.
- #connection_id ⇒ String, ... readonly
-
#route_filter_prefixes ⇒ Array<String>?
readonly
The routes to be advertised to the AWS network in this region.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The tags associated with the public virtual interface.
-
#virtual_interface_name ⇒ String
readonly
The name of the virtual interface assigned by the customer network.
-
#vlan ⇒ Numeric
readonly
The ID of the VLAN.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(bgp_peers:, connection_id:, virtual_interface_name:, vlan:, allocate_public_virtual_interface_role_arn: nil, route_filter_prefixes: nil, tags: nil) ⇒ CfnPublicVirtualInterfaceProps
constructor
A new instance of CfnPublicVirtualInterfaceProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(bgp_peers:, connection_id:, virtual_interface_name:, vlan:, allocate_public_virtual_interface_role_arn: nil, route_filter_prefixes: nil, tags: nil) ⇒ CfnPublicVirtualInterfaceProps
Returns a new instance of CfnPublicVirtualInterfaceProps.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 16 def initialize(bgp_peers:, connection_id:, virtual_interface_name:, vlan:, allocate_public_virtual_interface_role_arn: nil, route_filter_prefixes: nil, tags: nil) @bgp_peers = bgp_peers Jsii::Type.check_type(@bgp_peers, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZGlyZWN0Y29ubmVjdC5DZm5QdWJsaWNWaXJ0dWFsSW50ZXJmYWNlLkJncFBlZXJQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "bgpPeers") @connection_id = connection_id Jsii::Type.check_type(@connection_id, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19kaXJlY3Rjb25uZWN0LklDb25uZWN0aW9uUmVmIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19kaXJlY3Rjb25uZWN0LklMYWdSZWYifV19fQ==")), "connectionId") @virtual_interface_name = virtual_interface_name Jsii::Type.check_type(@virtual_interface_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "virtualInterfaceName") @vlan = vlan Jsii::Type.check_type(@vlan, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "vlan") @allocate_public_virtual_interface_role_arn = allocate_public_virtual_interface_role_arn Jsii::Type.check_type(@allocate_public_virtual_interface_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "allocatePublicVirtualInterfaceRoleArn") unless @allocate_public_virtual_interface_role_arn.nil? @route_filter_prefixes = route_filter_prefixes Jsii::Type.check_type(@route_filter_prefixes, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "routeFilterPrefixes") unless @route_filter_prefixes.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? end |
Instance Attribute Details
#allocate_public_virtual_interface_role_arn ⇒ String? (readonly)
The Amazon Resource Name (ARN) of the role to allocate the public virtual interface.
Needs directconnect:AllocatePublicVirtualInterface permissions and tag permissions if applicable.
59 60 61 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 59 def allocate_public_virtual_interface_role_arn @allocate_public_virtual_interface_role_arn end |
#bgp_peers ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Directconnect::CfnPublicVirtualInterface::BgpPeerProperty> (readonly)
The BGP peers configured on this virtual interface.
37 38 39 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 37 def bgp_peers @bgp_peers end |
#connection_id ⇒ String, ... (readonly)
40 41 42 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 40 def connection_id @connection_id end |
#route_filter_prefixes ⇒ Array<String>? (readonly)
The routes to be advertised to the AWS network in this region.
64 65 66 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 64 def route_filter_prefixes @route_filter_prefixes end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The tags associated with the public virtual interface.
69 70 71 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 69 def @tags end |
#virtual_interface_name ⇒ String (readonly)
The name of the virtual interface assigned by the customer network.
The name has a maximum of 100 characters. The following are valid characters: a-z, 0-9 and a hyphen (-).
47 48 49 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 47 def virtual_interface_name @virtual_interface_name end |
#vlan ⇒ Numeric (readonly)
The ID of the VLAN.
52 53 54 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 52 def vlan @vlan end |
Class Method Details
.jsii_properties ⇒ Object
71 72 73 74 75 76 77 78 79 80 81 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 71 def self.jsii_properties { :bgp_peers => "bgpPeers", :connection_id => "connectionId", :virtual_interface_name => "virtualInterfaceName", :vlan => "vlan", :allocate_public_virtual_interface_role_arn => "allocatePublicVirtualInterfaceRoleArn", :route_filter_prefixes => "routeFilterPrefixes", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
83 84 85 86 87 88 89 90 91 92 93 94 95 |
# File 'directconnect/cfn_public_virtual_interface_props.rb', line 83 def to_jsii result = {} result.merge!({ "bgpPeers" => @bgp_peers, "connectionId" => @connection_id, "virtualInterfaceName" => @virtual_interface_name, "vlan" => @vlan, "allocatePublicVirtualInterfaceRoleArn" => @allocate_public_virtual_interface_role_arn, "routeFilterPrefixes" => @route_filter_prefixes, "tags" => @tags, }) result.compact end |