Class: Google::Apis::NetworkservicesV1::LbTrafficExtension
- Inherits:
-
Object
- Object
- Google::Apis::NetworkservicesV1::LbTrafficExtension
- 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
LbTrafficExtension
is a resource that lets the extension service modify the
headers and payloads of both requests and responses without impacting the
choice of backend services or any other security policies associated with the
backend service.
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) ⇒ LbTrafficExtension
constructor
A new instance of LbTrafficExtension.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ LbTrafficExtension
Returns a new instance of LbTrafficExtension.
2316 2317 2318 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2316 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
2255 2256 2257 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2255 def create_time @create_time end |
#description ⇒ String
Optional. A human-readable description of the resource.
Corresponds to the JSON property description
2260 2261 2262 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2260 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
2269 2270 2271 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2269 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 LBTrafficExtension
resource per forwarding rule.
Corresponds to the JSON property forwardingRules
2276 2277 2278 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2276 def forwarding_rules @forwarding_rules end |
#labels ⇒ Hash<String,String>
Optional. Set of labels associated with the LbTrafficExtension
resource. The
format must comply with the requirements for labels for Google Cloud resources.
Corresponds to the JSON property labels
2283 2284 2285 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2283 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
2292 2293 2294 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2292 def load_balancing_scheme @load_balancing_scheme end |
#metadata ⇒ Hash<String,Object>
Optional. The metadata provided here is included in the ProcessingRequest.
metadata_context.filter_metadata
map field. The metadata is available under
the key com.google.lb_traffic_extension.
. The following variables are
supported in the metadata: 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
2302 2303 2304 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2302 def @metadata end |
#name ⇒ String
Required. Identifier. Name of the LbTrafficExtension
resource in the
following format: projects/
project/locations/
location/lbTrafficExtensions/
lb_traffic_extension`.
Corresponds to the JSON property
name`
2309 2310 2311 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2309 def name @name end |
#update_time ⇒ String
Output only. The timestamp when the resource was updated.
Corresponds to the JSON property updateTime
2314 2315 2316 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2314 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 2321 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 |