Class: BarbequeClient::Executor

Inherits:
Object
  • Object
show all
Defined in:
lib/barbeque_client/executor.rb

Instance Method Summary collapse

Constructor Details

#initialize(job:, message:, message_id:, queue_name:) ⇒ Executor

Returns a new instance of Executor.

Parameters:

  • job (String)
    • Job class name

  • message (String)
    • JSON-serialized object

  • message_id (String)
    • SQS mesasge_id

  • queue_name (String)
    • barbeque’s job_queues.name



9
10
11
12
13
14
# File 'lib/barbeque_client/executor.rb', line 9

def initialize(job:, message:, message_id:, queue_name:)
  @job        = job
  @message    = JSON.load(message)
  @message_id = message_id
  @queue_name = queue_name
end

Instance Method Details

#runObject



16
17
18
19
20
21
22
23
# File 'lib/barbeque_client/executor.rb', line 16

def run
  ActiveJob::Base.execute(
    'job_class'  => @job,
    'job_id'     => @message_id,
    'queue_name' => @queue_name,
    'arguments'  => @message,
  )
end