Sha256: 10e182202315201498e4e3cc6355983c978fb4a9f8bd28016fa8213d428c934e

Contents?: true

Size: 1.03 KB

Versions: 28

Compression:

Stored size: 1.03 KB

Contents

# -*- coding: utf-8 -*-
# This writer uses resque to enqueue index jobs
# @author Michael Stämpfli

require 'resque'

module XapianDb
  module IndexWriters
    class ResqueWriter

      class << self

        # Update an object in the index
        # @param [Object] obj An instance of a class with a blueprint configuration
        def index(obj, commit=true)
          Resque.enqueue worker_class, :index, :class => obj.class.name, :id => obj.id
        end

        # Remove an object from the index
        # @param [String] xapian_id The document id
        def delete_doc_with(xapian_id, commit=true)
          Resque.enqueue worker_class, :delete_doc, :xapian_id => xapian_id
        end

        # Reindex all objects of a given class
        # @param [Class] klass The class to reindex
        def reindex_class(klass, options = {})
          Resque.enqueue worker_class, :reindex_class, :class => klass.name
        end

        def worker_class
          ResqueWorker
        end
        private :worker_class
      end

    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
xapian_db-1.3.5.4 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3.5.3 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3.5.2 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3.5.1 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3.5 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3.4 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3.3.1 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3.3 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3.2 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3.1 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.3 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.2.5.1 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.2.5 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.2.4.7 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.2.4.6 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.2.4.5 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.2.4.4 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.2.4.3 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.2.4.2 lib/xapian_db/index_writers/resque_writer.rb
xapian_db-1.2.4.1 lib/xapian_db/index_writers/resque_writer.rb