class ThinkingSphinx::ActiveRecord::Depolymorph::BaseReflection

Attributes

class_name[R]
name[R]
reflection[R]

Public Class Methods

new(reflection, name, class_name) click to toggle source
# File lib/thinking_sphinx/active_record/depolymorph/base_reflection.rb, line 4
def initialize(reflection, name, class_name)
  @reflection = reflection
  @name       = name
  @class_name = class_name

  @options = reflection.options.clone
end

Public Instance Methods

call() click to toggle source
# File lib/thinking_sphinx/active_record/depolymorph/base_reflection.rb, line 12
def call
  # Should be implemented by subclasses.
end

Private Instance Methods

klass() click to toggle source
# File lib/thinking_sphinx/active_record/depolymorph/base_reflection.rb, line 20
def klass
  reflection.class
end
options() click to toggle source
# File lib/thinking_sphinx/active_record/depolymorph/base_reflection.rb, line 24
def options
  @options.delete :polymorphic
  @options[:class_name]    = class_name
  @options[:foreign_key] ||= "#{reflection.name}_id"
  @options[:foreign_type]  = reflection.foreign_type

  @options
end