Sha256: 212a49e54059cc52e976b07d1912d69ee94f9373151bad23e2c0507a59762832

Contents?: true

Size: 761 Bytes

Versions: 25

Compression:

Stored size: 761 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
          ActiveFedora::Base.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

25 entries across 25 versions & 2 rubygems

Version Path
sufia-5.0.0 sufia-models/lib/sufia/models/resque.rb
sufia-models-5.0.0 lib/sufia/models/resque.rb
sufia-6.0.0.rc3 sufia-models/lib/sufia/models/resque.rb
sufia-models-6.0.0.rc3 lib/sufia/models/resque.rb
sufia-5.0.0.rc1 sufia-models/lib/sufia/models/resque.rb
sufia-models-5.0.0.rc1 lib/sufia/models/resque.rb
sufia-6.0.0.rc2 sufia-models/lib/sufia/models/resque.rb
sufia-models-6.0.0.rc2 lib/sufia/models/resque.rb
sufia-6.0.0.rc1 sufia-models/lib/sufia/models/resque.rb
sufia-models-6.0.0.rc1 lib/sufia/models/resque.rb
sufia-4.3.1 sufia-models/lib/sufia/models/resque.rb
sufia-models-4.3.1 lib/sufia/models/resque.rb
sufia-6.0.0.beta1 sufia-models/lib/sufia/models/resque.rb
sufia-models-6.0.0.beta1 lib/sufia/models/resque.rb
sufia-models-5.0.0.beta1 lib/sufia/models/resque.rb
sufia-4.2.0 sufia-models/lib/sufia/models/resque.rb
sufia-models-4.2.0 lib/sufia/models/resque.rb
sufia-4.1.0 sufia-models/lib/sufia/models/resque.rb
sufia-models-4.1.0 lib/sufia/models/resque.rb
sufia-4.0.1 sufia-models/lib/sufia/models/resque.rb