Class: Google::Apis::ComputeAlpha::RoutePolicyPolicyTerm
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::RoutePolicyPolicyTerm
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Instance Attribute Summary collapse
-
#actions ⇒ Array<Google::Apis::ComputeAlpha::Expr>
CEL expressions to evaluate to modify a route when this term matches.
-
#match ⇒ Google::Apis::ComputeAlpha::Expr
Represents a textual expression in the Common Expression Language (CEL) syntax.
-
#priority ⇒ Fixnum
The evaluation priority for this term, which must be between 0 (inclusive) and 2^31 (exclusive), and unique within the list.
Instance Method Summary collapse
-
#initialize(**args) ⇒ RoutePolicyPolicyTerm
constructor
A new instance of RoutePolicyPolicyTerm.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ RoutePolicyPolicyTerm
Returns a new instance of RoutePolicyPolicyTerm.
65662 65663 65664 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 65662 def initialize(**args) update!(**args) end |
Instance Attribute Details
#actions ⇒ Array<Google::Apis::ComputeAlpha::Expr>
CEL expressions to evaluate to modify a route when this term matches.
Corresponds to the JSON property actions
65628 65629 65630 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 65628 def actions @actions end |
#match ⇒ Google::Apis::ComputeAlpha::Expr
Represents a textual expression in the Common Expression Language (CEL)
syntax. CEL is a C-like expression language. The syntax and semantics of CEL
are documented at https://github.com/google/cel-spec.
Example (Comparison):
title: "Summary size limit"
description: "Determines if a summary is less than 100 chars"
expression: "document.summary.size() < 100"
Example (Equality):
title: "Requestor is owner"
description: "Determines if requestor is the document owner"
expression: "document.owner == request.auth.claims.email"
Example (Logic):
title: "Public documents"
description: "Determine whether the document should be publicly visible"
expression: "document.type != 'private' && document.type != 'internal'"
Example (Data Manipulation):
title: "Notification string"
description: "Create a notification string with a timestamp."
expression: "'New message received at ' + string(document.create_time)"
The exact variables and functions that may be referenced within an expression
are determined by the service that evaluates it. See the service
documentation for additional information.
Corresponds to the JSON property match
65654 65655 65656 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 65654 def match @match end |
#priority ⇒ Fixnum
The evaluation priority for this term, which must be between 0
(inclusive) and 2^31 (exclusive), and unique within the list.
Corresponds to the JSON property priority
65660 65661 65662 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 65660 def priority @priority end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
65667 65668 65669 65670 65671 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 65667 def update!(**args) @actions = args[:actions] if args.key?(:actions) @match = args[:match] if args.key?(:match) @priority = args[:priority] if args.key?(:priority) end |