class RemoteRecord::ClassLookup

Looks up the class name to use to define the remote record's behavior.

Public Class Methods

new(klass) click to toggle source
# File lib/remote_record/class_lookup.rb, line 6
def initialize(klass)
  @klass = klass
end

Public Instance Methods

remote_record_class(class_name_override = nil) click to toggle source
# File lib/remote_record/class_lookup.rb, line 10
def remote_record_class(class_name_override = nil)
  class_name = (class_name_override || infer_remote_record_class_name)
  class_name.constantize
rescue NameError
  raise RemoteRecord::RecordClassNotFound, "#{class_name} couldn't be found." \
  "#{' Perhaps you need to define `remote_record_class`?' unless class_name_override}"
end

Private Instance Methods

infer_remote_record_class_name() click to toggle source
# File lib/remote_record/class_lookup.rb, line 20
def infer_remote_record_class_name
  "RemoteRecord::#{@klass.to_s.delete_suffix('Reference')}"
end