module ActionDispatch::Session::StaleSessionCheck
Public Instance Methods
extract_session_id(env)
click to toggle source
Calls superclass method
# File lib/action_dispatch/middleware/session/abstract_store.rb, line 52 def extract_session_id(env) stale_session_check! { super } end
load_session(env)
click to toggle source
Calls superclass method
# File lib/action_dispatch/middleware/session/abstract_store.rb, line 48 def load_session(env) stale_session_check! { super } end
stale_session_check!() { || ... }
click to toggle source
# File lib/action_dispatch/middleware/session/abstract_store.rb, line 56 def stale_session_check! yield rescue ArgumentError => argument_error if argument_error.message =~ %r{undefined class/module ([\w:]*\w)} begin # Note that the regexp does not allow $1 to end with a ':' $1.constantize rescue LoadError, NameError => const_error raise ActionDispatch::Session::SessionRestoreError, "Session contains objects whose class definition isn't available.\n" + "Remember to require the classes for all objects kept in the session.\n" + "(Original exception: #{const_error.message} [#{const_error.class}])\n" end retry else raise end end