[xquery-talk] flowrrr - how to structure a function?

Wolfgang Meier wolfgangmm at gmail.com
Wed Oct 18 13:14:57 PDT 2006


> I think Wolfgang's function library in eXist (http://demo.exist-
> db.org/xquery/functions.xq) also includes functions to create user
> sessions, this might be more difficult to make side-effect free. I.e.
> if session:create(), session:set-current-user() and session:invalidate
> () return values if called in the right order, but give errors if
> called in the wrong order, it's much more difficult because you need
> to provide access to those values.

Yes, the session module is a much more problematic example than
setting response headers. We actually thought about moving larger
parts of the functionality we need into servlet filters that could
intercept or filter the request or response, e.g. to redirect the user
if he could not be authenticated etc. For other uses of session
(caching user profiles, temporary settings or whatever), we could
either provide a higher-level abstraction, or follow Michael's
suggestion to return an XML representation that can be filtered by the
calling servlet.

Wolfgang


More information about the talk mailing list