class Mongoid::SessionStore::Session

Constants

DEFAULT_SESSION_EXPIRY

Public Class Methods

find_by_session_id(session_id) click to toggle source
# File lib/mongoid/session_store/session.rb, line 20
def self.find_by_session_id(session_id)
  where(:session_id => session_id).last
end
session_expiry() click to toggle source
# File lib/mongoid/session_store/session.rb, line 24
def self.session_expiry
  ENV['SESSION_TIMEOUT'].to_i.minutes || DEFAULT_SESSION_EXPIRY.minutes
end

Public Instance Methods

current?() click to toggle source
# File lib/mongoid/session_store/session.rb, line 44
def current?
  return true unless self.expires_at.present?
  self.expires_at.in_time_zone > Time.now.in_time_zone
end
data() click to toggle source
# File lib/mongoid/session_store/session.rb, line 28
def data
  self.raw_data.present? && Marshal.load(Base64.decode64(self.raw_data)).merge(:expires_at => self.expires_at) || {}
end
data=(raw={}) click to toggle source
# File lib/mongoid/session_store/session.rb, line 32
def data=(raw={})
  self.raw_data = Base64.encode64(Marshal.dump(raw))
end
expired?() click to toggle source
# File lib/mongoid/session_store/session.rb, line 49
def expired?
  ! current?
end
loaded?() click to toggle source
# File lib/mongoid/session_store/session.rb, line 53
def loaded?
  self.raw_data.present?
end
set_expires_at() click to toggle source
# File lib/mongoid/session_store/session.rb, line 36
def set_expires_at
  if current?
    self.expires_at = Time.now + Session.session_expiry
  else
    self.expires_at = nil
  end
end