module Related::DataFlow
Public Instance Methods
clear_data_flows()
click to toggle source
# File lib/related/data_flow.rb, line 14 def clear_data_flows @data_flows = {} end
data_flow(name, steps)
click to toggle source
# File lib/related/data_flow.rb, line 4 def data_flow(name, steps) @data_flows ||= {} @data_flows[name.to_sym] ||= [] @data_flows[name.to_sym] << steps end
data_flows()
click to toggle source
# File lib/related/data_flow.rb, line 10 def data_flows @data_flows end
execute_data_flow(name_or_flow, data)
click to toggle source
# File lib/related/data_flow.rb, line 18 def execute_data_flow(name_or_flow, data) @data_flows ||= {} if name_or_flow.is_a?(Hash) enqueue_flow(name_or_flow, data) else flows = @data_flows[name_or_flow.to_sym] || [] flows.each do |flow| enqueue_flow(flow, data) end end end
Protected Instance Methods
enqueue_flow(flow, data)
click to toggle source
# File lib/related/data_flow.rb, line 46 def enqueue_flow(flow, data) if defined?(Resque) Resque.enqueue(DataFlowJob, flow, data) else DataFlowJob.perform(JSON.parse(flow.to_json), JSON.parse(data.to_json)) end end