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.



1882
1883
1884
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1882

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)


1845
1846
1847
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1845

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



1851
1852
1853
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1851

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)


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

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)


1865
1866
1867
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1865

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



1871
1872
1873
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1871

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)


1880
1881
1882
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1880

def regex_match
  @regex_match
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1887
1888
1889
1890
1891
1892
1893
1894
# File 'lib/google/apis/networkservices_v1/classes.rb', line 1887

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