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.
62020 62021 62022 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62020 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
61986 61987 61988 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 61986 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
62012 62013 62014 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62012 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
62018 62019 62020 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62018 def priority @priority end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
62025 62026 62027 62028 62029 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62025 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 |