class Searchkick::ReindexV2Job

Public Instance Methods

perform(klass, id) click to toggle source
# File lib/searchkick/reindex_v2_job.rb, line 5
def perform(klass, id)
  model = klass.constantize
  record = model.find(id) rescue nil # TODO fix lazy coding
  index = model.searchkick_index
  if !record || !record.should_index?
    # hacky
    record ||= model.new
    record.id = id
    begin
      index.remove record
    rescue Elasticsearch::Transport::Transport::Errors::NotFound
      # do nothing
    end
  else
    index.store record
  end
end