Class: ActionController::Session::CookieStore

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_4_session_flash_backport/rails2/session_with_indifferent_access.rb

Instance Method Summary collapse

Instance Method Details

#extract_session_id(env) ⇒ Object



42
43
44
45
46
47
48
49
# File 'lib/rails_4_session_flash_backport/rails2/session_with_indifferent_access.rb', line 42

def extract_session_id(env)
  if data = unpacked_cookie_data(env)
    persistent_session_id!(data) unless data.empty?
    data["session_id"] || data[:session_id]
  else
    nil
  end
end

#inject_persistent_session_id(data) ⇒ Object



51
52
53
# File 'lib/rails_4_session_flash_backport/rails2/session_with_indifferent_access.rb', line 51

def inject_persistent_session_id(data)
  requires_session_id?(data) ? { "session_id" => generate_sid } : {}
end

#load_session(env) ⇒ Object



36
37
38
39
40
# File 'lib/rails_4_session_flash_backport/rails2/session_with_indifferent_access.rb', line 36

def load_session(env)
  data = unpacked_cookie_data(env)
  data = persistent_session_id!(data)
  [data["session_id"] || data[:session_id], data]
end

#requires_session_id?(data) ⇒ Boolean

Returns:

  • (Boolean)


55
56
57
58
59
60
61
# File 'lib/rails_4_session_flash_backport/rails2/session_with_indifferent_access.rb', line 55

def requires_session_id?(data)
  if data
    data.respond_to?(:key?) && !(data.key?("session_id") || data.key?(:session_id))
  else
    true
  end
end