dba/users  library module
UR

Summary

Drop patterns.
Tags

Author: Christian Grün, BaseX Team 2005-21, BSD License

__source : users/pattern-drop.xqm

Related documents
ViewDescriptionFormat
xqdocxqDoc xml file from the source modulexml
xqparsexqparse xml file from the source modulexml

Imports

This module is imported by 0 modules. It imports 1 modules.

(None)
imports
this
imports

Variables

3.1 $dba:SUB

Summary
Top category
Type
xs:string

Functions

4.1 dba:pattern-drop

Arities: dba:pattern-drop#2UR

Summary
Drops a pattern.
Signature
dba:pattern-drop ( $name as xs:string, $patterns as xs:string* )  as empty-sequence()
Parameters
  • name as xs:string user name
  • patterns as xs:string* database patterns
Return
  • empty-sequence()redirection
Invokes 3 functions from 2 modules
Invoked by 0 functions from 0 modules
    Annotations
    %updating()
    %rest:GET()
    %rest:path('/dba/pattern-drop')
    %rest:query-param('name','{$name}')
    %rest:query-param('pattern','{$patterns}')
    Source ( 12 lines)
    function dba:pattern-drop(
      $name      as xs:string,
      $patterns  as xs:string*
    ) as empty-sequence() {
      try {
        $patterns ! user:drop($name, .),
        util:redirect($dba:SUB, map {
          'name': $name, 'info': util:info($patterns, 'pattern', 'dropped') })
      } catch * {
        util:redirect($dba:SUB, map { 'error': $err:description })
      }
    }

    Namespaces

    The following namespaces are defined:

    PrefixUri
    annhttp://www.w3.org/2012/xquery
    dbadba/users 2 3 4 5 6 7
    resthttp://exquery.org/ns/restxq
    utildba/util

    6 RestXQ

    Paths defined 1.

    PathMethodFunction
    /dba/pattern-dropGETdba:pattern-drop#2

    Source Code

    (:~
     : Drop patterns.
     :
     : @author Christian Grün, BaseX Team 2005-21, BSD License
     :)
    module namespace dba = 'dba/users';
    
    import module namespace util = 'dba/util' at '../lib/util.xqm';
    
    (:~ Top category :)
    declare variable $dba:SUB := 'user';
    
    (:~
     : Drops a pattern.
     : @param  $name      user name
     : @param  $patterns  database patterns
     : @return redirection
     :)
    declare
      %updating
      %rest:GET
      %rest:path('/dba/pattern-drop')
      %rest:query-param('name',    '{$name}')
      %rest:query-param('pattern', '{$patterns}')
    function dba:pattern-drop(
      $name      as xs:string,
      $patterns  as xs:string*
    ) as empty-sequence() {
      try {
        $patterns ! user:drop($name, .),
        util:redirect($dba:SUB, map {
          'name': $name, 'info': util:info($patterns, 'pattern', 'dropped') })
      } catch * {
        util:redirect($dba:SUB, map { 'error': $err:description })
      }
    };