Class: Google::Apis::ComputeV1::PathRule
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::PathRule
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/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::ComputeV1::HttpRouteAction
In response to a matching path, the load balancer performs advanced routing actions like URL rewrites, header transformations, etc.
-
#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::ComputeV1::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.
22880 22881 22882 |
# File 'lib/google/apis/compute_v1/classes.rb', line 22880 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
22849 22850 22851 |
# File 'lib/google/apis/compute_v1/classes.rb', line 22849 def paths @paths end |
#route_action ⇒ Google::Apis::ComputeV1::HttpRouteAction
In response to a matching path, the load balancer performs advanced routing
actions like URL rewrites, header transformations, etc. prior to 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.
UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
within a pathRule's routeAction.
Corresponds to the JSON property routeAction
22861 22862 22863 |
# File 'lib/google/apis/compute_v1/classes.rb', line 22861 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 additionally specified,
advanced routing actions like URL Rewrites, etc. take effect prior to sending
the request to the backend. However, if service is specified, routeAction
cannot contain any weightedBackendService s. 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
22873 22874 22875 |
# File 'lib/google/apis/compute_v1/classes.rb', line 22873 def service @service end |
#url_redirect ⇒ Google::Apis::ComputeV1::HttpRedirectAction
Specifies settings for an HTTP redirect.
Corresponds to the JSON property urlRedirect
22878 22879 22880 |
# File 'lib/google/apis/compute_v1/classes.rb', line 22878 def url_redirect @url_redirect end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
22885 22886 22887 22888 22889 22890 |
# File 'lib/google/apis/compute_v1/classes.rb', line 22885 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 |