lib/chronicle/etl/job.rb in chronicle-etl-0.2.3 vs lib/chronicle/etl/job.rb in chronicle-etl-0.2.4

- old
+ new

@@ -22,26 +22,31 @@ @transformer_options = definition[:transformer][:options] || {} @loader_klass = load_klass(:loader, definition[:loader][:name]) @loader_options = definition[:loader][:options] || {} - set_continuation + set_continuation if load_continuation? yield self if block_given? end def instantiate_extractor instantiate_klass(:extractor) end - def instantiate_transformer data + def instantiate_transformer(data) instantiate_klass(:transformer, data) end def instantiate_loader instantiate_klass(:loader) end + def save_log? + # TODO: this needs more nuance + return !id.nil? + end + private def instantiate_klass(phase, *args) options = self.send("#{phase.to_s}_options") args = args.unshift(options) @@ -54,9 +59,13 @@ end def set_continuation continuation = Chronicle::ETL::JobLogger.load_latest(@job_id) @extractor_options[:continuation] = continuation + end + + def load_continuation? + save_log? end end end end