Class: Google::Apis::ComputeAlpha::RoutePolicyPolicyTerm

Inherits:
Object
  • Object
show all
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

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RoutePolicyPolicyTerm

Returns a new instance of RoutePolicyPolicyTerm.



65101
65102
65103
# File 'lib/google/apis/compute_alpha/classes.rb', line 65101

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#actionsArray<Google::Apis::ComputeAlpha::Expr>

CEL expressions to evaluate to modify a route when this term matches. Corresponds to the JSON property actions



65067
65068
65069
# File 'lib/google/apis/compute_alpha/classes.rb', line 65067

def actions
  @actions
end

#matchGoogle::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



65093
65094
65095
# File 'lib/google/apis/compute_alpha/classes.rb', line 65093

def match
  @match
end

#priorityFixnum

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

Returns:

  • (Fixnum)


65099
65100
65101
# File 'lib/google/apis/compute_alpha/classes.rb', line 65099

def priority
  @priority
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



65106
65107
65108
65109
65110
# File 'lib/google/apis/compute_alpha/classes.rb', line 65106

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