module MongoMapper::Plugins::Persistence::ClassMethods
Public Instance Methods
collection()
click to toggle source
# File lib/mongo_mapper/plugins/persistence.rb, line 56 def collection assert_supported database.collection(collection_name, collection_options) end
collection_name()
click to toggle source
# File lib/mongo_mapper/plugins/persistence.rb, line 51 def collection_name assert_supported @collection_name ||= self.to_s.tableize.gsub(/\//, '.') end
collection_options()
click to toggle source
# File lib/mongo_mapper/plugins/persistence.rb, line 61 def collection_options {} end
connection(mongo_connection=nil)
click to toggle source
# File lib/mongo_mapper/plugins/persistence.rb, line 17 def connection(mongo_connection=nil) assert_supported if mongo_connection.nil? && MongoMapper.connection? @connection ||= MongoMapper.connection else @connection = mongo_connection end @connection end
database()
click to toggle source
# File lib/mongo_mapper/plugins/persistence.rb, line 37 def database assert_supported if database_name.nil? MongoMapper.database else connection.use(database_name).database end end
database_name()
click to toggle source
# File lib/mongo_mapper/plugins/persistence.rb, line 32 def database_name assert_supported @database_name ||= nil # ||= idiom prevents uninitialized ivar warnings. end
inherited(subclass)
click to toggle source
Calls superclass method
# File lib/mongo_mapper/plugins/persistence.rb, line 8 def inherited(subclass) unless subclass.embeddable? subclass.connection(connection) subclass.set_database_name(database_name) subclass.set_collection_name(collection_name) unless subclass.explicit_collection_defined? end super end
set_collection_name(name)
click to toggle source
# File lib/mongo_mapper/plugins/persistence.rb, line 46 def set_collection_name(name) assert_supported @collection_name = name end
set_database_name(name)
click to toggle source
# File lib/mongo_mapper/plugins/persistence.rb, line 27 def set_database_name(name) assert_supported @database_name = name end
Private Instance Methods
assert_supported()
click to toggle source
# File lib/mongo_mapper/plugins/persistence.rb, line 67 def assert_supported @embeddable ||= embeddable? if @embeddable raise MongoMapper::NotSupported.new('This is not supported for embeddable documents at this time.') end end