class Sidekiq::Control::Configuration
Constants
- DEFAULT_IGNORED_CLASSES
Attributes
ignored_classes[RW]
jobs[W]
Public Class Methods
new()
click to toggle source
# File lib/sidekiq/control/configuration.rb, line 22 def initialize self.ignored_classes = DEFAULT_IGNORED_CLASSES end
Public Instance Methods
jobs()
click to toggle source
# File lib/sidekiq/control/configuration.rb, line 26 def jobs @jobs ||= application_jobs.sort_by(&:name) end
Private Instance Methods
active_jobs()
click to toggle source
# File lib/sidekiq/control/configuration.rb, line 49 def active_jobs return [] unless defined?(::ActiveJob::Base) find_descendants_of(::ActiveJob::Base) end
application_jobs()
click to toggle source
# File lib/sidekiq/control/configuration.rb, line 32 def application_jobs rails_eager_load (sidekiq_jobs + active_jobs).select(&method(:select_class?)) end
find_descendants_of(obj)
click to toggle source
# File lib/sidekiq/control/configuration.rb, line 55 def find_descendants_of(obj) ObjectSpace.each_object(Class).select(&obj.method(:>)) end
rails_eager_load()
click to toggle source
# File lib/sidekiq/control/configuration.rb, line 59 def rails_eager_load ::Rails.application.eager_load! if defined?(::Rails) && !::Rails.env.production? end
select_class?(klass)
click to toggle source
# File lib/sidekiq/control/configuration.rb, line 37 def select_class?(klass) return if Sidekiq::Control.config.ignored_classes.include?(klass.name) klass.public_instance_methods(false).include?(:perform) end
sidekiq_jobs()
click to toggle source
# File lib/sidekiq/control/configuration.rb, line 43 def sidekiq_jobs return [] unless defined?(::Sidekiq::Worker) find_descendants_of(::Sidekiq::Worker) end