Class: SessionJsonizer
- Inherits:
-
Object
- Object
- SessionJsonizer
- Defined in:
- lib/session_jsonizer.rb,
lib/session_jsonizer/version.rb
Constant Summary collapse
- VERSION =
"0.0.1"
Instance Method Summary collapse
Instance Method Details
#dump(session) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/session_jsonizer.rb', line 24 def dump(session) ::Rails.logger.debug "serializer dump: #{session}" new_session = Hash[session.map do |key, value| [ key, if key == 'flash' dump_flash(value) else value end ] end] ::JSON.dump(new_session) end |
#load(value) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/session_jsonizer.rb', line 3 def load(value) ::Rails.logger.debug "serializer load: #{value}" if value.first == '{' Hash[::JSON.load(value).map do |key, value| [ key, case when key == 'flash' load_flash(value) when value.is_a?(Hash) value.with_indifferent_access else value end ] end] else ::Marshal.load(value) end end |