lib/refinery/queueable.rb in refinery-0.9.12 vs lib/refinery/queueable.rb in refinery-0.9.13
- old
+ new
@@ -1,10 +1,22 @@
module Refinery #:nodoc:
# Mix this module in to classes that want to access a queue.
module Queueable
+ include Loggable
+ include Configurable
# Get a named queue
def queue(name)
queue_provider.queue(name)
+ end
+
+ def with_queue(name, &block)
+ begin
+ yield queue(name)
+ rescue Exception => e
+ logger.error "Queue error: #{e.message}"
+ sleep(5)
+ retry
+ end
end
protected
# Get the queue provider. Defaults to RightAws::SqsGen2 running
# in multi-thread mode.
\ No newline at end of file