class ThinkingSphinx::Deltas::DefaultDelta

Attributes

adapter[R]
options[R]

Public Class Methods

new(adapter, options = {}) click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 4
def initialize(adapter, options = {})
  @adapter, @options = adapter, options
end

Public Instance Methods

clause(delta_source = false) click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 8
def clause(delta_source = false)
  "#{adapter.quoted_table_name}.#{quoted_column} = #{adapter.boolean_value delta_source}"
end
delete(index, instance) click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 12
def delete(index, instance)
  ThinkingSphinx::Deltas::DeleteJob.new(
    index.name, index.document_id_for_key(instance.id)
  ).perform
end
index(index) click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 18
def index(index)
  ThinkingSphinx::Deltas::IndexJob.new(index.name).perform
end
reset_query() click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 22
  def reset_query
    ("UPDATE #{adapter.quoted_table_name}
SET #{quoted_column} = #{adapter.boolean_value false}
WHERE #{quoted_column} = #{adapter.boolean_value true}
").strip.gsub(/\n\s*/, ' ')
  end
toggle(instance) click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 30
def toggle(instance)
  instance.send "#{column}=", true
end
toggled?(instance) click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 34
def toggled?(instance)
  instance.send "#{column}?"
end

Private Instance Methods

column() click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 40
def column
  options[:column] || :delta
end
config() click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 44
def config
  ThinkingSphinx::Configuration.instance
end
controller() click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 48
def controller
  config.controller
end
quoted_column() click to toggle source
# File lib/thinking_sphinx/deltas/default_delta.rb, line 52
def quoted_column
  adapter.quote column
end