Class: Tengine::Job::End

Inherits:
Vertex
  • Object
show all
Defined in:
lib/tengine/job/end.rb

Overview

ジョブネットの終端を表すVertex。特に状態は持たない。

Instance Method Summary collapse

Instance Method Details

#activate(signal) ⇒ Object



12
13
14
15
16
17
18
19
20
21
# File 'lib/tengine/job/end.rb', line 12

def activate(signal)
  complete_origin_edge(signal, :except_closed => true)
  parent = self.parent # Endのparentであるジョブネット
  parent_finally = parent.finally_vertex
  if parent_finally && (parent.phase_key != :dying)
    parent_finally.transmit(signal)
  else
    parent.finish(signal) unless parent.phase_key == :stuck
  end
end

#reset(signal) ⇒ Object



23
24
25
26
27
28
29
30
# File 'lib/tengine/job/end.rb', line 23

def reset(signal)
  parent = self.parent # Endのparentであるジョブネット
  if signal.execution.in_scope?(parent)
    if f = parent.finally_vertex
      f.reset(signal)
    end
  end
end

#transmit(signal) ⇒ Object



8
9
10
# File 'lib/tengine/job/end.rb', line 8

def transmit(signal)
  activate(signal)
end