Module: Taskinator::Definition

Defined in:
lib/taskinator/definition.rb,
lib/taskinator/definition/builder.rb

Defined Under Namespace

Classes: Builder, UndefinedProcessError

Instance Method Summary collapse

Instance Method Details

#create_process(*args) ⇒ Object

creates an instance of the process NOTE: the supplied @args are serialized and ultimately passed to each method of the defined process



17
18
19
20
# File 'lib/taskinator/definition.rb', line 17

def create_process(*args)
  raise UndefinedProcessError unless respond_to?(:_create_process_)
  _create_process_(*args)
end

#define_process(&block) ⇒ Object

defines a process



6
7
8
9
10
11
12
13
# File 'lib/taskinator/definition.rb', line 6

def define_process(&block)
  define_singleton_method :_create_process_ do |*args|
    process = Process.define_sequential_process_for(self)
    Builder.new(process, self, args).instance_eval(&block)
    process.save
    process
  end
end