Class: AWSCDK::AppMesh::CfnGatewayRoute::HttpGatewayRouteMatchProperty

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

Overview

An object that represents the criteria for determining a request match.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(headers: nil, hostname: nil, method: nil, path: nil, port: nil, prefix: nil, query_parameters: nil) ⇒ HttpGatewayRouteMatchProperty

Returns a new instance of HttpGatewayRouteMatchProperty.

Parameters:



1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
# File 'app_mesh/cfn_gateway_route.rb', line 1398

def initialize(headers: nil, hostname: nil, method: nil, path: nil, port: nil, prefix: nil, query_parameters: nil)
  @headers = headers
  Jsii::Type.check_type(@headers, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbWVzaC5DZm5HYXRld2F5Um91dGUuSHR0cEdhdGV3YXlSb3V0ZUhlYWRlclByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "headers") unless @headers.nil?
  @hostname = hostname.is_a?(Hash) ? ::AWSCDK::AppMesh::CfnGatewayRoute::GatewayRouteHostnameMatchProperty.new(**hostname.transform_keys(&:to_sym)) : hostname
  Jsii::Type.check_type(@hostname, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmbkdhdGV3YXlSb3V0ZS5HYXRld2F5Um91dGVIb3N0bmFtZU1hdGNoUHJvcGVydHkifV19fQ==")), "hostname") unless @hostname.nil?
  @method = method
  Jsii::Type.check_type(@method, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "method") unless @method.nil?
  @path = path.is_a?(Hash) ? ::AWSCDK::AppMesh::CfnGatewayRoute::HttpPathMatchProperty.new(**path.transform_keys(&:to_sym)) : path
  Jsii::Type.check_type(@path, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmbkdhdGV3YXlSb3V0ZS5IdHRwUGF0aE1hdGNoUHJvcGVydHkifV19fQ==")), "path") unless @path.nil?
  @port = port
  Jsii::Type.check_type(@port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "port") unless @port.nil?
  @prefix = prefix
  Jsii::Type.check_type(@prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "prefix") unless @prefix.nil?
  @query_parameters = query_parameters
  Jsii::Type.check_type(@query_parameters, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbWVzaC5DZm5HYXRld2F5Um91dGUuUXVlcnlQYXJhbWV0ZXJQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "queryParameters") unless @query_parameters.nil?
end

Instance Attribute Details

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

The client request headers to match on.



1419
1420
1421
# File 'app_mesh/cfn_gateway_route.rb', line 1419

def headers
  @headers
end

#methodString? (readonly)

The method to match on.



1429
1430
1431
# File 'app_mesh/cfn_gateway_route.rb', line 1429

def method
  @method
end

#portNumeric? (readonly)

The port number to match on.



1439
1440
1441
# File 'app_mesh/cfn_gateway_route.rb', line 1439

def port
  @port
end

#prefixString? (readonly)

Specifies the path to match requests with.

This parameter must always start with / , which by itself matches all requests to the virtual service name. You can also match for path-based routing of requests. For example, if your virtual service name is my-service.local and you want the route to match requests to my-service.local/metrics , your prefix should be /metrics .



1446
1447
1448
# File 'app_mesh/cfn_gateway_route.rb', line 1446

def prefix
  @prefix
end

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

The query parameter to match on.



1451
1452
1453
# File 'app_mesh/cfn_gateway_route.rb', line 1451

def query_parameters
  @query_parameters
end

Class Method Details

.jsii_propertiesObject



1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
# File 'app_mesh/cfn_gateway_route.rb', line 1453

def self.jsii_properties
  {
    :headers => "headers",
    :hostname => "hostname",
    :method => "method",
    :path => "path",
    :port => "port",
    :prefix => "prefix",
    :query_parameters => "queryParameters",
  }
end

Instance Method Details

#to_jsiiObject



1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
# File 'app_mesh/cfn_gateway_route.rb', line 1465

def to_jsii
  result = {}
  result.merge!({
    "headers" => @headers,
    "hostname" => @hostname,
    "method" => @method,
    "path" => @path,
    "port" => @port,
    "prefix" => @prefix,
    "queryParameters" => @query_parameters,
  })
  result.compact
end