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.



2328
2329
2330
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2328

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)


2291
2292
2293
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2291

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



2297
2298
2299
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2297

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)


2303
2304
2305
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2303

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)


2311
2312
2313
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2311

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



2317
2318
2319
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2317

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)


2326
2327
2328
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2326

def regex_match
  @regex_match
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2333
2334
2335
2336
2337
2338
2339
2340
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2333

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