Class: AWSCDK::Directconnect::CfnTransitVirtualInterfaceProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
directconnect/cfn_transit_virtual_interface_props.rb

Overview

Properties for defining a CfnTransitVirtualInterface.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bgp_peers:, connection_id:, direct_connect_gateway_id:, virtual_interface_name:, vlan:, allocate_transit_virtual_interface_role_arn: nil, enable_site_link: nil, mtu: nil, tags: nil) ⇒ CfnTransitVirtualInterfaceProps

Returns a new instance of CfnTransitVirtualInterfaceProps.

Parameters:



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 18

def initialize(bgp_peers:, connection_id:, direct_connect_gateway_id:, virtual_interface_name:, vlan:, allocate_transit_virtual_interface_role_arn: nil, enable_site_link: nil, mtu: nil, tags: nil)
  @bgp_peers = bgp_peers
  Jsii::Type.check_type(@bgp_peers, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZGlyZWN0Y29ubmVjdC5DZm5UcmFuc2l0VmlydHVhbEludGVyZmFjZS5CZ3BQZWVyUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "bgpPeers")
  @connection_id = connection_id
  Jsii::Type.check_type(@connection_id, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19kaXJlY3Rjb25uZWN0LklDb25uZWN0aW9uUmVmIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19kaXJlY3Rjb25uZWN0LklMYWdSZWYifV19fQ==")), "connectionId")
  @direct_connect_gateway_id = direct_connect_gateway_id
  Jsii::Type.check_type(@direct_connect_gateway_id, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19kaXJlY3Rjb25uZWN0LklEaXJlY3RDb25uZWN0R2F0ZXdheVJlZiJ9XX19")), "directConnectGatewayId")
  @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_transit_virtual_interface_role_arn = allocate_transit_virtual_interface_role_arn
  Jsii::Type.check_type(@allocate_transit_virtual_interface_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "allocateTransitVirtualInterfaceRoleArn") unless @allocate_transit_virtual_interface_role_arn.nil?
  @enable_site_link = enable_site_link
  Jsii::Type.check_type(@enable_site_link, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enableSiteLink") unless @enable_site_link.nil?
  @mtu = mtu
  Jsii::Type.check_type(@mtu, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "mtu") unless @mtu.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#allocate_transit_virtual_interface_role_arnString? (readonly)

The Amazon Resource Name (ARN) of the role to allocate the TransitVifAllocation.

Needs directconnect:AllocateTransitVirtualInterface permissions and tag permissions if applicable.



68
69
70
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 68

def allocate_transit_virtual_interface_role_arn
  @allocate_transit_virtual_interface_role_arn
end

#connection_idString, ... (readonly)



46
47
48
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 46

def connection_id
  @connection_id
end

#direct_connect_gateway_idString, AWSCDK::Interfaces::AWSDirectconnect::IDirectConnectGatewayRef (readonly)



49
50
51
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 49

def direct_connect_gateway_id
  @direct_connect_gateway_id
end

Indicates whether to enable or disable SiteLink.



73
74
75
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 73

def enable_site_link
  @enable_site_link
end

#mtuNumeric? (readonly)

The maximum transmission unit (MTU), in bytes.

The supported values are 1500 and 9001. The default value is 1500.



80
81
82
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 80

def mtu
  @mtu
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

The tags associated with the private virtual interface.



85
86
87
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 85

def tags
  @tags
end

#virtual_interface_nameString (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 (-).



56
57
58
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 56

def virtual_interface_name
  @virtual_interface_name
end

#vlanNumeric (readonly)

The ID of the VLAN.



61
62
63
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 61

def vlan
  @vlan
end

Class Method Details

.jsii_propertiesObject



87
88
89
90
91
92
93
94
95
96
97
98
99
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 87

def self.jsii_properties
  {
    :bgp_peers => "bgpPeers",
    :connection_id => "connectionId",
    :direct_connect_gateway_id => "directConnectGatewayId",
    :virtual_interface_name => "virtualInterfaceName",
    :vlan => "vlan",
    :allocate_transit_virtual_interface_role_arn => "allocateTransitVirtualInterfaceRoleArn",
    :enable_site_link => "enableSiteLink",
    :mtu => "mtu",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# File 'directconnect/cfn_transit_virtual_interface_props.rb', line 101

def to_jsii
  result = {}
  result.merge!({
    "bgpPeers" => @bgp_peers,
    "connectionId" => @connection_id,
    "directConnectGatewayId" => @direct_connect_gateway_id,
    "virtualInterfaceName" => @virtual_interface_name,
    "vlan" => @vlan,
    "allocateTransitVirtualInterfaceRoleArn" => @allocate_transit_virtual_interface_role_arn,
    "enableSiteLink" => @enable_site_link,
    "mtu" => @mtu,
    "tags" => @tags,
  })
  result.compact
end