Name

DAV_COL_CREATE , DAV_RES_UPLOAD , DAV_DELETE — functions for adding, updating, deleting of DAV collections or resources

Synopsis

integer DAV_COL_CREATE ( in path varchar ,
in permissions varchar ,
in uname varchar ,
in gname varchar ,
in auth_uname varchar ,
in auth_pwd varchar );
varchar DAV_RES_UPLOAD ( in path varchar ,
in content any ,
in type varchar ,
in permissions varchar ,
in uname varchar ,
in gname varchar ,
in auth_uname varchar ,
in auth_pwd varchar );
integer DAV_DELETE ( in path varchar ,
in silent integer ,
in auth_uname varchar ,
in auth_pwd varchar );

Description

DAV_COL_CREATE creates a new collection on path, with supplied security permissions, returning a collection id (COL_ID) upon success.

DAV_RES_UPLOAD creates or replaces an existing resource on path with content, mime type and supplied security permissions. Returns a resource id (RES_ID) on success.

DAV_DELETE Removes an existing collection/resource. If silent is set to a nonzero value, no errors codes will be returned. returns 1 on success.

Parameters

path

Collection (directory) path and name of destination of upload.

content

The resource data to upload.

type

Mime type of the uploaded resource. Defaults to '' if not supplied.

permissions

Access permission string of Dav collection or resource. Defaults to '110100000R' if not supplied.

silent

If non-zero, no errors will be returned. Default is 0, meaning errors are returned.

uname

Owner user name. Default is 'dav'.

group name

Owner group name. Default is 'dav'.

auth_uname

Name of administration user capable of performing the operation. default is null.

auth_pwd

Administrator password. Default is null.

Errors

Table24.18.Errors signalled by DAV_* functions

Error Code Description
>=0 success
-1 The path (target of operation) is not valid
-2 The destination (path) is not valid
-3 Overwrite flag is not set and destination exists
-4 The target is resource, but source is collection (in copy move operations)
-5 Permissions are not valid
-6 uid is not valid
-7 gid is not valid
-8 Target is locked
-9 Destination is locked
-10 Property name is reserved (protected or private)
-11 Property does not exists
-12 Authentication failed
-13 Operation is forbidden (the authenticated user do not have a permissions for the action)
-14 the target type is not valid
-15 The umask is not valid
-16 The property already exists
-17 Invalid property value
-18 no such user
-19 no home directory

Examples

Example24.76.Creating a resource and collection

The following example shows collection creation, resource upload and removal. This sequence of commands would leave a resource A.txt in http://[host:port]/DAV/user/A/

SQL> select DB.DBA.DAV_COL_CREATE ('/DAV/user/','110100000R', 'dav','dav','dav','dav');
SQL> select DB.DBA.DAV_COL_CREATE ('/DAV/user/A/','110100000R','dav','dav','dav','dav');
SQL> select DB.DBA.DAV_RES_UPLOAD ('/DAV/user/A/A.txt','this is a test','text/plain','110100000R','dav','dav','dav','dav');
SQL> select DB.DBA.DAV_RES_UPLOAD ('/DAV/user/A/B.txt','this is a second test','text/plain','110100000R','dav','dav','dav','dav');
SQL> select DB.DBA.DAV_DELETE ('/DAV/user/A/B.txt', 0, 'dav', 'dav');