Class: Google::Apis::NetworkservicesV1beta1::GrpcRouteRouteAction

Inherits:
Object
  • Object
show all
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

Specifies how to route matched traffic.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GrpcRouteRouteAction

Returns a new instance of GrpcRouteRouteAction.



815
816
817
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 815

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#destinationsArray<Google::Apis::NetworkservicesV1beta1::GrpcRouteDestination>

Optional. The destination services to which traffic should be forwarded. If multiple destinations are specified, traffic will be split between Backend Service(s) according to the weight field of these destinations. Corresponds to the JSON property destinations



791
792
793
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 791

def destinations
  @destinations
end

#fault_injection_policyGoogle::Apis::NetworkservicesV1beta1::GrpcRouteFaultInjectionPolicy

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 on a percentage of requests before sending those requests to the destination service. Similarly requests from clients can be aborted by for a percentage of requests. Corresponds to the JSON property faultInjectionPolicy



801
802
803
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 801

def fault_injection_policy
  @fault_injection_policy
end

#retry_policyGoogle::Apis::NetworkservicesV1beta1::GrpcRouteRetryPolicy

The specifications for retries. Corresponds to the JSON property retryPolicy



806
807
808
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 806

def retry_policy
  @retry_policy
end

#timeoutString

Optional. 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

Returns:

  • (String)


813
814
815
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 813

def timeout
  @timeout
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



820
821
822
823
824
825
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 820

def update!(**args)
  @destinations = args[:destinations] if args.key?(:destinations)
  @fault_injection_policy = args[:fault_injection_policy] if args.key?(:fault_injection_policy)
  @retry_policy = args[:retry_policy] if args.key?(:retry_policy)
  @timeout = args[:timeout] if args.key?(:timeout)
end