Class: Google::Apis::NetworkservicesV1beta1::LbTrafficExtension
- Inherits:
-
Object
- Object
- Google::Apis::NetworkservicesV1beta1::LbTrafficExtension
- 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
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::NetworkservicesV1beta1::ExtensionChain>
Required.
-
#forwarding_rules ⇒ Array<String>
Required.
-
#labels ⇒ Hash<String,String>
Optional.
-
#load_balancing_scheme ⇒ String
Required.
-
#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.
2076 2077 2078 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2076 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
2025 2026 2027 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2025 def create_time @create_time end |
#description ⇒ String
Optional. A human-readable description of the resource.
Corresponds to the JSON property description
2030 2031 2032 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2030 def description @description end |
#extension_chains ⇒ Array<Google::Apis::NetworkservicesV1beta1::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
2039 2040 2041 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2039 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
2046 2047 2048 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2046 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 following requirements.
Corresponds to the JSON property labels
2053 2054 2055 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2053 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
Choosing a load balancer.
Corresponds to the JSON property loadBalancingScheme
2062 2063 2064 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2062 def load_balancing_scheme @load_balancing_scheme end |
#name ⇒ String
Required. Name of the LbTrafficExtension resource in the following format:
projects/project/locations/location/lbTrafficExtensions/
lb_traffic_extension`.
Corresponds to the JSON propertyname`
2069 2070 2071 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2069 def name @name end |
#update_time ⇒ String
Output only. The timestamp when the resource was updated.
Corresponds to the JSON property updateTime
2074 2075 2076 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2074 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 2081 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) @name = args[:name] if args.key?(:name) @update_time = args[:update_time] if args.key?(:update_time) end |