class BusinessFlow::Step::Inputs
Represents inputs needed to execute a step.
Attributes
inputs[R]
Public Class Methods
new(inputs)
click to toggle source
# File lib/business_flow/step.rb, line 9 def initialize(inputs) @inputs = inputs end
process_input(source, input_value)
click to toggle source
# File lib/business_flow/step.rb, line 23 def self.process_input(source, input_value) case input_value when Symbol source.send(input_value) when Proc source.instance_exec(&input_value) else input_value end end
Public Instance Methods
parameters_from_source(source)
click to toggle source
# File lib/business_flow/step.rb, line 13 def parameters_from_source(source) return source if inputs.blank? Hash[inputs.map do |input_name, input_value| [ input_name, Inputs.process_input(source, input_value) ] end] end