Module: Procedure::Organizer::ClassMethods

Defined in:
lib/procedure/organizer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#step_classesObject

Returns the value of attribute step_classes.



9
10
11
# File 'lib/procedure/organizer.rb', line 9

def step_classes
  @step_classes
end

Instance Method Details

#call(context = {}) ⇒ Object



15
16
17
18
19
20
21
22
# File 'lib/procedure/organizer.rb', line 15

def call(context = {})
  params = { execution_time: Time.now }.merge(context)
  fake_open_struct = Struct.new(*params.keys).new(*params.values)

  Procedure::Process.new(fake_open_struct, @step_classes).tap do |process|
    process.call
  end
end

#steps(*step_classes) ⇒ Object



11
12
13
# File 'lib/procedure/organizer.rb', line 11

def steps(*step_classes)
  @step_classes = step_classes
end