Class: AWSCDK::AppMesh::CfnGatewayRoute::HttpGatewayRouteHeaderMatchProperty

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

Overview

An object that represents the method and value to match with the header value sent in a request.

Specify one match method.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(exact: nil, prefix: nil, range: nil, regex: nil, suffix: nil) ⇒ HttpGatewayRouteHeaderMatchProperty

Returns a new instance of HttpGatewayRouteHeaderMatchProperty.

Parameters:

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

    The value sent by the client must match the specified value exactly.

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

    The value sent by the client must begin with the specified characters.

  • range (AWSCDK::IResolvable, AWSCDK::AppMesh::CfnGatewayRoute::GatewayRouteRangeMatchProperty, nil) (defaults to: nil)

    An object that represents the range of values to match on.

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

    The value sent by the client must include the specified characters.

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

    The value sent by the client must end with the specified characters.



1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
# File 'app_mesh/cfn_gateway_route.rb', line 1266

def initialize(exact: nil, prefix: nil, range: nil, regex: nil, suffix: nil)
  @exact = exact
  Jsii::Type.check_type(@exact, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "exact") unless @exact.nil?
  @prefix = prefix
  Jsii::Type.check_type(@prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "prefix") unless @prefix.nil?
  @range = range.is_a?(Hash) ? ::AWSCDK::AppMesh::CfnGatewayRoute::GatewayRouteRangeMatchProperty.new(**range.transform_keys(&:to_sym)) : range
  Jsii::Type.check_type(@range, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmbkdhdGV3YXlSb3V0ZS5HYXRld2F5Um91dGVSYW5nZU1hdGNoUHJvcGVydHkifV19fQ==")), "range") unless @range.nil?
  @regex = regex
  Jsii::Type.check_type(@regex, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "regex") unless @regex.nil?
  @suffix = suffix
  Jsii::Type.check_type(@suffix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "suffix") unless @suffix.nil?
end

Instance Attribute Details

#exactString? (readonly)

The value sent by the client must match the specified value exactly.



1283
1284
1285
# File 'app_mesh/cfn_gateway_route.rb', line 1283

def exact
  @exact
end

#prefixString? (readonly)

The value sent by the client must begin with the specified characters.



1288
1289
1290
# File 'app_mesh/cfn_gateway_route.rb', line 1288

def prefix
  @prefix
end

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

An object that represents the range of values to match on.



1293
1294
1295
# File 'app_mesh/cfn_gateway_route.rb', line 1293

def range
  @range
end

#regexString? (readonly)

The value sent by the client must include the specified characters.



1298
1299
1300
# File 'app_mesh/cfn_gateway_route.rb', line 1298

def regex
  @regex
end

#suffixString? (readonly)

The value sent by the client must end with the specified characters.



1303
1304
1305
# File 'app_mesh/cfn_gateway_route.rb', line 1303

def suffix
  @suffix
end

Class Method Details

.jsii_propertiesObject



1305
1306
1307
1308
1309
1310
1311
1312
1313
# File 'app_mesh/cfn_gateway_route.rb', line 1305

def self.jsii_properties
  {
    :exact => "exact",
    :prefix => "prefix",
    :range => "range",
    :regex => "regex",
    :suffix => "suffix",
  }
end

Instance Method Details

#to_jsiiObject



1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
# File 'app_mesh/cfn_gateway_route.rb', line 1315

def to_jsii
  result = {}
  result.merge!({
    "exact" => @exact,
    "prefix" => @prefix,
    "range" => @range,
    "regex" => @regex,
    "suffix" => @suffix,
  })
  result.compact
end