Sha256: 99081d6d53139a1c82c571039e9399d353d6ac90cc158403a532c99ff26ca50e

Contents?: true

Size: 472 Bytes

Versions: 5

Compression:

Stored size: 472 Bytes

Contents

require 'unique_job/util'

module UniqueJob
  class ClientMiddleware
    include Util

    def call(worker_str, job, queue, redis_pool, &block)
      if job.has_key?('at')
        # perform_in or perform_at
        yield
      else
        if worker_str.class == String
          worker = worker_str.constantize.new # Sidekiq < 6
        else
          worker = worker_str.new
        end
        perform_if_unique(worker, job['args'], &block)
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
unique_job-0.3.1.pre lib/unique_job/client_middleware.rb
unique_job-0.3.0.pre lib/unique_job/client_middleware.rb
unique_job-0.2.1 lib/unique_job/client_middleware.rb
unique_job-0.2.0 lib/unique_job/client_middleware.rb
unique_job-0.1.0 lib/unique_job/client_middleware.rb