Class: Google::Apis::NetworkservicesV1::HttpRouteRouteMatch

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networkservices_v1/classes.rb,
lib/google/apis/networkservices_v1/representations.rb,
lib/google/apis/networkservices_v1/representations.rb

Overview

RouteMatch defines specifications used to match requests. If multiple match types are set, this RouteMatch will match if ALL type of matches are matched.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ HttpRouteRouteMatch

Returns a new instance of HttpRouteRouteMatch.



1668
1669
1670
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1668

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#full_path_matchString

The HTTP request path value should exactly match this value. Only one of full_path_match, prefix_match, or regex_match should be used. Corresponds to the JSON property fullPathMatch

Returns:

  • (String)


1631
1632
1633
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1631

def full_path_match
  @full_path_match
end

#headersArray<Google::Apis::NetworkservicesV1::HttpRouteHeaderMatch>

Specifies a list of HTTP request headers to match against. ALL of the supplied headers must be matched. Corresponds to the JSON property headers



1637
1638
1639
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1637

def headers
  @headers
end

#ignore_caseBoolean Also known as: ignore_case?

Specifies if prefix_match and full_path_match matches are case sensitive. The default value is false. Corresponds to the JSON property ignoreCase

Returns:

  • (Boolean)


1643
1644
1645
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1643

def ignore_case
  @ignore_case
end

#prefix_matchString

The HTTP request path value must begin with specified prefix_match. prefix_match must begin with a /. Only one of full_path_match, prefix_match, or regex_match should be used. Corresponds to the JSON property prefixMatch

Returns:

  • (String)


1651
1652
1653
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1651

def prefix_match
  @prefix_match
end

#query_parametersArray<Google::Apis::NetworkservicesV1::HttpRouteQueryParameterMatch>

Specifies a list of query parameters to match against. ALL of the query parameters must be matched. Corresponds to the JSON property queryParameters



1657
1658
1659
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1657

def query_parameters
  @query_parameters
end

#regex_matchString

The HTTP request path value must satisfy the regular expression specified by regex_match after removing any query parameters and anchor supplied with the original URL. For regular expression grammar, please see https://github.com/ google/re2/wiki/Syntax Only one of full_path_match, prefix_match, or regex_match should be used. Corresponds to the JSON property regexMatch

Returns:

  • (String)


1666
1667
1668
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1666

def regex_match
  @regex_match
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1673
1674
1675
1676
1677
1678
1679
1680
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1673

def update!(**args)
  @full_path_match = args[:full_path_match] if args.key?(:full_path_match)
  @headers = args[:headers] if args.key?(:headers)
  @ignore_case = args[:ignore_case] if args.key?(:ignore_case)
  @prefix_match = args[:prefix_match] if args.key?(:prefix_match)
  @query_parameters = args[:query_parameters] if args.key?(:query_parameters)
  @regex_match = args[:regex_match] if args.key?(:regex_match)
end