Class: Taskinator::Queues::DelayedJobAdapter

Inherits:
Object
  • Object
show all
Defined in:
lib/taskinator/queues/delayed_job.rb

Defined Under Namespace

Classes: JobWorker, ProcessWorker, TaskWorker

Instance Method Summary collapse

Constructor Details

#initialize(config = {}) ⇒ DelayedJobAdapter

Returns a new instance of DelayedJobAdapter.



11
12
13
14
15
16
17
# File 'lib/taskinator/queues/delayed_job.rb', line 11

def initialize(config={})
  @config = {
    :process_queue => :default,
    :task_queue => :default,
    :job_queue => :default,
  }.merge(config)
end

Instance Method Details

#enqueue_job(job) ⇒ Object



27
28
29
30
# File 'lib/taskinator/queues/delayed_job.rb', line 27

def enqueue_job(job)
  # delayed jobs don't define the queue so use the configured queue instead
  ::Delayed::Job.enqueue JobWorker.new(job.uuid), :queue => @config[:job_queue]
end

#enqueue_process(process) ⇒ Object



19
20
21
# File 'lib/taskinator/queues/delayed_job.rb', line 19

def enqueue_process(process)
  ::Delayed::Job.enqueue ProcessWorker.new(process.uuid), :queue => @config[:process_queue]
end

#enqueue_task(task) ⇒ Object



23
24
25
# File 'lib/taskinator/queues/delayed_job.rb', line 23

def enqueue_task(task)
  ::Delayed::Job.enqueue TaskWorker.new(task.uuid), :queue => @config[:task_queue]
end