Sha256: 5cd642950ed8da39330b000fec41adc548acc3c8c99b59f563ac7c24378feacf

Contents?: true

Size: 535 Bytes

Versions: 5

Compression:

Stored size: 535 Bytes

Contents

require 'rack_datamapper/session/abstract/store'
module Ixtlan
  class Session < DataMapper::Session::Abstract::Session
 
    def data=(data)
      d = {}
      data.each{|k,v| d[k.to_sym] = v}
      @user = d.delete(:user)
      @flash = d.delete(:flash)
      @expires_at = d.delete(:expires_at)
      attribute_set(:data, ::Base64.encode64(Marshal.dump(d)))
    end
    
    def data
      Marshal.load(::Base64.decode64(attribute_get(:data))).merge({:user => @user, :flash => @flash, :expires_at => @expires_at})
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ixtlan-0.2.4 lib/ixtlan/session.rb
ixtlan-0.2.3 lib/ixtlan/session.rb
ixtlan-0.2.2 lib/ixtlan/session.rb
ixtlan-0.2.1 lib/ixtlan/session.rb
ixtlan-0.2.0 lib/ixtlan/session.rb