Class Ruote::FlowExpressionId
In: lib/ruote/fei.rb
Parent: Object

The FlowExpressionId (fei for short) is an process expression identifier. Each expression when instantiated gets a unique fei.

Feis are also used in workitems, where the fei is the fei of the

participant
expression that emitted the workitem.

Feis can thus indicate the position of a workitem in a process tree.

Feis contain four pieces of information :

  • wfid : workflow instance id, the identifier for the process instance
  • subid : a unique identifier for expressions (useful in loops)
  • expid : the expression id, where in the process tree
  • engine_id : only relevant in multi engine scenarii (defaults to ‘engine’)

Methods

<=>   ==   child_id   child_id   direct_child?   engine_id   eql?   expid   extract   extract_h   from_id   hash   mnemo_id   new   short_sid   sid   sub_wfid   subid   to_h   to_sortable_id   to_storage_id   to_storage_id   wfid  

Constants

CHILD_SEP = '_'

Attributes

h  [R] 

Public Class methods

Returns child_id… For an expid of ‘0_1_4’, this will be 4.

Returns true if other_fei is the fei of a child expression of parent_fei.

Attempts at extracting a FlowExpressionId from the given argument (workitem, string, …)

Uses .extract_h

Attempts at extracting a FlowExpressionId (as a Hash instance) from the given argument (workitem, string, …)

Turns the result of to_storage_id back to a FlowExpressionId instance.

Public Instance methods

For proper hashing and sorting.

Returns true if the other is a FlowExpressionId instance and it points to the same expression as this one.

Returns the last number in the expid. For instance, if the expid is ‘0_5_7’, the child_id will be ‘7’.

eql?(other)

Alias for #==

For proper hashing and sorting.

Returns a rufus-mnemo version of the first 9 hexdigits in the subid.

expid!subid[0, 5]!wfid

sid()

Alias for to_storage_id

sub_wfid()

Alias for subid

[Validate]