Class: AWSCDK::Directconnect::CfnConnectionProps

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

Overview

Properties for defining a CfnConnection.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bandwidth:, connection_name:, location:, lag_id: nil, provider_name: nil, request_mac_sec: nil, tags: nil) ⇒ CfnConnectionProps

Returns a new instance of CfnConnectionProps.

Parameters:

  • bandwidth (String)

    The bandwidth of the connection.

  • connection_name (String)

    The name of the connection.

  • location (String)

    The location of the connection.

  • lag_id (String, AWSCDK::Interfaces::AWSDirectconnect::ILagRef, nil) (defaults to: nil)
  • provider_name (String, nil) (defaults to: nil)

    The name of the service provider associated with the requested connection.

  • request_mac_sec (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Indicates whether you want the connection to support MAC Security (MACsec).

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    The tags associated with the connection.



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'directconnect/cfn_connection_props.rb', line 16

def initialize(bandwidth:, connection_name:, location:, lag_id: nil, provider_name: nil, request_mac_sec: nil, tags: nil)
  @bandwidth = bandwidth
  Jsii::Type.check_type(@bandwidth, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "bandwidth")
  @connection_name = connection_name
  Jsii::Type.check_type(@connection_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "connectionName")
  @location = location
  Jsii::Type.check_type(@location, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "location")
  @lag_id = lag_id
  Jsii::Type.check_type(@lag_id, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19kaXJlY3Rjb25uZWN0LklMYWdSZWYifV19fQ==")), "lagId") unless @lag_id.nil?
  @provider_name = provider_name
  Jsii::Type.check_type(@provider_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "providerName") unless @provider_name.nil?
  @request_mac_sec = request_mac_sec
  Jsii::Type.check_type(@request_mac_sec, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "requestMacSec") unless @request_mac_sec.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

#bandwidthString (readonly)

The bandwidth of the connection.



37
38
39
# File 'directconnect/cfn_connection_props.rb', line 37

def bandwidth
  @bandwidth
end

#connection_nameString (readonly)

The name of the connection.



42
43
44
# File 'directconnect/cfn_connection_props.rb', line 42

def connection_name
  @connection_name
end

#lag_idString, ... (readonly)



50
51
52
# File 'directconnect/cfn_connection_props.rb', line 50

def lag_id
  @lag_id
end

#locationString (readonly)

The location of the connection.



47
48
49
# File 'directconnect/cfn_connection_props.rb', line 47

def location
  @location
end

#provider_nameString? (readonly)

The name of the service provider associated with the requested connection.



55
56
57
# File 'directconnect/cfn_connection_props.rb', line 55

def provider_name
  @provider_name
end

#request_mac_secBoolean, ... (readonly)

Indicates whether you want the connection to support MAC Security (MACsec).



60
61
62
# File 'directconnect/cfn_connection_props.rb', line 60

def request_mac_sec
  @request_mac_sec
end

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

The tags associated with the connection.



65
66
67
# File 'directconnect/cfn_connection_props.rb', line 65

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



67
68
69
70
71
72
73
74
75
76
77
# File 'directconnect/cfn_connection_props.rb', line 67

def self.jsii_properties
  {
    :bandwidth => "bandwidth",
    :connection_name => "connectionName",
    :location => "location",
    :lag_id => "lagId",
    :provider_name => "providerName",
    :request_mac_sec => "requestMacSec",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'directconnect/cfn_connection_props.rb', line 79

def to_jsii
  result = {}
  result.merge!({
    "bandwidth" => @bandwidth,
    "connectionName" => @connection_name,
    "location" => @location,
    "lagId" => @lag_id,
    "providerName" => @provider_name,
    "requestMacSec" => @request_mac_sec,
    "tags" => @tags,
  })
  result.compact
end