Module: RabbitWQ::Worker

Defined in:
lib/rabbit_wq/worker.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(other_module) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/rabbit_wq/worker.rb', line 4

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.work_logger

        messages.each do |message|
          RabbitWQ.work_logger.send level, self, message
        end
      end

    end
  end
end

Instance Method Details

#enabled?Boolean

Returns:

  • (Boolean)


37
38
39
# File 'lib/rabbit_wq/worker.rb', line 37

def enabled?
  true
end

#error_on_disabled?Boolean

When true, will place the worker in error queue

Returns:

  • (Boolean)


47
48
49
# File 'lib/rabbit_wq/worker.rb', line 47

def error_on_disabled?
  false
end

#final_error(msg, level = :error) ⇒ Object

Raises:



41
42
43
# File 'lib/rabbit_wq/worker.rb', line 41

def final_error( msg, level=:error )
  raise RabbitWQ::FinalError.new( level ), msg
end

#with_loggingObject



31
32
33
34
35
# File 'lib/rabbit_wq/worker.rb', line 31

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

#work(options = {}) ⇒ Object



26
27
28
29
# File 'lib/rabbit_wq/worker.rb', line 26

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