Sessions Module
This XQuery Module can only be called from users with Admin permissions. It contains functions for accessing and modifying all registered server-side sessions. This module is mainly useful in the context of Web Applications.
Conventions
This module is included in the complete distributions (zip, exe, war) of BaseX.
All functions are assigned to the http://basex.org/modules/sessions namespace, which must be dynamically imported. In this documentation, the namespace is bound to the sessions prefix. Errors are assigned to the http://basex.org/errors namespace, which is statically bound to the bxerr prefix.
If the module is called outside the servlet context, the error BXSE0003 is raised. If a specified session is not found, BXSE0004 is raised.
As sessions are side-effecting operations, all functions are flagged as non-deterministic. This means that the functions will not be reordered by the compiler.
Functions
sessions:ids
| Signatures | sessions:ids() as xs:string
|
| Summary | Returns the IDs of all registered sessions. |
sessions:created
| Signatures | sessions:created($id as xs:string) as xs:dateTime
|
| Summary | Returns the creation time of the session specified by $id.
|
sessions:accessed
| Signatures | sessions:accessed($id as xs:string) as xs:dateTime
|
| Summary | Returns the last access time of the session specified by $id.
|
sessions:names
| Signatures | sessions:names($id as xs:string) as xs:string*
|
| Summary | Returns the names of all variables bound to the session specified by $id.
|
sessions:get
| Signatures | sessions:get($id as xs:string, $key as xs:string) as xs:string?sessions:get($id as xs:string, $key as xs:string, $default as xs:string) as xs:string
|
| Summary | Returns the value of a variable bound to the session specified by $id. If the variable does not exist, an empty sequence or the optionally specified default value is returned instead.
|
| Errors | BXSE0002: the value of a session variable could not be retrieved.
|
sessions:set
| Signatures | sessions:set($id as xs:string, $key as xs:string, $value as xs:string) as empty-sequence()
|
| Summary | Assigns a value to a variable bound to the session specified by $id.
|
| Errors | BXSE0001: a function item was specified as value of a session variable.
|
sessions:delete
| Signatures | sessions:delete($id as xs:string, $key as xs:string) as empty-sequence()
|
| Summary | Deletes a variable bound to the session specified by $id.
|
sessions:close
| Signatures | sessions:close($id as xs:string) as empty-sequence()
|
| Summary | Unregisters the session specified by $id.
|
Errors
| Code | Description |
|---|---|
BXSE0001
|
A function item was specified as value of a session attribute. |
BXSE0002
|
An error occurred while retrieving the value of a session attribute. |
BXSE0003
|
A function was called outside the servlet context. |
BXSE0004
|
The specified session was not found. |
Changelog
This module was introduced with Version 7.5.