Sha256: 0d8422c46bb2930301229ff5dffd2753ba8ba02a9c5d8300cd8d0adaec644b43

Contents?: true

Size: 475 Bytes

Versions: 3

Compression:

Stored size: 475 Bytes

Contents

module Resugan
  module Worker
    class ParallelQueueDispatcher
      def redis
        @redis ||= Redis.new
      end

      def redis=(redis)
        @redis = redis
      end

      def dispatch(namespace, events)
        @queues ||= {}
        @queues[namespace] ||= ParallelQueue.new(redis, 'resugan_queue-' + namespace)
        events.each do |k, v|
          @queues[namespace].enqueue('default', { event: k, args: v }.to_json)
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
resugan-worker-0.1.2 lib/resugan/worker/parallel_queue_dispatcher.rb
resugan-worker-0.1.1 lib/resugan/worker/parallel_queue_dispatcher.rb
resugan-worker-0.1.0 lib/resugan/worker/parallel_queue_dispatcher.rb