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.
11444 11445 11446 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11444 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
11384 11385 11386 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11384 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
11394 11395 11396 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11394 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
11402 11403 11404 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11402 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
11410 11411 11412 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11410 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
11415 11416 11417 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11415 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
11423 11424 11425 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11423 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
11429 11430 11431 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11429 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
11442 11443 11444 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11442 def weighted_backend_services @weighted_backend_services end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
11449 11450 11451 11452 11453 11454 11455 11456 11457 11458 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11449 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 |