Class: Google::Apis::NetworkservicesV1::LbRouteExtension
- Inherits:
-
Object
- Object
- Google::Apis::NetworkservicesV1::LbRouteExtension
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/networkservices_v1/classes.rb,
lib/google/apis/networkservices_v1/representations.rb,
lib/google/apis/networkservices_v1/representations.rb
Overview
LbRouteExtension
is a resource that lets you control where traffic is routed
to for a given request.
Instance Attribute Summary collapse
-
#create_time ⇒ String
Output only.
-
#description ⇒ String
Optional.
-
#extension_chains ⇒ Array<Google::Apis::NetworkservicesV1::ExtensionChain>
Required.
-
#forwarding_rules ⇒ Array<String>
Required.
-
#labels ⇒ Hash<String,String>
Optional.
-
#load_balancing_scheme ⇒ String
Required.
-
#metadata ⇒ Hash<String,Object>
Optional.
-
#name ⇒ String
Required.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ LbRouteExtension
constructor
A new instance of LbRouteExtension.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ LbRouteExtension
Returns a new instance of LbRouteExtension.
2227 2228 2229 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2227 def initialize(**args) update!(**args) end |
Instance Attribute Details
#create_time ⇒ String
Output only. The timestamp when the resource was created.
Corresponds to the JSON property createTime
2165 2166 2167 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2165 def create_time @create_time end |
#description ⇒ String
Optional. A human-readable description of the resource.
Corresponds to the JSON property description
2170 2171 2172 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2170 def description @description end |
#extension_chains ⇒ Array<Google::Apis::NetworkservicesV1::ExtensionChain>
Required. A set of ordered extension chains that contain the match conditions
and extensions to execute. Match conditions for each extension chain are
evaluated in sequence for a given request. The first extension chain that has
a condition that matches the request is executed. Any subsequent extension
chains do not execute. Limited to 5 extension chains per resource.
Corresponds to the JSON property extensionChains
2179 2180 2181 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2179 def extension_chains @extension_chains end |
#forwarding_rules ⇒ Array<String>
Required. A list of references to the forwarding rules to which this service
extension is attached to. At least one forwarding rule is required. There can
be only one LbRouteExtension
resource per forwarding rule.
Corresponds to the JSON property forwardingRules
2186 2187 2188 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2186 def forwarding_rules @forwarding_rules end |
#labels ⇒ Hash<String,String>
Optional. Set of labels associated with the LbRouteExtension
resource. The
format must comply with the requirements for labels for Google Cloud resources.
Corresponds to the JSON property labels
2193 2194 2195 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2193 def labels @labels end |
#load_balancing_scheme ⇒ String
Required. All backend services and forwarding rules referenced by this
extension must share the same load balancing scheme. Supported values:
INTERNAL_MANAGED
, EXTERNAL_MANAGED
. For more information, refer to Backend
services overview.
Corresponds to the JSON property loadBalancingScheme
2202 2203 2204 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2202 def load_balancing_scheme @load_balancing_scheme end |
#metadata ⇒ Hash<String,Object>
Optional. The metadata provided here is included as part of the
metadata_context
(of type google.protobuf.Struct
) in the ProcessingRequest
message sent to the extension server. The metadata is available under the
namespace com.google.lb_route_extension.
. The following variables are
supported in the metadata Struct: forwarding_rule_id
- substituted with
the forwarding rule's fully qualified resource name. This field is not
supported for plugin extensions and must not be set.
Corresponds to the JSON property metadata
2213 2214 2215 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2213 def @metadata end |
#name ⇒ String
Required. Identifier. Name of the LbRouteExtension
resource in the following
format: projects/
project/locations/
location/lbRouteExtensions/
lb_route_extension`.
Corresponds to the JSON property
name`
2220 2221 2222 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2220 def name @name end |
#update_time ⇒ String
Output only. The timestamp when the resource was updated.
Corresponds to the JSON property updateTime
2225 2226 2227 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2225 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2232 def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @description = args[:description] if args.key?(:description) @extension_chains = args[:extension_chains] if args.key?(:extension_chains) @forwarding_rules = args[:forwarding_rules] if args.key?(:forwarding_rules) @labels = args[:labels] if args.key?(:labels) @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme) @metadata = args[:metadata] if args.key?(:metadata) @name = args[:name] if args.key?(:name) @update_time = args[:update_time] if args.key?(:update_time) end |