class Kuroko2::Workflow::Task::ParallelFork
Public Instance Methods
validate()
click to toggle source
Calls superclass method
Kuroko2::Workflow::Task::Fork#validate
# File lib/autoload/kuroko2/workflow/task/parallel_fork.rb, line 5 def validate super raise Workflow::AssertionError, "ParallelFork must have a parallel size (Int)" unless option.present? && option.match(/\A\d+\z/) end
Private Instance Methods
extract_child_nodes()
click to toggle source
# File lib/autoload/kuroko2/workflow/task/parallel_fork.rb, line 16 def extract_child_nodes parallel_size.times.each do |index| parallel_root = Node.new(:sequence) node.children.each { |child| parallel_root.append_child(child) } create_child_token( child_node: parallel_root, env: { "KUROKO2_PARALLEL_FORK_SIZE" => parallel_size.to_s, "KUROKO2_PARALLEL_FORK_INDEX" => index.to_s, } ) end end
parallel_size()
click to toggle source
# File lib/autoload/kuroko2/workflow/task/parallel_fork.rb, line 12 def parallel_size option.to_i end