DAV add & update functions
functions for adding, updating, deleting of DAV collections or resources
integer DAV_COL_CREATE
(in path 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);
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);
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
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
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');