module Mongoid::Sessions

Public Class Methods

clear() click to toggle source

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
default() click to toggle source

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() click to toggle source

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
with_name(name) click to toggle source

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

collection() click to toggle source

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
collection_name() click to toggle source
# File lib/mongoid/sessions.rb, line 86
def collection_name
  super || self.class.collection_name
end
mongo_session() click to toggle source
# File lib/mongoid/sessions.rb, line 82
def mongo_session
  super || self.class.mongo_session
end