Sha256: 2c379b12fe095cde67593e7b80a4068fd0c531d44547d2afb51fae4cd4560db8
Contents?: true
Size: 1 KB
Versions: 3
Compression:
Stored size: 1 KB
Contents
class ThinkingSphinx::RealTime::Populator def self.populate(index) new(index).populate end def initialize(index) @index = index end def populate(&block) instrument 'start_populating' remove_files scope.find_in_batches(:batch_size => batch_size) do |instances| transcriber.copy *instances instrument 'populated', :instances => instances end controller.rotate instrument 'finish_populating' end private attr_reader :index delegate :controller, :batch_size, :to => :configuration delegate :scope, :to => :index def configuration ThinkingSphinx::Configuration.instance end def instrument(message, options = {}) ActiveSupport::Notifications.instrument( "#{message}.thinking_sphinx.real_time", options.merge(:index => index) ) end def remove_files Dir["#{index.path}*"].each { |file| FileUtils.rm file } end def transcriber @transcriber ||= ThinkingSphinx::RealTime::Transcriber.new index end end
Version data entries
3 entries across 3 versions & 1 rubygems