The default Active Record class.
Customizable data column name. Defaults to ‘data’.
# File lib/active_record/session_store.rb, line 81
81: cattr_accessor :data_column_name
# File lib/active_record/session_store.rb, line 88
88: def data_column_size_limit
89: @data_column_size_limit ||= columns_hash[data_column_name].limit
90: end
# File lib/active_record/session_store.rb, line 108
108: def self.find_by_session_id(*args)
109: find_by_sessid(*args)
110: end
# File lib/active_record/session_store.rb, line 117
117: def self.find_by_session_id(session_id)
118: find :first, :conditions => {:session_id=>session_id}
119: end
# File lib/active_record/session_store.rb, line 99
99: def session_id_column
100: 'session_id'
101: end
Compatibility with tables using sessid instead of session_id.
# File lib/active_record/session_store.rb, line 104
104: def setup_sessid_compatibility!
105: # Reset column info since it may be stale.
106: reset_column_information
107: if columns_hash['sessid']
108: def self.find_by_session_id(*args)
109: find_by_sessid(*args)
110: end
111:
112: define_method(:session_id) { sessid }
113: define_method(:session_id=) { |session_id| self.sessid = session_id }
114: else
115: class << self; remove_method :find_by_session_id; end
116:
117: def self.find_by_session_id(session_id)
118: find :first, :conditions => {:session_id=>session_id}
119: end
120: end
121: end
# File lib/active_record/session_store.rb, line 142
142: def marshal_data!
143: return false unless loaded?
144: write_attribute(@@data_column_name, self.class.marshal(data))
145: end
Ensures that the data about to be stored in the database is not larger than the data storage column. Raises ActionController::SessionOverflowError.
# File lib/active_record/session_store.rb, line 150
150: def raise_on_session_data_overflow!
151: return false unless loaded?
152: limit = self.class.data_column_size_limit
153: if limit and read_attribute(@@data_column_name).size > limit
154: raise ActionController::SessionOverflowError
155: end
156: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.