Module: Procrastinator

Defined in:
lib/procrastinator.rb,
lib/procrastinator/version.rb,
lib/procrastinator/environment.rb,
lib/procrastinator/task_worker.rb,
lib/procrastinator/queue_worker.rb

Defined Under Namespace

Classes: Environment, MalformedPersisterError, MalformedTaskError, MalformedTaskPersisterError, QueueWorker, TaskExpiredError, TaskWorker

Constant Summary collapse

VERSION =
'0.2.1'

Class Method Summary collapse

Class Method Details

.setup(persister) {|env| ... } ⇒ Object

Yields:

  • (env)

Raises:

  • (ArgumentError)


8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/procrastinator.rb', line 8

def self.setup(persister, &block)
   raise ArgumentError.new('Procrastinator.setup must be given a block') if block.nil?

   env = Environment.new(persister)

   yield(env)

   raise RuntimeError.new('setup block did not define any queues') if env.queues.empty?

   env.spawn_workers

   env
end