class ThinkingSphinx::ActiveRecord::Index

Attributes

definition_block[W]
reference[R]

Public Instance Methods

append_source() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 7
def append_source
  ThinkingSphinx::ActiveRecord::SQLSource.new(
    model, source_options.merge(:position => sources.length)
  ).tap do |source|
    sources << source
  end
end
attributes() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 15
def attributes
  sources.collect(&:attributes).flatten
end
delta?() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 19
def delta?
  @options[:delta?]
end
delta_processor() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 23
def delta_processor
  @options[:delta_processor].try(:new, adapter, @options[:delta_options] || {})
end
facets() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 27
def facets
  @facets ||= sources.collect(&:facets).flatten
end
fields() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 31
def fields
  sources.collect(&:fields).flatten
end
sources() click to toggle source
Calls superclass method
# File lib/thinking_sphinx/active_record/index.rb, line 35
def sources
  interpret_definition!
  super
end
unique_attribute_names() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 40
def unique_attribute_names
  attributes.collect(&:name)
end

Private Instance Methods

adapter() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 46
def adapter
  @adapter ||= ThinkingSphinx::ActiveRecord::DatabaseAdapters.
    adapter_for(model)
end
interpreter() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 51
def interpreter
  ThinkingSphinx::ActiveRecord::Interpreter
end
name_suffix() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 55
def name_suffix
  @options[:delta?] ? 'delta' : 'core'
end
source_options() click to toggle source
# File lib/thinking_sphinx/active_record/index.rb, line 59
def source_options
  {
    :name            => name,
    :offset          => offset,
    :delta?          => @options[:delta?],
    :delta_processor => @options[:delta_processor],
    :delta_options   => @options[:delta_options],
    :primary_key     => primary_key
  }
end