module ActiveJob::QueueAdapter::ClassMethods
Includes the setter method for changing the active queue adapter.
Constants
- QUEUE_ADAPTER_METHODS
Public Instance Methods
queue_adapter()
click to toggle source
Returns the backend queue provider. The default queue adapter is the :async
queue. See QueueAdapters
for more information.
# File activejob/lib/active_job/queue_adapter.rb, line 21 def queue_adapter _queue_adapter end
queue_adapter=(name_or_adapter_or_class)
click to toggle source
Specify the backend queue provider. The default queue adapter is the :async
queue. See QueueAdapters
for more information.
# File activejob/lib/active_job/queue_adapter.rb, line 32 def queue_adapter=(name_or_adapter_or_class) interpret_adapter(name_or_adapter_or_class) end
queue_adapter_name()
click to toggle source
# File activejob/lib/active_job/queue_adapter.rb, line 25 def queue_adapter_name _queue_adapter_name end
Private Instance Methods
assign_adapter(adapter_name, queue_adapter)
click to toggle source
# File activejob/lib/active_job/queue_adapter.rb, line 54 def assign_adapter(adapter_name, queue_adapter) self._queue_adapter_name = adapter_name self._queue_adapter = queue_adapter end
interpret_adapter(name_or_adapter_or_class)
click to toggle source
# File activejob/lib/active_job/queue_adapter.rb, line 38 def interpret_adapter(name_or_adapter_or_class) case name_or_adapter_or_class when Symbol, String assign_adapter(name_or_adapter_or_class.to_s, ActiveJob::QueueAdapters.lookup(name_or_adapter_or_class).new) else if queue_adapter?(name_or_adapter_or_class) adapter_name = "#{name_or_adapter_or_class.class.name.demodulize.remove('Adapter').underscore}" assign_adapter(adapter_name, name_or_adapter_or_class) else raise ArgumentError end end end
queue_adapter?(object)
click to toggle source
# File activejob/lib/active_job/queue_adapter.rb, line 61 def queue_adapter?(object) QUEUE_ADAPTER_METHODS.all? { |meth| object.respond_to?(meth) } end