Module: Merb::SessionMixin

Defined in:
lib/doh/merb/db_session.rb

Instance Method Summary collapse

Instance Method Details

#finalize_sessionObject



21
22
23
24
# File 'lib/doh/merb/db_session.rb', line 21

def finalize_session
  request.session.save if @_fingerprint != Marshal.dump(request.session.data).hash
  set_cookie(_session_id_key, request.session.session_id, Time.now + _session_expiry) if (@_new_cookie || request.session.needs_new_cookie)
end

#session_store_typeObject



26
27
28
# File 'lib/doh/merb/db_session.rb', line 26

def session_store_type
  "dohsession"
end

#setup_sessionObject



14
15
16
17
18
19
# File 'lib/doh/merb/db_session.rb', line 14

def setup_session
  before_value = cookies[_session_id_key]
  request.session, cookies[_session_id_key] = Merb::DohDbSession.persist(cookies[_session_id_key])
  @_fingerprint = Marshal.dump(request.session.data).hash
  @_new_cookie = cookies[_session_id_key] != before_value
end