Class: AWSCDK::AppMesh::CfnGatewayRoute::GatewayRouteMetadataMatchProperty

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

Overview

An object representing the method header to be matched.

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) ⇒ GatewayRouteMetadataMatchProperty

Returns a new instance of GatewayRouteMetadataMatchProperty.

Parameters:

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

    The exact method header to be matched on.

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

    The specified beginning characters of the method header to be matched on.

  • 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 regex used to match the method header.

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

    The specified ending characters of the method header to match on.



725
726
727
728
729
730
731
732
733
734
735
736
# File 'app_mesh/cfn_gateway_route.rb', line 725

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 exact method header to be matched on.



742
743
744
# File 'app_mesh/cfn_gateway_route.rb', line 742

def exact
  @exact
end

#prefixString? (readonly)

The specified beginning characters of the method header to be matched on.



747
748
749
# File 'app_mesh/cfn_gateway_route.rb', line 747

def prefix
  @prefix
end

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

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



752
753
754
# File 'app_mesh/cfn_gateway_route.rb', line 752

def range
  @range
end

#regexString? (readonly)

The regex used to match the method header.



757
758
759
# File 'app_mesh/cfn_gateway_route.rb', line 757

def regex
  @regex
end

#suffixString? (readonly)

The specified ending characters of the method header to match on.



762
763
764
# File 'app_mesh/cfn_gateway_route.rb', line 762

def suffix
  @suffix
end

Class Method Details

.jsii_propertiesObject



764
765
766
767
768
769
770
771
772
# File 'app_mesh/cfn_gateway_route.rb', line 764

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

Instance Method Details

#to_jsiiObject



774
775
776
777
778
779
780
781
782
783
784
# File 'app_mesh/cfn_gateway_route.rb', line 774

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