lib/wukong/driver.rb in wukong-3.0.0.pre3 vs lib/wukong/driver.rb in wukong-3.0.0
- old
+ new
@@ -1,14 +1,18 @@
module Wukong
module DriverMethods
+ attr_accessor :dataflow
+
+ attr_accessor :settings
+
def driver
@driver ||= Driver.new(dataflow)
end
def lookup(label)
- raise Wukong::Error.new("could not find definition for #{label}") unless Wukong.registry.registered?(label.to_sym)
+ raise Wukong::Error.new("could not find definition for <#{label}>") unless Wukong.registry.registered?(label.to_sym)
Wukong.registry.retrieve(label.to_sym)
end
def lookup_and_build(label, options = {})
lookup(label).build(options)
@@ -25,9 +29,15 @@
end
end
def setup_dataflow
dataflow.each(&:setup)
+ end
+
+ def finalize_dataflow
+ dataflow.each do |stage|
+ stage.finalize(&driver.advance(stage)) if stage.respond_to?(:finalize)
+ end
end
def finalize_and_stop_dataflow
dataflow.each do |stage|
stage.finalize(&driver.advance(stage)) if stage.respond_to?(:finalize)