Class: Google::Apis::NetworkservicesV1beta1::HttpRouteRouteAction
- Inherits:
-
Object
- Object
- Google::Apis::NetworkservicesV1beta1::HttpRouteRouteAction
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/networkservices_v1beta1/classes.rb,
lib/google/apis/networkservices_v1beta1/representations.rb,
lib/google/apis/networkservices_v1beta1/representations.rb
Overview
The specifications for routing traffic and applying associated policies.
Instance Attribute Summary collapse
-
#cors_policy ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteCorsPolicy
The Specification for allowing client side cross-origin requests.
-
#destinations ⇒ Array<Google::Apis::NetworkservicesV1beta1::HttpRouteDestination>
The destination to which traffic should be forwarded.
-
#direct_response ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteHttpDirectResponse
Static HTTP response object to be returned.
-
#fault_injection_policy ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteFaultInjectionPolicy
The specification for fault injection introduced into traffic to test the resiliency of clients to destination service failure.
-
#idle_timeout ⇒ String
Optional.
-
#redirect ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteRedirect
The specification for redirecting traffic.
-
#request_header_modifier ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteHeaderModifier
The specification for modifying HTTP header in HTTP request and HTTP response.
-
#request_mirror_policy ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteRequestMirrorPolicy
Specifies the policy on how requests are shadowed to a separate mirrored destination service.
-
#response_header_modifier ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteHeaderModifier
The specification for modifying HTTP header in HTTP request and HTTP response.
-
#retry_policy ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteRetryPolicy
The specifications for retries.
-
#stateful_session_affinity ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteStatefulSessionAffinityPolicy
The specification for cookie-based stateful session affinity where the date plane supplies a “session cookie” with the name "GSSA" which encodes a specific destination host and each request containing that cookie will be directed to that host as long as the destination host remains up and healthy.
-
#timeout ⇒ String
Specifies the timeout for selected route.
-
#url_rewrite ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteUrlRewrite
The specification for modifying the URL of the request, prior to forwarding the request to the destination.
Instance Method Summary collapse
-
#initialize(**args) ⇒ HttpRouteRouteAction
constructor
A new instance of HttpRouteRouteAction.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ HttpRouteRouteAction
Returns a new instance of HttpRouteRouteAction.
2232 2233 2234 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2232 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cors_policy ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteCorsPolicy
The Specification for allowing client side cross-origin requests.
Corresponds to the JSON property corsPolicy
2149 2150 2151 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2149 def cors_policy @cors_policy end |
#destinations ⇒ Array<Google::Apis::NetworkservicesV1beta1::HttpRouteDestination>
The destination to which traffic should be forwarded.
Corresponds to the JSON property destinations
2154 2155 2156 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2154 def destinations @destinations end |
#direct_response ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteHttpDirectResponse
Static HTTP response object to be returned.
Corresponds to the JSON property directResponse
2159 2160 2161 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2159 def direct_response @direct_response end |
#fault_injection_policy ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteFaultInjectionPolicy
The specification for fault injection introduced into traffic to test the
resiliency of clients to destination service failure. As part of fault
injection, when clients send requests to a destination, delays can be
introduced by client proxy on a percentage of requests before sending those
requests to the destination service. Similarly requests can be aborted by
client proxy for a percentage of requests.
Corresponds to the JSON property faultInjectionPolicy
2169 2170 2171 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2169 def fault_injection_policy @fault_injection_policy end |
#idle_timeout ⇒ String
Optional. Specifies the idle timeout for the selected route. The idle timeout
is defined as the period in which there are no bytes sent or received on
either the upstream or downstream connection. If not set, the default idle
timeout is 1 hour. If set to 0s, the timeout will be disabled.
Corresponds to the JSON property idleTimeout
2177 2178 2179 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2177 def idle_timeout @idle_timeout end |
#redirect ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteRedirect
The specification for redirecting traffic.
Corresponds to the JSON property redirect
2182 2183 2184 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2182 def redirect @redirect end |
#request_header_modifier ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteHeaderModifier
The specification for modifying HTTP header in HTTP request and HTTP response.
Corresponds to the JSON property requestHeaderModifier
2187 2188 2189 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2187 def request_header_modifier @request_header_modifier end |
#request_mirror_policy ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteRequestMirrorPolicy
Specifies the policy on how requests are shadowed to a separate mirrored
destination service. The proxy 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. Mirroring is currently not supported for
Cloud Run destinations.
Corresponds to the JSON property requestMirrorPolicy
2196 2197 2198 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2196 def request_mirror_policy @request_mirror_policy end |
#response_header_modifier ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteHeaderModifier
The specification for modifying HTTP header in HTTP request and HTTP response.
Corresponds to the JSON property responseHeaderModifier
2201 2202 2203 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2201 def response_header_modifier @response_header_modifier end |
#retry_policy ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteRetryPolicy
The specifications for retries.
Corresponds to the JSON property retryPolicy
2206 2207 2208 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2206 def retry_policy @retry_policy end |
#stateful_session_affinity ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteStatefulSessionAffinityPolicy
The specification for cookie-based stateful session affinity where the date
plane supplies a “session cookie” with the name "GSSA" which encodes a
specific destination host and each request containing that cookie will be
directed to that host as long as the destination host remains up and healthy.
The gRPC proxyless mesh library or sidecar proxy will manage the session
cookie but the client application code is responsible for copying the cookie
from each RPC in the session to the next.
Corresponds to the JSON property statefulSessionAffinity
2217 2218 2219 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2217 def stateful_session_affinity @stateful_session_affinity end |
#timeout ⇒ String
Specifies the timeout for selected route. Timeout is computed from the time
the request has been fully processed (i.e. end of stream) up until the
response has been completely processed. Timeout includes all retries.
Corresponds to the JSON property timeout
2224 2225 2226 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2224 def timeout @timeout end |
#url_rewrite ⇒ Google::Apis::NetworkservicesV1beta1::HttpRouteUrlRewrite
The specification for modifying the URL of the request, prior to forwarding
the request to the destination.
Corresponds to the JSON property urlRewrite
2230 2231 2232 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2230 def url_rewrite @url_rewrite end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2237 def update!(**args) @cors_policy = args[:cors_policy] if args.key?(:cors_policy) @destinations = args[:destinations] if args.key?(:destinations) @direct_response = args[:direct_response] if args.key?(:direct_response) @fault_injection_policy = args[:fault_injection_policy] if args.key?(:fault_injection_policy) @idle_timeout = args[:idle_timeout] if args.key?(:idle_timeout) @redirect = args[:redirect] if args.key?(:redirect) @request_header_modifier = args[:request_header_modifier] if args.key?(:request_header_modifier) @request_mirror_policy = args[:request_mirror_policy] if args.key?(:request_mirror_policy) @response_header_modifier = args[:response_header_modifier] if args.key?(:response_header_modifier) @retry_policy = args[:retry_policy] if args.key?(:retry_policy) @stateful_session_affinity = args[:stateful_session_affinity] if args.key?(:stateful_session_affinity) @timeout = args[:timeout] if args.key?(:timeout) @url_rewrite = args[:url_rewrite] if args.key?(:url_rewrite) end |