thin wrapper around Hash that allows us to lazily load session id into
session_options
Public Class Methods
new(by, env, default_options)click to toggle source
# File lib/action_dispatch/middleware/session/abstract_store.rb, line 18
18: definitialize(by, env, default_options)
19: @by = by
20: @env = env
21: @session_id_loaded = false
22: merge!(default_options)
23: end
Public Instance Methods
[](key)click to toggle source
# File lib/action_dispatch/middleware/session/abstract_store.rb, line 25
25: def[](key)
26: ifkey==:id
27: load_session_id!unlesskey?(:id) ||has_session_id?
28: end
29: super
30: end
Private Instance Methods
has_session_id?()click to toggle source
# File lib/action_dispatch/middleware/session/abstract_store.rb, line 34
34: defhas_session_id?
35: @session_id_loaded
36: end
load_session_id!()click to toggle source
# File lib/action_dispatch/middleware/session/abstract_store.rb, line 38
38: defload_session_id!
39: self[:id] = @by.send(:extract_session_id, @env)
40: @session_id_loaded = true
41: end