Class: ClassCache

Inherits:
Object
  • Object
show all
Defined in:
lib/mongoid/fixture_set/class_cache.rb

Instance Method Summary collapse

Constructor Details

#initialize(class_names) ⇒ ClassCache

Returns a new instance of ClassCache.



2
3
4
5
6
# File 'lib/mongoid/fixture_set/class_cache.rb', line 2

def initialize(class_names)
  @class_names = class_names.stringify_keys
  # Remove string values that aren't constants or subclasses of Mongoid::Document
  @class_names.delete_if { |klass_name, klass| !insert_class(@class_names, klass_name, klass) }
end

Instance Method Details

#[](fs_name) ⇒ Object



8
9
10
11
12
13
# File 'lib/mongoid/fixture_set/class_cache.rb', line 8

def [](fs_name)
  @class_names.fetch(fs_name) {
    klass = default_fixture_model(fs_name).safe_constantize
    insert_class(@class_names, fs_name, klass)
  }
end