module SunspotOffline

Constants

VERSION

Public Class Methods

configuration() click to toggle source
# File lib/sunspot_offline.rb, line 9
def configuration
  @configuration ||= OpenStruct.new(
    enabled: true,
    retry_delay: 1.hour,
    solr_error_callback: ->(_exception) {},
    filter_sidekiq_job_callback: ->(_job) { false }, # some Sidekiq jobs are allowed to fail and retry on their own
    index_job: Sidekiq::IndexWorker, # Sidekiq job which will handle index retries
    removal_job: Sidekiq::RemovalWorker, # Sidekiq job which will handle removal retries
    default_queue: 'default'
  )
end
configure() { |configuration| ... } click to toggle source
# File lib/sunspot_offline.rb, line 21
def configure
  if block_given?
    yield(configuration)
    [SunspotOffline::Sidekiq::IndexWorker, SunspotOffline::Sidekiq::RemovalWorker].each do |worker|
      worker.sidekiq_options[:queue] = configuration.default_queue
    end
  end
end
disabled?() click to toggle source
# File lib/sunspot_offline.rb, line 38
def disabled?
  !configuration.enabled
end
filter_sidekiq_job?(job_class_name) click to toggle source
# File lib/sunspot_offline.rb, line 34
def filter_sidekiq_job?(job_class_name)
  configuration.filter_sidekiq_job_callback.call(job_class_name) if configuration.filter_sidekiq_job_callback
end
on_solr_error(exception) click to toggle source
# File lib/sunspot_offline.rb, line 30
def on_solr_error(exception)
  configuration.solr_error_callback.call(exception) if configuration.solr_error_callback
end