Changes

Jump to navigation Jump to search
5 bytes removed ,  12:49, 8 July 2020
no edit summary
=Conventions=
* This The module will be available if the {{Code|basex-api}} library is included found in the classpath. This is the case if you use one of the complete distributions of BaseX (zip, exe, war) of BaseX.* All functions and errors are assigned to of the {{Code|http://basex.org/modules/sessions}} namespace, which must be dynamically imported:<pre class="brush:xquery"code><nowiki>import module namespace sessions = "http://basex.org/modules/sessions";...* In this documentation, the namespace is bound to the {{Code|sessions}} prefix.* Errors are assigned to the {{Code|http:</nowiki></basex.org/errors}} code> namespace, which is statically bound to the {{Code|bxerrsessions}} prefix.* If any of the functions is called outside the servlet context, the error <code>[[XQuery Errors#BaseX Errors|basex:http]]</code> is raised.* If a specified session id is not found, <code>[[#BXSE0003Errors|BXSE0003not-found]] </code> is raised.* As sessions are side-effecting operations, all functions are flagged as ''non-deterministic''. This means that the functions As a result, some query optimizations will not be reordered by the compilersuppressed.
=Functions=
==sessions:ids==
 
{| width='100%'
|-
| width='90120' | '''Signatures'''|{{Func|sessions:ids||xs:string*}}
|-
| '''Summary'''
==sessions:created==
 
{| width='100%'
|-
| width='90120' | '''Signatures'''
|{{Func|sessions:created|$id as xs:string|xs:dateTime}}
|-
==sessions:accessed==
 
{| width='100%'
|-
| width='90120' | '''Signatures'''
|{{Func|sessions:accessed|$id as xs:string|xs:dateTime}}
|-
==sessions:names==
 
{| width='100%'
|-
| width='90120' | '''Signatures'''
|{{Func|sessions:names|$id as xs:string|xs:string*}}
|-
| '''Summary'''
|Returns the names of all variables attributes bound to the session specified by {{Mono|$id}}.
|}
==sessions:get==
 
{| width='100%'
|-
| width='90120' | '''Signatures'''|{{Func|sessions:get|$id as xs:string, $key name as xs:string|xs:string?item()*}}<br/>{{Func|sessions:get|$id as xs:string, $key name as xs:string, $default as xs:stringitem()*|xs:stringitem()*}}
|-
| '''Summary'''
|Returns the value of a variable bound to an attribute with the specified {{Code|$name}} from the session with the specified by {{Mono|$id}}. If the variable does not existattribute is unknown, an empty sequence or the optionally specified default value is returned instead.|-| '''Errors'''|{{ErrorCode|BXSE0002|#Errors$default}} the value of a session variable could not will be retrievedreturned instead.
|}
==sessions:set==
 
{| width='100%'
|-
| width='90120' | '''Signatures'''|{{Func|sessions:set|$id as xs:string, $key name as xs:string, $value as xs:stringitem()*|empty-sequence()}}
|-
| '''Summary'''
|Assigns a Returns the specified {{Code|value }} to a variable bound to the attribute with the specified {{Code|$name}} from the session with the specified by {{Mono|$id}}.
|-
| '''Errors'''
|{{Error|BXSE0001set|#Errors}} a function item was specified as The supplied value of a session variablecannot be materialized.
|}
==sessions:delete==
 
{| width='100%'
|-
| width='90120' | '''Signatures'''|{{Func|sessions:delete|$id as xs:string, $key name as xs:string|empty-sequence()}}
|-
| '''Summary'''
|Deletes a variable bound to an attribute with the specified {{Code|$name}} from the session with the specified by {{Mono|$id}}.
|}
==sessions:close==
 
{| width='100%'
|-
| width='90120' | '''Signatures'''
|{{Func|sessions:close|$id as xs:string|empty-sequence()}}
|-
=Errors=
{| width='100%' class="wikitable" width="100%"! width="5%110"|Code! width="95%"|Description|-|{{Code|BXSE0001}}|A function item was specified as value of a session attribute.|-|{{Code|BXSE0002}}|An error occurred while retrieving the value of a session attribute.
|-
|{{Code|BXSE0003set}}|A function was called outside the servlet contextThe supplied value cannot be stored.
|-
|{{Code|BXSE0004not-found}}|The specified session was is not foundavailable.
|}
=Changelog=
 
;Version 9.3
* Updated: [[#sessions:get|sessions:get]]: Values that have no XQuery type will be returned as strings.
 
;Version 9.0
* Updated: error codes updated; errors now use the module namespace
 
;Version 8.4
* Updated: Allow sequences as session values.
This module was introduced with Version 7.5.
 
[[Category:XQuery]]
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu