Skip to content

Commit

Permalink
Consolidate queue_adapter= and interpret_adapter
Browse files Browse the repository at this point in the history
Since #25037, `queue_adapter=` simply delegates to `interpret_adapter`
only.
  • Loading branch information
kamipo committed Jan 5, 2018
1 parent e243866 commit 5a50146
Showing 1 changed file with 12 additions and 18 deletions.
30 changes: 12 additions & 18 deletions activejob/lib/active_job/queue_adapter.rb
Original file line number Diff line number Diff line change
Expand Up @@ -29,28 +29,22 @@ def queue_adapter_name
# Specify the backend queue provider. The default queue adapter
# is the +:async+ queue. See QueueAdapters for more
# information.
def queue_adapter=(name_or_adapter_or_class)
interpret_adapter(name_or_adapter_or_class)
end

private

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)
def queue_adapter=(name_or_adapter)
case name_or_adapter
when Symbol, String
queue_adapter = ActiveJob::QueueAdapters.lookup(name_or_adapter).new
assign_adapter(name_or_adapter.to_s, queue_adapter)
else
if queue_adapter?(name_or_adapter)
adapter_name = "#{name_or_adapter.class.name.demodulize.remove('Adapter').underscore}"
assign_adapter(adapter_name, name_or_adapter)
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
raise ArgumentError
end
end
end

private
def assign_adapter(adapter_name, queue_adapter)
self._queue_adapter_name = adapter_name
self._queue_adapter = queue_adapter
Expand Down

0 comments on commit 5a50146

Please sign in to comment.