Class: Google::Apis::ComputeBeta::HttpRouteAction
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::HttpRouteAction
- 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
Instance Attribute Summary collapse
-
#cors_policy ⇒ Google::Apis::ComputeBeta::CorsPolicy
The specification for allowing client-side cross-origin requests.
-
#fault_injection_policy ⇒ Google::Apis::ComputeBeta::HttpFaultInjection
The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure.
-
#max_stream_duration ⇒ Google::Apis::ComputeBeta::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::ComputeBeta::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::ComputeBeta::HttpRetryPolicy
The retry policy associates with HttpRouteRule Corresponds to the JSON property
retryPolicy. -
#timeout ⇒ Google::Apis::ComputeBeta::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::ComputeBeta::UrlRewrite
The spec for modifying the path before sending the request to the matched backend service.
-
#weighted_backend_services ⇒ Array<Google::Apis::ComputeBeta::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.
19870 19871 19872 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19870 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cors_policy ⇒ Google::Apis::ComputeBeta::CorsPolicy
The specification for allowing client-side cross-origin requests. For more
information about the W3C recommendation for cross-origin resource sharing
(CORS), see Fetch API Living
Standard.
Corresponds to the JSON property corsPolicy
19809 19810 19811 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19809 def cors_policy @cors_policy end |
#fault_injection_policy ⇒ Google::Apis::ComputeBeta::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 the load balancer on a percentage of requests before sending
those request to the backend service. Similarly requests from clients can be
aborted by the load balancer for a percentage of requests.
Corresponds to the JSON property faultInjectionPolicy
19819 19820 19821 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19819 def fault_injection_policy @fault_injection_policy end |
#max_stream_duration ⇒ Google::Apis::ComputeBeta::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
19827 19828 19829 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19827 def max_stream_duration @max_stream_duration end |
#request_mirror_policy ⇒ Google::Apis::ComputeBeta::RequestMirrorPolicy
A policy that specifies how requests intended for the route's backends
are shadowed to a separate mirrored backend service. The load balancer
doesn't wait for responses from the shadow service. Before sending traffic
to the shadow service, the host or authority header is suffixed with-shadow.
Corresponds to the JSON property requestMirrorPolicy
19835 19836 19837 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19835 def request_mirror_policy @request_mirror_policy end |
#retry_policy ⇒ Google::Apis::ComputeBeta::HttpRetryPolicy
The retry policy associates with HttpRouteRule
Corresponds to the JSON property retryPolicy
19840 19841 19842 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19840 def retry_policy @retry_policy end |
#timeout ⇒ Google::Apis::ComputeBeta::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
19848 19849 19850 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19848 def timeout @timeout end |
#url_rewrite ⇒ Google::Apis::ComputeBeta::UrlRewrite
The spec for modifying the path before sending the request to the matched
backend service.
Corresponds to the JSON property urlRewrite
19854 19855 19856 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19854 def url_rewrite @url_rewrite end |
#weighted_backend_services ⇒ Array<Google::Apis::ComputeBeta::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 oneweightedBackendService with
weight set to a non-zero number.
After a backend service 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
19868 19869 19870 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19868 def weighted_backend_services @weighted_backend_services end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
19875 19876 19877 19878 19879 19880 19881 19882 19883 19884 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19875 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 |