lib/devise/rails/warden_compat.rb in devise-0.8.2 vs lib/devise/rails/warden_compat.rb in devise-0.9.0

- old
+ new

@@ -1,25 +1,25 @@ -# Taken from RailsWarden, thanks to Hassox. http://github.com/hassox/rails_warden module Warden::Mixins::Common def request - return @request if @request - if env['action_controller.rescue.request'] - @request = env['action_controller.rescue.request'] - else - Rack::Request.new(env) - end + @request ||= env['action_controller.rescue.request'] end def reset_session! raw_session.inspect # why do I have to inspect it to get it to clear? raw_session.clear end def response - return @response if @response - if env['action_controller.rescue.response'] - @response = env['action_controller.rescue.response'] - else - Rack::Response.new(env) - end + @response ||= env['action_controller.rescue.response'] end end + +class Warden::SessionSerializer + def serialize(record) + [record.class, record.id] + end + + def deserialize(keys) + klass, id = keys + klass.find(:first, :conditions => { :id => id }) + end +end \ No newline at end of file