class DatWorkerPool::Worker::TestHelpers::TestRunner
Attributes
dwp_runner[R]
queue[R]
worker[R]
worker_class[R]
Public Class Methods
new(worker_class, options = nil)
click to toggle source
# File lib/dat-worker-pool/worker.rb, line 223 def initialize(worker_class, options = nil) @worker_class = worker_class @queue = options[:queue] || begin require 'dat-worker-pool/default_queue' DatWorkerPool::DefaultQueue.new end @dwp_runner = DatWorkerPool::Runner.new({ :num_workers => MIN_WORKERS, :logger => options[:logger], :queue => @queue, :worker_class => @worker_class, :worker_params => options[:params] }) @worker = worker_class.new(@dwp_runner, @queue, 1) end
Public Instance Methods
error(exception, work_item = nil)
click to toggle source
# File lib/dat-worker-pool/worker.rb, line 254 def error(exception, work_item = nil) run_callback('on_error', self.worker, exception, work_item) end
make_available()
click to toggle source
# File lib/dat-worker-pool/worker.rb, line 270 def make_available self.worker.instance_eval{ dwp_make_available } end
run(work_item)
click to toggle source
# File lib/dat-worker-pool/worker.rb, line 242 def run(work_item) self.start self.make_unavailable self.work(work_item) self.make_available self.shutdown end
shutdown()
click to toggle source
# File lib/dat-worker-pool/worker.rb, line 262 def shutdown run_callback('on_shutdown', self.worker) end
start()
click to toggle source
# File lib/dat-worker-pool/worker.rb, line 258 def start run_callback('on_start', self.worker) end
work(work_item)
click to toggle source
# File lib/dat-worker-pool/worker.rb, line 250 def work(work_item) self.worker.instance_eval{ dwp_work(work_item) } end
Private Instance Methods
run_callback(callback, worker, *args)
click to toggle source
# File lib/dat-worker-pool/worker.rb, line 276 def run_callback(callback, worker, *args) self.worker.instance_eval{ dwp_run_callback(callback, *args) } end