+
+ def save_data(self, facility, name, data):
+ """ Save named data in the session so it can be retrieved later """
+ if facility not in cherrypy.session:
+ cherrypy.session[facility] = dict()
+ cherrypy.session[facility][name] = data
+ cherrypy.session.save()
+ self._debug('Saved session data named [%s:%s]' % (facility, name))
+
+ def get_data(self, facility, name):
+ """ Get named data in the session if available """
+ if facility not in cherrypy.session:
+ return None
+ if name not in cherrypy.session[facility]:
+ return None
+ return cherrypy.session[facility][name]
+
+ def nuke_data(self, facility, name):
+ if facility not in cherrypy.session:
+ return
+ if name not in cherrypy.session[facility]:
+ return
+ cherrypy.session[facility][name] = None
+ del cherrypy.session[facility][name]
+ cherrypy.session.save()
+ self._debug('Nuked session data named [%s:%s]' % (facility, name))