On Thu, 18 Nov 1999, Anthony Baxter wrote:
It seems to me that the Session type object as used in SQLSession is a useful general class of object (regardless of the backend storage).
There is a need for someone to write ZSession or DumbSession that simply stores the information in a in-memory dictionary (or var/session for ZEO compatibility?), which would then define the API.
Is it worth making this a more general piece of Zope? Right now, you have to do a <dtml-call Session> at the start of the transaction to get the REQUEST.SESSION object created - it would be nice if this was done automagically (and done in a way that allowed you to slot in a different Session object if you wanted it...)
How would you 'slot in' a session? Perhaps it just calls getSession(this(),REQUEST), which would be aquired from higher-on-up. This method could defined in SQLSessionFolder, or just a DTML/external method the site manager left in the root folder, or we could patch OFS/Folder.py to give it a 'Session' property defining the class of the session object we use). The getSession method would return the existing session, if it exists, or returns a fresh one. Your code would then just look like: <dtml-let session=getSession> blah </dtml-let> It would be nice if REQUEST.SESSION was filled in for you if the session class has been defined, but someone else will need to comment on its feasibility :-) -- ___ // Zen (alias Stuart Bishop) Work: zen@cs.rmit.edu.au // E N Senior Systems Alchemist Play: zen@shangri-la.dropbear.id.au //__ Computer Science, RMIT WWW: http://www.cs.rmit.edu.au/~zen