class SidekiqPublisher::Client

Public Instance Methods

bulk_push(items) click to toggle source
# File lib/sidekiq_publisher/client.rb, line 7
def bulk_push(items)
  payloads = items.map do |item|
    normed = normalize_item(item)
    process_single(item["class"], normed) || nil
  end.compact

  pushed = 0
  with_connection do |conn|
    conn.multi do
      payloads.each do |payload|
        atomic_push(conn, [payload])
        pushed += 1
      end
    end
  end

  pushed
end

Private Instance Methods

with_connection(&blk) click to toggle source
# File lib/sidekiq_publisher/client.rb, line 28
def with_connection(&blk)
  @redis_pool.with(&blk)
end