Sha256: cf70d270cf428d42bb3e3e059c023d57b5f58ad68765c767432219706dc2eefd

Contents?: true

Size: 672 Bytes

Versions: 35

Compression:

Stored size: 672 Bytes

Contents

require 'routemaster/config'

module Routemaster
  module Jobs
    class Client
      extend Forwardable

      def_delegators :@backend, :enqueue

      def initialize(adapter = nil)
        @backend = build_backend(adapter)
      end

      private

      def build_backend(adapter)
        case Config.queue_adapter
        when :resque
          require 'routemaster/jobs/backends/resque'
          Backends::Resque.new(adapter)
        when :sidekiq
          require 'routemaster/jobs/backends/sidekiq'
          Backends::Sidekiq.new(adapter)
        else
          raise "Unsupported queue adapter '#{Config.queue_adapter}"
        end
      end
    end
  end
end

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
routemaster-drain-3.7.1 lib/routemaster/jobs/client.rb
routemaster-drain-3.7.0 lib/routemaster/jobs/client.rb
routemaster-drain-3.6.8 lib/routemaster/jobs/client.rb
routemaster-drain-3.6.7 lib/routemaster/jobs/client.rb
routemaster-drain-3.6.6 lib/routemaster/jobs/client.rb
routemaster-drain-3.6.5 lib/routemaster/jobs/client.rb
routemaster-drain-3.6.4 lib/routemaster/jobs/client.rb
routemaster-drain-3.6.3 lib/routemaster/jobs/client.rb
routemaster-drain-3.6.2 lib/routemaster/jobs/client.rb
routemaster-drain-3.6.1 lib/routemaster/jobs/client.rb
routemaster-drain-3.6.0 lib/routemaster/jobs/client.rb
routemaster-drain-3.5.1 lib/routemaster/jobs/client.rb
routemaster-drain-3.5.0 lib/routemaster/jobs/client.rb
routemaster-drain-3.4.0 lib/routemaster/jobs/client.rb
routemaster-drain-3.3.0 lib/routemaster/jobs/client.rb
routemaster-drain-3.2.0 lib/routemaster/jobs/client.rb
routemaster-drain-3.1.0 lib/routemaster/jobs/client.rb
routemaster-drain-3.0.3 lib/routemaster/jobs/client.rb
routemaster-drain-3.0.2 lib/routemaster/jobs/client.rb
routemaster-drain-3.0.1 lib/routemaster/jobs/client.rb