Module Merb::SessionMixin
In: merb-core/lib/merb-core/dispatch/session.rb

This is mixed into Merb::Controller on framework boot.

Methods

Classes and Modules

Module Merb::SessionMixin::RequestMixin
Class Merb::SessionMixin::NoSessionContainer
Class Merb::SessionMixin::SessionOverflow

Public Class methods

:api: private

[Source]

    # File merb-core/lib/merb-core/dispatch/session.rb, line 53
53:     def self.included(base)
54:       # Register a callback to finalize sessions - needs to run before the cookie
55:       # callback extracts Set-Cookie headers from request.cookies.
56:       base._after_dispatch_callbacks.unshift lambda { |c| c.request.finalize_session }
57:     end

Public Instance methods

Marks this session as needing a new cookie.

:api: private

[Source]

    # File merb-core/lib/merb-core/dispatch/session.rb, line 92
92:     def needs_new_cookie!
93:       @_new_cookie = true
94:     end

Does session need new cookie?

Returns

Boolean:true if a new cookie is needed, false otherwise.

:api: private

[Source]

     # File merb-core/lib/merb-core/dispatch/session.rb, line 102
102:     def needs_new_cookie?
103:       @_new_cookie
104:     end

Returns

String:A random 32 character string for use as a unique session ID.

:api: private

[Source]

    # File merb-core/lib/merb-core/dispatch/session.rb, line 76
76:     def rand_uuid
77:       values = [
78:         rand(0x0010000),
79:         rand(0x0010000),
80:         rand(0x0010000),
81:         rand(0x0010000),
82:         rand(0x0010000),
83:         rand(0x1000000),
84:         rand(0x1000000),
85:       ]
86:       "%04x%04x%04x%04x%04x%06x%06x" % values
87:     end

Parameters

session_store<String>:The type of session store to access.

Returns

SessionContainer:The session that was extracted from the request object.

:api: public

[Source]

    # File merb-core/lib/merb-core/dispatch/session.rb, line 66
66:     def session(session_store = nil)
67:       request.session(session_store)
68:     end

[Validate]