Sha256: a2da3a7ce94294b2f5291729dc253b19134c7fb83dc0cdeee33e0510800f3fdb
Contents?: true
Size: 850 Bytes
Versions: 8
Compression:
Stored size: 850 Bytes
Contents
module Queuel module Base class Engine extend Introspect def self.inherited(klass) klass.class_eval do def queue_klass self.class.const_with_nesting "Queue" end end end def initialize(credentials = {}) self.credentials = credentials self.bucket_name = credentials[:bucket_name] self.memoized_queues = {} end def queue(which_queue) memoized_queues[which_queue.to_s] ||= queue_klass.new(client, which_queue) end private attr_accessor :credentials attr_accessor :bucket_name attr_accessor :memoized_queues def client @client ||= client_klass.new credentials end def client_klass raise NotImplementedError, "Must define a Queue class" end end end end
Version data entries
8 entries across 8 versions & 1 rubygems