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.



3093
3094
3095
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3093

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)


3056
3057
3058
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3056

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



3062
3063
3064
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3062

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)


3068
3069
3070
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3068

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)


3076
3077
3078
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3076

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



3082
3083
3084
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3082

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)


3091
3092
3093
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3091

def regex_match
  @regex_match
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3098
3099
3100
3101
3102
3103
3104
3105
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3098

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