Module: ActionDispatch::Session::LegacySupport
- Defined in:
- lib/action_dispatch/session/legacy_support.rb
Defined Under Namespace
Classes: EnvWrapper
Class Method Summary collapse
Instance Method Summary collapse
- #destroy_session(env, session_id, options) ⇒ Object
- #find_session(id) ⇒ Object
- #get_session(env, sid) ⇒ Object
- #get_session_model(request, sid) ⇒ Object
- #set_session(env, sid, session_data, options) ⇒ Object
Class Method Details
.included(klass) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/action_dispatch/session/legacy_support.rb', line 6 def self.included(klass) [ :get_session, :get_session_model, :write_session, :delete_session, :find_session ].each do |m| klass.send(:alias_method, "#{m}_rails5".to_sym, m) klass.send(:remove_method, m) end end |
Instance Method Details
#destroy_session(env, session_id, options) ⇒ Object
29 30 31 32 33 34 35 36 |
# File 'lib/action_dispatch/session/legacy_support.rb', line 29 def destroy_session(env, session_id, ) request = EnvWrapper.new(env) if sid = current_session_id(request.env) get_session_model(request, sid).destroy request.env[self.class::SESSION_RECORD_KEY] = nil end generate_sid unless [:drop] end |
#find_session(id) ⇒ Object
46 47 48 |
# File 'lib/action_dispatch/session/legacy_support.rb', line 46 def find_session(id) self.class.session_class.find_by_session_id(id) || self.class.session_class.new(:session_id => id, :data => {}) end |
#get_session(env, sid) ⇒ Object
19 20 21 22 |
# File 'lib/action_dispatch/session/legacy_support.rb', line 19 def get_session(env, sid) request = EnvWrapper.new(env) get_session_rails5(request, sid) end |
#get_session_model(request, sid) ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/action_dispatch/session/legacy_support.rb', line 38 def get_session_model(request, sid) if request.env[self.class::ENV_SESSION_OPTIONS_KEY][:id].nil? request.env[self.class::SESSION_RECORD_KEY] = find_session(sid) else request.env[self.class::SESSION_RECORD_KEY] ||= find_session(sid) end end |
#set_session(env, sid, session_data, options) ⇒ Object
24 25 26 27 |
# File 'lib/action_dispatch/session/legacy_support.rb', line 24 def set_session(env, sid, session_data, ) request = EnvWrapper.new(env) write_session_rails5(request, sid, session_data, ) end |