module Q
Constants
- DEFAULT_QUEUE
- FALSEY_HASH
- Method
- VERSION
Public Class Methods
env()
click to toggle source
# File lib/q.rb, line 28 def self.env name = queue.to_s.split("::").last @env ||= Q.underscore(name) OpenStruct.new(FALSEY_HASH.merge("#{@env}?" => true)) end
module_from_klass_name(name)
click to toggle source
# File lib/q.rb, line 40 def self.module_from_klass_name(name) unless defined?(Q::Methods.const_get(name)) require "q/methods/#{name}" end return Q::Methods.const_get(name) rescue LoadError => e raise LoadError, "Could not find queue: #{name}, expected to be defined in q/methods/#{name}\n" + e.message rescue NameError => e raise NameError, "Could not load queue: #{name}, expected to be defined in q/methods/#{name}\n" + e.message end
module_from_queue_name(queue_name)
click to toggle source
# File lib/q.rb, line 51 def self.module_from_queue_name(queue_name) module_from_klass_name(camelize(queue_name)) end
queue()
click to toggle source
# File lib/q.rb, line 20 def self.queue @queue_method || DEFAULT_QUEUE.call end
queue=(queue)
click to toggle source
# File lib/q.rb, line 66 def self.queue=(queue) if queue.is_a?(Module) @queue_method = queue else @env = queue @queue_method = queue_lookup[queue].call end end
queue_config() { |config_class| ... }
click to toggle source
# File lib/q.rb, line 75 def self.queue_config(&block) @config_class ||= queue::QueueConfig.call yield @config_class if block_given? @config_class end
queue_lookup()
click to toggle source
# File lib/q.rb, line 55 def self.queue_lookup @queue_lookup ||= Hash.new do |hash, key| hash[key] = -> { require "q/methods/#{key}" const = Q.camelize(key) ::Q::Methods.const_get(const) } end @queue_lookup end
reset_queue!()
click to toggle source
# File lib/q.rb, line 35 def self.reset_queue! @queue_method = nil @env = nil end
setup() { |self| ... }
click to toggle source
# File lib/q.rb, line 24 def self.setup(&block) yield self end