Sha256: 093f1d67e787150e0426a881e67c5a65e680b6b96587cefad7e797c3d2d95715

Contents?: true

Size: 537 Bytes

Versions: 3

Compression:

Stored size: 537 Bytes

Contents

module SuckerPunch
  module Job
    def self.included(base)
      base.send(:include, ::Celluloid)
      base.extend(ClassMethods)

      base.class_eval do
        @workers = SuckerPunch::Queue::DEFAULT_OPTIONS[:workers]

        def self.new
          define_celluloid_pool(self, @workers)
        end
      end
    end

    module ClassMethods
      def workers(num)
        @workers = num
      end

      def define_celluloid_pool(klass, workers)
        SuckerPunch::Queue.new(klass).register(workers)
      end
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
sucker_punch-1.0.0 lib/sucker_punch/job.rb
sucker_punch-1.0.0.beta3 lib/sucker_punch/job.rb
sucker_punch-1.0.0.beta2 lib/sucker_punch/job.rb