Class: AWSCDK::AppMesh::CfnRoute::HeaderMatchMethodProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
app_mesh/cfn_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) ⇒ HeaderMatchMethodProperty

Returns a new instance of HeaderMatchMethodProperty.

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::CfnRoute::MatchRangeProperty, 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.



1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
# File 'app_mesh/cfn_route.rb', line 1114

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::CfnRoute::MatchRangeProperty.new(**range.transform_keys(&:to_sym)) : range
  Jsii::Type.check_type(@range, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmblJvdXRlLk1hdGNoUmFuZ2VQcm9wZXJ0eSJ9XX19")), "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.



1131
1132
1133
# File 'app_mesh/cfn_route.rb', line 1131

def exact
  @exact
end

#prefixString? (readonly)

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



1136
1137
1138
# File 'app_mesh/cfn_route.rb', line 1136

def prefix
  @prefix
end

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

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



1141
1142
1143
# File 'app_mesh/cfn_route.rb', line 1141

def range
  @range
end

#regexString? (readonly)

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



1146
1147
1148
# File 'app_mesh/cfn_route.rb', line 1146

def regex
  @regex
end

#suffixString? (readonly)

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



1151
1152
1153
# File 'app_mesh/cfn_route.rb', line 1151

def suffix
  @suffix
end

Class Method Details

.jsii_propertiesObject



1153
1154
1155
1156
1157
1158
1159
1160
1161
# File 'app_mesh/cfn_route.rb', line 1153

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

Instance Method Details

#to_jsiiObject



1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
# File 'app_mesh/cfn_route.rb', line 1163

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