class CGI::Session::FileStore

def initialize(session, option={})

not exist, or opened if it does.
This session's FileStore file will be created if it does

Defaults to the empty string.
the filename for this session's FileStore file.
suffix:: the prefix to add to the session id when generating
Defaults to "cgi_sid_".
the filename for this session's FileStore file.
prefix:: the prefix to add to the session id when generating
on Unix systems).
file. Defaults to Dir::tmpdir (generally "/tmp"
tmpdir:: the directory to use for storing the FileStore

following options are recognised:
+option+ is a hash of options for the initializer. The

this requirement.
characters; automatically generated session ids observe
created. The session id must only contain alphanumeric
+session+ is the session for which this instance is being

user does not generally need to call it directly.
This constructor is used internally by CGI::Session. The

Create a new FileStore instance.
def initialize(session, option={})
  dir = option['tmpdir'] || Dir::tmpdir
  prefix = option['prefix'] || 'cgi_sid_'
  suffix = option['suffix'] || ''
  id = session.session_id
  require 'digest/md5'
  md5 = Digest::MD5.hexdigest(id)[0,16]
  @path = dir+"/"+prefix+md5+suffix
  if File::exist? @path
    @hash = nil
  else
    unless session.new_session
      raise CGI::Session::NoSession, "uninitialized session"
    end
    @hash = {}
  end
end