def getHandle():
    #open database
    _db.open(misc.getCallableByName(settings['store']['interface']))
    #create in-memory session manager
    SessionManager.open(inMemorySessionManager.SessionManager, 1200)
    oSystemUser = _db.getItem('system')
    context = HttpContext()
    context.session = SessionManager.create(oSystemUser)
    
    currentThread().context = context
    currentThread().trans = None
    return _db
 def __create_guest_session(self):
     # create new session with the specified guest user
     self.user = _db.getItem(settings['sessionmanager']['guest'])
     new_session = SessionManager.create(settings['sessionmanager']['guest'])
     
     session_id = new_session.sessionid
     query_string = self.request.getQueryString()
     
     if '_nojavascript' in query_string:
         root_url = self.request.getRootUrl()
         path = self.request.serverVariables['PATH_INFO']
         self.response.redirect(
             '%(root_url)s/{%(session_id)s}%(path)s' % locals()
         )
     
     # add cookie with sessionid
     self.response.cookies['_sid'] = session_id
     self.response.cookies['_sid']['path'] = \
         self.request.serverVariables['SCRIPT_NAME']
     return new_session
 def __init__(self, name, target, identity):
     Thread.__init__(self, name=name, target=target)
     id = _db.getItem(identity)
     self.context = HttpContext()
     self.context.session = SessionManager.create(id)
     self.trans = None