Sha256: 82890613173697f0f7a13912c2d72102f614c629c69331d4b507ad85fd1b30e6

Contents?: true

Size: 689 Bytes

Versions: 3

Compression:

Stored size: 689 Bytes

Contents

module RabbitWQ
  module Worker

    def self.included( other_module )
      other_module.class_eval do
        %w(
          debug
          error
          fatal
          info
          warn
        ).each do |level|

          define_method level do |*messages|
            return unless RabbitWQ.logger
            messages.each do |message|
              RabbitWQ.work_logger.send level, self, message
            end
          end

        end
      end
    end

    def work( options={} )
      RabbitWQ::Work.enqueue( self, options )
      self
    end

    def with_logging
      info "BEGIN #{self.class.name}"
      yield
      info "END #{self.class.name}"
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rabbit-wq-1.0.0 lib/rabbit_wq/worker.rb
rabbit-wq-0.5.0 lib/rabbit_wq/worker.rb
rabbit-wq-0.4.0 lib/rabbit_wq/worker.rb