Class: Google::Apis::ComputeBeta::PathRule
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::PathRule
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb
Overview
A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL.
Instance Attribute Summary collapse
-
#paths ⇒ Array<String>
The list of path patterns to match.
-
#route_action ⇒ Google::Apis::ComputeBeta::HttpRouteAction
In response to a matching path, the load balancer performs advanced routing actions, such as URL rewrites and header transformations, before forwarding the request to the selected backend.
-
#service ⇒ String
The full or partial URL of the backend service resource to which traffic is directed if this rule is matched.
-
#url_redirect ⇒ Google::Apis::ComputeBeta::HttpRedirectAction
Specifies settings for an HTTP redirect.
Instance Method Summary collapse
-
#initialize(**args) ⇒ PathRule
constructor
A new instance of PathRule.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ PathRule
Returns a new instance of PathRule.
26120 26121 26122 |
# File 'lib/google/apis/compute_beta/classes.rb', line 26120 def initialize(**args) update!(**args) end |
Instance Attribute Details
#paths ⇒ Array<String>
The list of path patterns to match. Each must start with / and the only place
a * is allowed is at the end following a /. The string fed to the path matcher
does not include any text after the first ? or #, and those chars are not
allowed here.
Corresponds to the JSON property paths
26090 26091 26092 |
# File 'lib/google/apis/compute_beta/classes.rb', line 26090 def paths @paths end |
#route_action ⇒ Google::Apis::ComputeBeta::HttpRouteAction
In response to a matching path, the load balancer performs advanced routing
actions, such as URL rewrites and header transformations, before forwarding
the request to the selected backend. If routeAction specifies any
weightedBackendServices, service must not be set. Conversely if service is set,
routeAction cannot contain any weightedBackendServices. Only one of
routeAction or urlRedirect must be set. URL maps for Classic external HTTP(S)
load balancers only support the urlRewrite action within a path rule's
routeAction.
Corresponds to the JSON property routeAction
26102 26103 26104 |
# File 'lib/google/apis/compute_beta/classes.rb', line 26102 def route_action @route_action end |
#service ⇒ String
The full or partial URL of the backend service resource to which traffic is
directed if this rule is matched. If routeAction is also specified, advanced
routing actions, such as URL rewrites, take effect before sending the request
to the backend. However, if service is specified, routeAction cannot contain
any weightedBackendServices. Conversely, if routeAction specifies any
weightedBackendServices, service must not be specified. Only one of
urlRedirect, service or routeAction.weightedBackendService must be set.
Corresponds to the JSON property service
26113 26114 26115 |
# File 'lib/google/apis/compute_beta/classes.rb', line 26113 def service @service end |
#url_redirect ⇒ Google::Apis::ComputeBeta::HttpRedirectAction
Specifies settings for an HTTP redirect.
Corresponds to the JSON property urlRedirect
26118 26119 26120 |
# File 'lib/google/apis/compute_beta/classes.rb', line 26118 def url_redirect @url_redirect end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
26125 26126 26127 26128 26129 26130 |
# File 'lib/google/apis/compute_beta/classes.rb', line 26125 def update!(**args) @paths = args[:paths] if args.key?(:paths) @route_action = args[:route_action] if args.key?(:route_action) @service = args[:service] if args.key?(:service) @url_redirect = args[:url_redirect] if args.key?(:url_redirect) end |