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.
11527 11528 11529 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11527 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cors_policy ⇒ Google::Apis::ComputeBeta::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
11467 11468 11469 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11467 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
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
11477 11478 11479 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11477 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
11485 11486 11487 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11485 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. 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
11493 11494 11495 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11493 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
11498 11499 11500 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11498 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
11506 11507 11508 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11506 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
11512 11513 11514 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11512 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 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
11525 11526 11527 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11525 def weighted_backend_services @weighted_backend_services end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
11532 11533 11534 11535 11536 11537 11538 11539 11540 11541 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11532 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 |