Class: AWSCDK::Directconnect::CfnLagProps

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

Overview

Properties for defining a CfnLag.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(connections_bandwidth:, lag_name:, location:, minimum_links: nil, provider_name: nil, request_mac_sec: nil, tags: nil) ⇒ CfnLagProps

Returns a new instance of CfnLagProps.

Parameters:

  • connections_bandwidth (String)

    The bandwidth of the individual physical dedicated connections bundled by the LAG.

  • lag_name (String)

    The name of the LAG.

  • location (String)

    The location for the LAG.

  • minimum_links (Numeric, nil) (defaults to: nil)

    The minimum number of physical dedicated connections that must be operational for the LAG itself to be operational.

  • provider_name (String, nil) (defaults to: nil)

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

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

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

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

    The tags associated with the LAG.



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

def initialize(connections_bandwidth:, lag_name:, location:, minimum_links: nil, provider_name: nil, request_mac_sec: nil, tags: nil)
  @connections_bandwidth = connections_bandwidth
  Jsii::Type.check_type(@connections_bandwidth, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "connectionsBandwidth")
  @lag_name = lag_name
  Jsii::Type.check_type(@lag_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lagName")
  @location = location
  Jsii::Type.check_type(@location, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "location")
  @minimum_links = minimum_links
  Jsii::Type.check_type(@minimum_links, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "minimumLinks") unless @minimum_links.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

#connections_bandwidthString (readonly)

The bandwidth of the individual physical dedicated connections bundled by the LAG.



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

def connections_bandwidth
  @connections_bandwidth
end

#lag_nameString (readonly)

The name of the LAG.



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

def lag_name
  @lag_name
end

#locationString (readonly)

The location for the LAG.



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

def location
  @location
end

The minimum number of physical dedicated connections that must be operational for the LAG itself to be operational.



52
53
54
# File 'directconnect/cfn_lag_props.rb', line 52

def minimum_links
  @minimum_links
end

#provider_nameString? (readonly)

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



57
58
59
# File 'directconnect/cfn_lag_props.rb', line 57

def provider_name
  @provider_name
end

#request_mac_secBoolean, ... (readonly)

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



62
63
64
# File 'directconnect/cfn_lag_props.rb', line 62

def request_mac_sec
  @request_mac_sec
end

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

The tags associated with the LAG.



67
68
69
# File 'directconnect/cfn_lag_props.rb', line 67

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



69
70
71
72
73
74
75
76
77
78
79
# File 'directconnect/cfn_lag_props.rb', line 69

def self.jsii_properties
  {
    :connections_bandwidth => "connectionsBandwidth",
    :lag_name => "lagName",
    :location => "location",
    :minimum_links => "minimumLinks",
    :provider_name => "providerName",
    :request_mac_sec => "requestMacSec",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



81
82
83
84
85
86
87
88
89
90
91
92
93
# File 'directconnect/cfn_lag_props.rb', line 81

def to_jsii
  result = {}
  result.merge!({
    "connectionsBandwidth" => @connections_bandwidth,
    "lagName" => @lag_name,
    "location" => @location,
    "minimumLinks" => @minimum_links,
    "providerName" => @provider_name,
    "requestMacSec" => @request_mac_sec,
    "tags" => @tags,
  })
  result.compact
end