Class: AWSCDK::NetworkManager::CfnLinkProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
network_manager/cfn_link_props.rb

Overview

Properties for defining a CfnLink.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bandwidth:, global_network_id:, site_id:, description: nil, provider: nil, tags: nil, type: nil) ⇒ CfnLinkProps

Returns a new instance of CfnLinkProps.

Parameters:

  • bandwidth (AWSCDK::IResolvable, AWSCDK::NetworkManager::CfnLink::BandwidthProperty)

    The bandwidth for the link.

  • global_network_id (String)

    The ID of the global network.

  • site_id (String)

    The ID of the site.

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

    A description of the link.

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

    The provider of the link.

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

    The tags for the link.

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

    The type of the link.



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

def initialize(bandwidth:, global_network_id:, site_id:, description: nil, provider: nil, tags: nil, type: nil)
  @bandwidth = bandwidth.is_a?(Hash) ? ::AWSCDK::NetworkManager::CfnLink::BandwidthProperty.new(**bandwidth.transform_keys(&:to_sym)) : bandwidth
  Jsii::Type.check_type(@bandwidth, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19uZXR3b3JrbWFuYWdlci5DZm5MaW5rLkJhbmR3aWR0aFByb3BlcnR5In1dfX0=")), "bandwidth")
  @global_network_id = global_network_id
  Jsii::Type.check_type(@global_network_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "globalNetworkId")
  @site_id = site_id
  Jsii::Type.check_type(@site_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "siteId")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @provider = provider
  Jsii::Type.check_type(@provider, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "provider") unless @provider.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?
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type") unless @type.nil?
end

Instance Attribute Details

#descriptionString? (readonly)

A description of the link.

Constraints: Maximum length of 256 characters.



54
55
56
# File 'network_manager/cfn_link_props.rb', line 54

def description
  @description
end

#global_network_idString (readonly)

The ID of the global network.



42
43
44
# File 'network_manager/cfn_link_props.rb', line 42

def global_network_id
  @global_network_id
end

#providerString? (readonly)

The provider of the link.

Constraints: Maximum length of 128 characters. Cannot include the following characters: | \ ^



61
62
63
# File 'network_manager/cfn_link_props.rb', line 61

def provider
  @provider
end

#site_idString (readonly)

The ID of the site.



47
48
49
# File 'network_manager/cfn_link_props.rb', line 47

def site_id
  @site_id
end

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

The tags for the link.



66
67
68
# File 'network_manager/cfn_link_props.rb', line 66

def tags
  @tags
end

#typeString? (readonly)

The type of the link.

Constraints: Maximum length of 128 characters. Cannot include the following characters: | \ ^



73
74
75
# File 'network_manager/cfn_link_props.rb', line 73

def type
  @type
end

Class Method Details

.jsii_propertiesObject



75
76
77
78
79
80
81
82
83
84
85
# File 'network_manager/cfn_link_props.rb', line 75

def self.jsii_properties
  {
    :bandwidth => "bandwidth",
    :global_network_id => "globalNetworkId",
    :site_id => "siteId",
    :description => "description",
    :provider => "provider",
    :tags => "tags",
    :type => "type",
  }
end

Instance Method Details

#to_jsiiObject



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

def to_jsii
  result = {}
  result.merge!({
    "bandwidth" => @bandwidth,
    "globalNetworkId" => @global_network_id,
    "siteId" => @site_id,
    "description" => @description,
    "provider" => @provider,
    "tags" => @tags,
    "type" => @type,
  })
  result.compact
end