module Mongoid::Sessions
Public Class Methods
Clear all sessions from the current thread.
@example Clear all sessions.
Mongoid::Sessions.clear
@return [ Array ] The empty sessions.
@since 3.0.0
# File lib/mongoid/sessions.rb, line 23 def clear Threaded.sessions.clear end
Get the default session.
@example Get the default session.
Mongoid::Sessions.default
@return [ Moped::Session ] The default session.
@since 3.0.0
# File lib/mongoid/sessions.rb, line 35 def default Threaded.sessions[:default] ||= Sessions::Factory.default end
Disconnect all active sessions.
@example Disconnect all active sessions.
Mongoid::Sessions.disconnect
@return [ true ] True.
@since 3.1.0
# File lib/mongoid/sessions.rb, line 47 def disconnect Threaded.sessions.values.each do |session| session.disconnect end end
Get a session with the provided name.
@example Get a session with the name.
Mongoid::Sessions.with_name(:replica)
@param [ Symbol ] name The name of the session.
@return [ Moped::Session ] The named session.
@since 3.0.0
# File lib/mongoid/sessions.rb, line 63 def with_name(name) Threaded.sessions[name.to_sym] ||= Sessions::Factory.create(name) end
Public Instance Methods
Get the collection for this model from the session. Will check for an overridden collection name from the store_in macro or the collection with a pluralized model name.
@example Get the model's collection.
Model.collection
@return [ Moped::Collection ] The collection.
@since 3.0.0
# File lib/mongoid/sessions.rb, line 78 def collection mongo_session[collection_name] end
# File lib/mongoid/sessions.rb, line 86 def collection_name super || self.class.collection_name end
# File lib/mongoid/sessions.rb, line 82 def mongo_session super || self.class.mongo_session end