class Transflow::FlowDSL
@api private
Attributes
container[R]
@api private
options[R]
@api private
step_map[R]
@api private
step_options[R]
@api private
Public Class Methods
new(options, &block)
click to toggle source
@api private
# File lib/transflow/flow_dsl.rb, line 20 def initialize(options, &block) @options = options @container = options.fetch(:container) @step_map = {} @step_options = {} instance_exec(&block) end
Public Instance Methods
call()
click to toggle source
@api private
# File lib/transflow/flow_dsl.rb, line 49 def call Transaction.new(step_map) end
monadic(value)
click to toggle source
@api public
# File lib/transflow/flow_dsl.rb, line 39 def monadic(value) step_options.update(monadic: value) end
publish(value)
click to toggle source
@api public
# File lib/transflow/flow_dsl.rb, line 44 def publish(value) step_options.update(publish: value) end
step(name, options = {}, &block)
click to toggle source
@api public
# File lib/transflow/flow_dsl.rb, line 34 def step(name, options = {}, &block) StepDSL.new(name, step_options.merge(options), container, step_map, &block).call end
steps(*names)
click to toggle source
@api public
# File lib/transflow/flow_dsl.rb, line 29 def steps(*names) names.reverse_each { |name| step(name) } end