Class: AWSCDK::VPCLattice::CfnRule::HttpMatchProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
vpc_lattice/cfn_rule.rb

Overview

Describes criteria that can be applied to incoming requests.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(header_matches: nil, method: nil, path_match: nil) ⇒ HttpMatchProperty

Returns a new instance of HttpMatchProperty.

Parameters:



841
842
843
844
845
846
847
848
# File 'vpc_lattice/cfn_rule.rb', line 841

def initialize(header_matches: nil, method: nil, path_match: nil)
  @header_matches = header_matches
  Jsii::Type.check_type(@header_matches, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfdnBjbGF0dGljZS5DZm5SdWxlLkhlYWRlck1hdGNoUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "headerMatches") unless @header_matches.nil?
  @method = method
  Jsii::Type.check_type(@method, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "method") unless @method.nil?
  @path_match = path_match.is_a?(Hash) ? ::AWSCDK::VPCLattice::CfnRule::PathMatchProperty.new(**path_match.transform_keys(&:to_sym)) : path_match
  Jsii::Type.check_type(@path_match, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c192cGNsYXR0aWNlLkNmblJ1bGUuUGF0aE1hdGNoUHJvcGVydHkifV19fQ==")), "pathMatch") unless @path_match.nil?
end

Instance Attribute Details

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

The header matches.

Matches incoming requests with rule based on request header value before applying rule action.



856
857
858
# File 'vpc_lattice/cfn_rule.rb', line 856

def header_matches
  @header_matches
end

#methodString? (readonly)

The HTTP method type.



861
862
863
# File 'vpc_lattice/cfn_rule.rb', line 861

def method
  @method
end

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

The path match.



866
867
868
# File 'vpc_lattice/cfn_rule.rb', line 866

def path_match
  @path_match
end

Class Method Details

.jsii_propertiesObject



868
869
870
871
872
873
874
# File 'vpc_lattice/cfn_rule.rb', line 868

def self.jsii_properties
  {
    :header_matches => "headerMatches",
    :method => "method",
    :path_match => "pathMatch",
  }
end

Instance Method Details

#to_jsiiObject



876
877
878
879
880
881
882
883
884
# File 'vpc_lattice/cfn_rule.rb', line 876

def to_jsii
  result = {}
  result.merge!({
    "headerMatches" => @header_matches,
    "method" => @method,
    "pathMatch" => @path_match,
  })
  result.compact
end