Class: AWSCDK::AppMesh::CfnVirtualNode::VirtualNodeSpecProperty

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

Overview

An object that represents the specification of a virtual node.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(backend_defaults: nil, backends: nil, listeners: nil, logging: nil, service_discovery: nil) ⇒ VirtualNodeSpecProperty

Returns a new instance of VirtualNodeSpecProperty.

Parameters:



2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
# File 'app_mesh/cfn_virtual_node.rb', line 2539

def initialize(backend_defaults: nil, backends: nil, listeners: nil, logging: nil, service_discovery: nil)
  @backend_defaults = backend_defaults.is_a?(Hash) ? ::AWSCDK::AppMesh::CfnVirtualNode::BackendDefaultsProperty.new(**backend_defaults.transform_keys(&:to_sym)) : backend_defaults
  Jsii::Type.check_type(@backend_defaults, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmblZpcnR1YWxOb2RlLkJhY2tlbmREZWZhdWx0c1Byb3BlcnR5In1dfX0=")), "backendDefaults") unless @backend_defaults.nil?
  @backends = backends
  Jsii::Type.check_type(@backends, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbWVzaC5DZm5WaXJ0dWFsTm9kZS5CYWNrZW5kUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "backends") unless @backends.nil?
  @listeners = listeners
  Jsii::Type.check_type(@listeners, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbWVzaC5DZm5WaXJ0dWFsTm9kZS5MaXN0ZW5lclByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "listeners") unless @listeners.nil?
  @logging = logging.is_a?(Hash) ? ::AWSCDK::AppMesh::CfnVirtualNode::LoggingProperty.new(**logging.transform_keys(&:to_sym)) : logging
  Jsii::Type.check_type(@logging, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmblZpcnR1YWxOb2RlLkxvZ2dpbmdQcm9wZXJ0eSJ9XX19")), "logging") unless @logging.nil?
  @service_discovery = service_discovery.is_a?(Hash) ? ::AWSCDK::AppMesh::CfnVirtualNode::ServiceDiscoveryProperty.new(**service_discovery.transform_keys(&:to_sym)) : service_discovery
  Jsii::Type.check_type(@service_discovery, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmblZpcnR1YWxOb2RlLlNlcnZpY2VEaXNjb3ZlcnlQcm9wZXJ0eSJ9XX19")), "serviceDiscovery") unless @service_discovery.nil?
end

Instance Attribute Details

#backend_defaultsAWSCDK::IResolvable, ... (readonly)

A reference to an object that represents the defaults for backends.



2556
2557
2558
# File 'app_mesh/cfn_virtual_node.rb', line 2556

def backend_defaults
  @backend_defaults
end

#backendsAWSCDK::IResolvable, ... (readonly)

The backends that the virtual node is expected to send outbound traffic to.

App Mesh doesn't validate the existence of those virtual services specified in backends. This is to prevent a cyclic dependency between virtual nodes and virtual services creation. Make sure the virtual service name is correct. The virtual service can be created afterwards if it doesn't already exist.



2563
2564
2565
# File 'app_mesh/cfn_virtual_node.rb', line 2563

def backends
  @backends
end

#listenersAWSCDK::IResolvable, ... (readonly)

The listener that the virtual node is expected to receive inbound traffic from.

You can specify one listener.



2570
2571
2572
# File 'app_mesh/cfn_virtual_node.rb', line 2570

def listeners
  @listeners
end

#loggingAWSCDK::IResolvable, ... (readonly)

The inbound and outbound access logging information for the virtual node.



2575
2576
2577
# File 'app_mesh/cfn_virtual_node.rb', line 2575

def logging
  @logging
end

#service_discoveryAWSCDK::IResolvable, ... (readonly)

The service discovery information for the virtual node.

If your virtual node does not expect ingress traffic, you can omit this parameter. If you specify a listener , then you must specify service discovery information.



2582
2583
2584
# File 'app_mesh/cfn_virtual_node.rb', line 2582

def service_discovery
  @service_discovery
end

Class Method Details

.jsii_propertiesObject



2584
2585
2586
2587
2588
2589
2590
2591
2592
# File 'app_mesh/cfn_virtual_node.rb', line 2584

def self.jsii_properties
  {
    :backend_defaults => "backendDefaults",
    :backends => "backends",
    :listeners => "listeners",
    :logging => "logging",
    :service_discovery => "serviceDiscovery",
  }
end

Instance Method Details

#to_jsiiObject



2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
# File 'app_mesh/cfn_virtual_node.rb', line 2594

def to_jsii
  result = {}
  result.merge!({
    "backendDefaults" => @backend_defaults,
    "backends" => @backends,
    "listeners" => @listeners,
    "logging" => @logging,
    "serviceDiscovery" => @service_discovery,
  })
  result.compact
end