class Bio::Conduit::Process
Attributes
steps[R]
Public Class Methods
new(filename)
click to toggle source
# File lib/bio/conduit/process.rb, line 103 def initialize(filename) yaml = YAML::load(File.open(filename)) @steps = {} @name = yaml['pipeline'] @resources = yaml['resources'] @runninglist = [] yaml['steps'].each_pair do |name, detail| @resources[name] = "../#{name}" @steps[name] = Bio::Conduit::Step.new(name, detail, @resources) end end
Public Instance Methods
[](name)
click to toggle source
# File lib/bio/conduit/process.rb, line 115 def [](name) @steps[name] end
add_running_step(stepname)
click to toggle source
# File lib/bio/conduit/process.rb, line 119 def add_running_step(stepname) step = self[stepname] self.add_running_step(step.dependency) if step.dependence? if !@runninglist.include?(stepname) @runninglist.push(stepname) end end
run_steps(steps)
click to toggle source
# File lib/bio/conduit/process.rb, line 127 def run_steps(steps) @steps.keys.each do |name| self.add_running_step(name) if steps == nil || steps.include?(name) end combinestep = nil @runninglist.each do |stepname| if combinestep combinestep = combinestep + self[stepname] else combinestep = self[stepname] end end return combinestep end