Class: Google::Apis::ComputeV1::HttpRouteAction
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::HttpRouteAction
- 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
Instance Attribute Summary collapse
-
#cors_policy ⇒ Google::Apis::ComputeV1::CorsPolicy
The specification for allowing client side cross-origin requests.
-
#fault_injection_policy ⇒ Google::Apis::ComputeV1::HttpFaultInjection
The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure.
-
#max_stream_duration ⇒ Google::Apis::ComputeV1::Duration
A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution.
-
#request_mirror_policy ⇒ Google::Apis::ComputeV1::RequestMirrorPolicy
A policy that specifies how requests intended for the route's backends are shadowed to a separate mirrored backend service.
-
#retry_policy ⇒ Google::Apis::ComputeV1::HttpRetryPolicy
The retry policy associates with HttpRouteRule Corresponds to the JSON property
retryPolicy
. -
#timeout ⇒ Google::Apis::ComputeV1::Duration
A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution.
-
#url_rewrite ⇒ Google::Apis::ComputeV1::UrlRewrite
The spec for modifying the path before sending the request to the matched backend service.
-
#weighted_backend_services ⇒ Array<Google::Apis::ComputeV1::WeightedBackendService>
A list of weighted backend services to send traffic to when a route match occurs.
Instance Method Summary collapse
-
#initialize(**args) ⇒ HttpRouteAction
constructor
A new instance of HttpRouteAction.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ HttpRouteAction
Returns a new instance of HttpRouteAction.
10889 10890 10891 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10889 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cors_policy ⇒ Google::Apis::ComputeV1::CorsPolicy
The specification for allowing client side cross-origin requests. Please see
W3C Recommendation for Cross Origin Resource Sharing
Corresponds to the JSON property corsPolicy
10829 10830 10831 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10829 def cors_policy @cors_policy end |
#fault_injection_policy ⇒ Google::Apis::ComputeV1::HttpFaultInjection
The specification for fault injection introduced into traffic to test the
resiliency of clients to backend service failure. As part of fault injection,
when clients send requests to a backend service, delays can be introduced by
Loadbalancer on a percentage of requests before sending those request to the
backend service. Similarly requests from clients can be aborted by the
Loadbalancer for a percentage of requests.
Corresponds to the JSON property faultInjectionPolicy
10839 10840 10841 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10839 def fault_injection_policy @fault_injection_policy end |
#max_stream_duration ⇒ Google::Apis::ComputeV1::Duration
A Duration represents a fixed-length span of time represented as a count of
seconds and fractions of seconds at nanosecond resolution. It is independent
of any calendar and concepts like "day" or "month". Range is approximately 10,
000 years.
Corresponds to the JSON property maxStreamDuration
10847 10848 10849 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10847 def max_stream_duration @max_stream_duration end |
#request_mirror_policy ⇒ Google::Apis::ComputeV1::RequestMirrorPolicy
A policy that specifies how requests intended for the route's backends are
shadowed to a separate mirrored backend service. Loadbalancer does not wait
for responses from the shadow service. Prior to sending traffic to the shadow
service, the host / authority header is suffixed with -shadow.
Corresponds to the JSON property requestMirrorPolicy
10855 10856 10857 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10855 def request_mirror_policy @request_mirror_policy end |
#retry_policy ⇒ Google::Apis::ComputeV1::HttpRetryPolicy
The retry policy associates with HttpRouteRule
Corresponds to the JSON property retryPolicy
10860 10861 10862 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10860 def retry_policy @retry_policy end |
#timeout ⇒ Google::Apis::ComputeV1::Duration
A Duration represents a fixed-length span of time represented as a count of
seconds and fractions of seconds at nanosecond resolution. It is independent
of any calendar and concepts like "day" or "month". Range is approximately 10,
000 years.
Corresponds to the JSON property timeout
10868 10869 10870 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10868 def timeout @timeout end |
#url_rewrite ⇒ Google::Apis::ComputeV1::UrlRewrite
The spec for modifying the path before sending the request to the matched
backend service.
Corresponds to the JSON property urlRewrite
10874 10875 10876 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10874 def url_rewrite @url_rewrite end |
#weighted_backend_services ⇒ Array<Google::Apis::ComputeV1::WeightedBackendService>
A list of weighted backend services to send traffic to when a route match
occurs. The weights determine the fraction of traffic that flows to their
corresponding backend service. If all traffic needs to go to a single backend
service, there must be one weightedBackendService with weight set to a non-
zero number.
Once a backendService is identified and before forwarding the request to the
backend service, advanced routing actions such as URL rewrites and header
transformations are applied depending on additional settings specified in this
HttpRouteAction.
Corresponds to the JSON property weightedBackendServices
10887 10888 10889 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10887 def weighted_backend_services @weighted_backend_services end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
10894 10895 10896 10897 10898 10899 10900 10901 10902 10903 |
# File 'lib/google/apis/compute_v1/classes.rb', line 10894 def update!(**args) @cors_policy = args[:cors_policy] if args.key?(:cors_policy) @fault_injection_policy = args[:fault_injection_policy] if args.key?(:fault_injection_policy) @max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration) @request_mirror_policy = args[:request_mirror_policy] if args.key?(:request_mirror_policy) @retry_policy = args[:retry_policy] if args.key?(:retry_policy) @timeout = args[:timeout] if args.key?(:timeout) @url_rewrite = args[:url_rewrite] if args.key?(:url_rewrite) @weighted_backend_services = args[:weighted_backend_services] if args.key?(:weighted_backend_services) end |