类 CGI::Session::MemoryStore
内存中会话存储类。
将会话存储实现为全局内存哈希。 Session
数据仅在 Ruby 解释器实例存在时持久存在。
公共类方法
new(session, option=nil) 点击切换源代码
创建一个新的 MemoryStore
实例。
session
是此实例关联的会话。 option
是初始化选项列表。目前没有被识别。
# File lib/cgi/session.rb, line 488 def initialize(session, option=nil) @session_id = session.session_id unless GLOBAL_HASH_TABLE.key?(@session_id) unless session.new_session raise CGI::Session::NoSession, "uninitialized session" end GLOBAL_HASH_TABLE[@session_id] = {} end end
公共实例方法
close() 点击切换源代码
关闭会话存储。
一个无操作。
# File lib/cgi/session.rb, line 515 def close # don't need to close end
delete() 点击切换源代码
删除会话状态。
# File lib/cgi/session.rb, line 520 def delete GLOBAL_HASH_TABLE.delete(@session_id) end
restore() 点击切换源代码
恢复会话状态。
将会话数据作为哈希返回。
# File lib/cgi/session.rb, line 501 def restore GLOBAL_HASH_TABLE[@session_id] end
update() 点击切换源代码
更新会话状态。
一个无操作。
# File lib/cgi/session.rb, line 508 def update # don't need to update; hash is shared end