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>
Optional.
-
#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.
3078 3079 3080 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3078 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
3012 3013 3014 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3012 def create_time @create_time end |
#description ⇒ String
Optional. A human-readable description of the resource.
Corresponds to the JSON property description
3017 3018 3019 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3017 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
3026 3027 3028 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3026 def extension_chains @extension_chains end |
#forwarding_rules ⇒ Array<String>
Optional. A list of references to the forwarding rules to which this service
extension is attached. At least one forwarding rule is required. Only one
LbTrafficExtension resource can be associated with a forwarding rule.
Corresponds to the JSON property forwardingRules
3033 3034 3035 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3033 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
3040 3041 3042 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3040 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 and EXTERNAL_MANAGED. For more information, refer to
Backend services overview.
Corresponds to the JSON property loadBalancingScheme
3049 3050 3051 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3049 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 applies to all extensions
in all extensions chains in this resource. 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 must not be set if at least one of
the extension chains contains plugin extensions. Setting it results in a
validation error. You can set metadata at either the resource level or the
extension level. The extension level metadata is recommended because you can
pass a different set of metadata through each extension to the backend.
Corresponds to the JSON property metadata
3064 3065 3066 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3064 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 propertyname`
3071 3072 3073 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3071 def name @name end |
#update_time ⇒ String
Output only. The timestamp when the resource was updated.
Corresponds to the JSON property updateTime
3076 3077 3078 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3076 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 |
# File 'lib/google/apis/networkservices_v1/classes.rb', line 3083 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 |