Class: Sneakers::Laces::WorkerManager

Inherits:
Object
  • Object
show all
Defined in:
lib/sneakers/laces/worker_manager.rb

Instance Method Summary collapse

Constructor Details

#initialize(worker_classes = []) ⇒ WorkerManager

Returns a new instance of WorkerManager.



10
11
12
13
# File 'lib/sneakers/laces/worker_manager.rb', line 10

def initialize(worker_classes = [])
  @worker_classes = worker_classes
  configure_reload_worker
end

Instance Method Details

#workersObject



15
16
17
18
19
20
21
22
23
24
25
# File 'lib/sneakers/laces/worker_manager.rb', line 15

def workers
  workers = [ReloadWorker]

  worker_classes.map do |worker_class|
    grouped_queues.fetch(worker_class.worker_tag, []).map do |queue|
      workers << workers_by_queues[queue.name] ||= build_worker_class(worker_class, queue)
    end
  end

  workers
end