Sha256: a62560a6fc73222f581fa58d1cbd3d52bcda70f19d86cfc1b578c4ff124b3568
Contents?: true
Size: 496 Bytes
Versions: 31
Compression:
Stored size: 496 Bytes
Contents
require 'routemaster/jobs' module Routemaster module Jobs class Job class << self def data_for(job_class, args) { 'class' => job_class.to_s, 'args' => args } end def execute(job_data) job = create_job(job_data) job.new.perform(*job_data['args']) end private def create_job(job_data) job_class = job_data['class'] Kernel.const_get(job_class) end end end end end
Version data entries
31 entries across 31 versions & 1 rubygems