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.
11563 11564 11565 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11563 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
11503 11504 11505 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11503 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
11513 11514 11515 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11513 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
11521 11522 11523 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11521 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
11529 11530 11531 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11529 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
11534 11535 11536 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11534 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
11542 11543 11544 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11542 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
11548 11549 11550 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11548 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
11561 11562 11563 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11561 def weighted_backend_services @weighted_backend_services end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
11568 11569 11570 11571 11572 11573 11574 11575 11576 11577 |
# File 'lib/google/apis/compute_beta/classes.rb', line 11568 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 |