module Operationable::Runners::Wrappable
Public Instance Methods
add_part(modul, opts=nil)
click to toggle source
# File lib/operationable/runners/base.rb, line 16 def add_part(modul, opts=nil) modul.execute(self, opts) end
callbacks()
click to toggle source
# File lib/operationable/runners/base.rb, line 20 def callbacks @callbacks ||= [] end
inherited_callbacks()
click to toggle source
# File lib/operationable/runners/base.rb, line 24 def inherited_callbacks ancestors .grep(Wrappable) .reverse .flat_map(&:callbacks) end
new(*arguments, &block)
click to toggle source
# File lib/operationable/runners/base.rb, line 31 def new(*arguments, &block) instance = allocate instance.send(:initialize, *arguments, &block) instance_callbacks = instance.instance_variable_get(:@callbacks) instance.instance_variable_set(:@callbacks, instance_callbacks.concat(inherited_callbacks).uniq) instance end
push_to_queue(*callback_method_names, job_class_name: nil, queue: nil, params: {})
click to toggle source
# File lib/operationable/runners/base.rb, line 5 def push_to_queue(*callback_method_names, job_class_name: nil, queue: nil, params: {}) callback_method_names.each do |callback_method_name| callbacks << { callback_method_name: callback_method_name.to_s, job_class_name: job_class_name.nil? ? job_class.to_s : job_class_name.to_s, queue: (job_class_name && queue.blank?) ? job_class_name.to_s.constantize.queue_name : queue.to_s, params: params } end end