Class: AWSCDK::AppMesh::CfnVirtualRouterProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
app_mesh/cfn_virtual_router_props.rb

Overview

Properties for defining a CfnVirtualRouter.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(mesh_name:, spec:, mesh_owner: nil, tags: nil, virtual_router_name: nil) ⇒ CfnVirtualRouterProps

Returns a new instance of CfnVirtualRouterProps.

Parameters:

  • mesh_name (String)

    The name of the service mesh to create the virtual router in.

  • spec (AWSCDK::IResolvable, AWSCDK::AppMesh::CfnVirtualRouter::VirtualRouterSpecProperty)

    The virtual router specification to apply.

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

    The AWS IAM account ID of the service mesh owner.

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

    Optional metadata that you can apply to the virtual router to assist with categorization and organization.

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

    The name to use for the virtual router.



14
15
16
17
18
19
20
21
22
23
24
25
# File 'app_mesh/cfn_virtual_router_props.rb', line 14

def initialize(mesh_name:, spec:, mesh_owner: nil, tags: nil, virtual_router_name: nil)
  @mesh_name = mesh_name
  Jsii::Type.check_type(@mesh_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "meshName")
  @spec = spec.is_a?(Hash) ? ::AWSCDK::AppMesh::CfnVirtualRouter::VirtualRouterSpecProperty.new(**spec.transform_keys(&:to_sym)) : spec
  Jsii::Type.check_type(@spec, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmblZpcnR1YWxSb3V0ZXIuVmlydHVhbFJvdXRlclNwZWNQcm9wZXJ0eSJ9XX19")), "spec")
  @mesh_owner = mesh_owner
  Jsii::Type.check_type(@mesh_owner, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "meshOwner") unless @mesh_owner.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?
  @virtual_router_name = virtual_router_name
  Jsii::Type.check_type(@virtual_router_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "virtualRouterName") unless @virtual_router_name.nil?
end

Instance Attribute Details

#mesh_nameString (readonly)

The name of the service mesh to create the virtual router in.



31
32
33
# File 'app_mesh/cfn_virtual_router_props.rb', line 31

def mesh_name
  @mesh_name
end

#mesh_ownerString? (readonly)

The AWS IAM account ID of the service mesh owner.

If the account ID is not your own, then the account that you specify must share the mesh with your account before you can create the resource in the service mesh. For more information about mesh sharing, see Working with shared meshes .



43
44
45
# File 'app_mesh/cfn_virtual_router_props.rb', line 43

def mesh_owner
  @mesh_owner
end

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

Optional metadata that you can apply to the virtual router to assist with categorization and organization.

Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.



50
51
52
# File 'app_mesh/cfn_virtual_router_props.rb', line 50

def tags
  @tags
end

#virtual_router_nameString? (readonly)

The name to use for the virtual router.



55
56
57
# File 'app_mesh/cfn_virtual_router_props.rb', line 55

def virtual_router_name
  @virtual_router_name
end

Class Method Details

.jsii_propertiesObject



57
58
59
60
61
62
63
64
65
# File 'app_mesh/cfn_virtual_router_props.rb', line 57

def self.jsii_properties
  {
    :mesh_name => "meshName",
    :spec => "spec",
    :mesh_owner => "meshOwner",
    :tags => "tags",
    :virtual_router_name => "virtualRouterName",
  }
end

Instance Method Details

#to_jsiiObject



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

def to_jsii
  result = {}
  result.merge!({
    "meshName" => @mesh_name,
    "spec" => @spec,
    "meshOwner" => @mesh_owner,
    "tags" => @tags,
    "virtualRouterName" => @virtual_router_name,
  })
  result.compact
end