Sha256: dca7e25dd4a742d8afea48ec9eb9f11b87a949c767381bbfaaf62afd572c7f13

Contents?: true

Size: 742 Bytes

Versions: 55

Compression:

Stored size: 742 Bytes

Contents

# Borrowed from:
# https://github.com/jeremy/resque-rails/blob/master/lib/resque/rails/queue.rb
module Sufia
  module Resque
    class Queue
      attr_reader :default_queue_name

      def initialize(default_queue_name)
        @default_queue_name = default_queue_name
      end

      def push(job)
        queue = job.respond_to?(:queue_name) ? job.queue_name : default_queue_name
        begin
          ::Resque.enqueue_to queue, MarshaledJob, Base64.encode64(Marshal.dump(job))
        rescue Redis::CannotConnectError
          logger.error "Redis is down!"
        end
      end
    end

    class MarshaledJob
      def self.perform(marshaled_job)
        Marshal.load(Base64.decode64(marshaled_job)).run
      end
    end
  end
end

Version data entries

55 entries across 55 versions & 2 rubygems

Version Path
sufia-4.0.0.rc1 sufia-models/lib/sufia/models/resque.rb
sufia-models-4.0.0.rc1 lib/sufia/models/resque.rb
sufia-4.0.0.beta4 sufia-models/lib/sufia/models/resque.rb
sufia-models-4.0.0.beta4 lib/sufia/models/resque.rb
sufia-models-4.0.0.beta3 lib/sufia/models/resque.rb
sufia-4.0.0.beta3 sufia-models/lib/sufia/models/resque.rb
sufia-4.0.0.beta2 sufia-models/lib/sufia/models/resque.rb
sufia-models-4.0.0.beta2 lib/sufia/models/resque.rb
sufia-4.0.0.beta1 sufia-models/lib/sufia/models/resque.rb
sufia-models-4.0.0.beta1 lib/sufia/models/resque.rb
sufia-models-3.7.2 lib/sufia/models/resque.rb
sufia-3.7.2 sufia-models/lib/sufia/models/resque.rb
sufia-models-3.7.1 lib/sufia/models/resque.rb
sufia-3.7.1 sufia-models/lib/sufia/models/resque.rb
sufia-models-3.7.0 lib/sufia/models/resque.rb
sufia-3.7.0 sufia-models/lib/sufia/models/resque.rb
sufia-3.6.1 sufia-models/lib/sufia/models/resque.rb
sufia-models-3.6.1 lib/sufia/models/resque.rb
sufia-3.6.0 sufia-models/lib/sufia/models/resque.rb
sufia-models-3.6.0 lib/sufia/models/resque.rb