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.



1860
1861
1862
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1860

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)


1823
1824
1825
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1823

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



1829
1830
1831
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1829

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)


1835
1836
1837
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1835

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)


1843
1844
1845
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1843

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



1849
1850
1851
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1849

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)


1858
1859
1860
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1858

def regex_match
  @regex_match
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1865
1866
1867
1868
1869
1870
1871
1872
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1865

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