Class: DatWorkerPool::Worker::TestHelpers::TestRunner
- Inherits:
-
Object
- Object
- DatWorkerPool::Worker::TestHelpers::TestRunner
- Defined in:
- lib/dat-worker-pool/worker.rb
Instance Attribute Summary collapse
-
#dwp_runner ⇒ Object
readonly
Returns the value of attribute dwp_runner.
-
#queue ⇒ Object
readonly
Returns the value of attribute queue.
-
#worker ⇒ Object
readonly
Returns the value of attribute worker.
-
#worker_class ⇒ Object
readonly
Returns the value of attribute worker_class.
Instance Method Summary collapse
- #error(exception, work_item = nil) ⇒ Object
-
#initialize(worker_class, options = nil) ⇒ TestRunner
constructor
A new instance of TestRunner.
- #make_available ⇒ Object
- #make_unavailable ⇒ Object
- #run(work_item) ⇒ Object
- #shutdown ⇒ Object
- #start ⇒ Object
- #work(work_item) ⇒ Object
Constructor Details
#initialize(worker_class, options = nil) ⇒ TestRunner
Returns a new instance of TestRunner.
210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 |
# File 'lib/dat-worker-pool/worker.rb', line 210 def initialize(worker_class, = nil) @worker_class = worker_class @queue = [:queue] || begin require 'dat-worker-pool/default_queue' DatWorkerPool::DefaultQueue.new end @dwp_runner = DatWorkerPool::Runner.new({ :num_workers => MIN_WORKERS, :logger => [:logger], :queue => @queue, :worker_class => @worker_class, :worker_params => [:params] }) @worker = worker_class.new(@dwp_runner, @queue, 1) end |
Instance Attribute Details
#dwp_runner ⇒ Object (readonly)
Returns the value of attribute dwp_runner.
208 209 210 |
# File 'lib/dat-worker-pool/worker.rb', line 208 def dwp_runner @dwp_runner end |
#queue ⇒ Object (readonly)
Returns the value of attribute queue.
208 209 210 |
# File 'lib/dat-worker-pool/worker.rb', line 208 def queue @queue end |
#worker ⇒ Object (readonly)
Returns the value of attribute worker.
207 208 209 |
# File 'lib/dat-worker-pool/worker.rb', line 207 def worker @worker end |
#worker_class ⇒ Object (readonly)
Returns the value of attribute worker_class.
207 208 209 |
# File 'lib/dat-worker-pool/worker.rb', line 207 def worker_class @worker_class end |
Instance Method Details
#error(exception, work_item = nil) ⇒ Object
241 242 243 |
# File 'lib/dat-worker-pool/worker.rb', line 241 def error(exception, work_item = nil) run_callback('on_error', self.worker, exception, work_item) end |
#make_available ⇒ Object
257 258 259 |
# File 'lib/dat-worker-pool/worker.rb', line 257 def make_available self.worker.instance_eval{ dwp_make_available } end |
#make_unavailable ⇒ Object
253 254 255 |
# File 'lib/dat-worker-pool/worker.rb', line 253 def make_unavailable self.worker.instance_eval{ dwp_make_unavailable } end |
#run(work_item) ⇒ Object
229 230 231 232 233 234 235 |
# File 'lib/dat-worker-pool/worker.rb', line 229 def run(work_item) self.start self.make_unavailable self.work(work_item) self.make_available self.shutdown end |
#shutdown ⇒ Object
249 250 251 |
# File 'lib/dat-worker-pool/worker.rb', line 249 def shutdown run_callback('on_shutdown', self.worker) end |
#start ⇒ Object
245 246 247 |
# File 'lib/dat-worker-pool/worker.rb', line 245 def start run_callback('on_start', self.worker) end |
#work(work_item) ⇒ Object
237 238 239 |
# File 'lib/dat-worker-pool/worker.rb', line 237 def work(work_item) self.worker.instance_eval{ dwp_work(work_item) } end |