OpenACS webDAV

Provides services to enable webDAV access to content repository items. An interface to the tDAV webDAV package. oacs-dav provides services to offer webDAV access to content repository data.

 

Package Documentation

Procedure Files

tcl/oacs-dav-install-procs.tcl       Setup procs to run at package install, should be run only once. 
tcl/oacs-dav-procs.tcl       Support for tDAV tcl webDAV implemenation 
tcl/tDAV-procs.tcl       Support for tDAV tcl webDAV implemenation 

Procedures

oacs_dav::authorize       check is user_id has permission to perform the WebDAV method on the URI 
oacs_dav::children_have_permission_p       Check permission on child items of item_id for user_id with privilege 
oacs_dav::conn       shared data for WebDAV requests 
oacs_dav::conn_setup       Setup oacs_dav::conn, authenticate user 
oacs_dav::folder_enabled        
oacs_dav::handle_request       dispatch request to the proper service contract implmentation 
oacs_dav::impl::content_folder::copy       COPY DAV method for generic content folder 
oacs_dav::impl::content_folder::delete       DELETE DAV method for generic content folder 
oacs_dav::impl::content_folder::get       GET DAV method for content folders can't get a folder 
oacs_dav::impl::content_folder::head       HEAD DAV method for content folders can't get a folder 
oacs_dav::impl::content_folder::lock       LOCK DAV method for generic content folder 
oacs_dav::impl::content_folder::mkcol       MKCOL DAV method for generic content folder 
oacs_dav::impl::content_folder::move       MOVE DAV method for generic content folder 
oacs_dav::impl::content_folder::propfind       PROPFIND DAV method for generic content folder 
oacs_dav::impl::content_folder::proppatch       PROPPATCH DAV method for generic content folder user-properties are stored in the filesystem by tDAV this doesn't do anything until tDAV allows storage of user properties in the database 
oacs_dav::impl::content_folder::unlock       UNLOCK DAV method for generic content folder 
oacs_dav::impl::content_revision::copy       COPY DAV method for generic content revision 
oacs_dav::impl::content_revision::delete       DELETE DAV method for generic content revision 
oacs_dav::impl::content_revision::get       GET DAV method for generic content revision 
oacs_dav::impl::content_revision::head       GET DAV method for generic content revision 
oacs_dav::impl::content_revision::lock       LOCK DAV method for generic content revision 
oacs_dav::impl::content_revision::mkcol       MKCOL DAV method for generic content revision 
oacs_dav::impl::content_revision::move       MOVE DAV method for generic content revision 
oacs_dav::impl::content_revision::propfind       PROPFIND DAV method for generic content revision 
oacs_dav::impl::content_revision::proppatch       PROPPATCH DAV method for generic content revision We store all user properties in the filesystem using tDAV for now So this is just a stub until we can get everything stored in the database. 
oacs_dav::impl::content_revision::put       PUT DAV method for generic content revision 
oacs_dav::impl::content_revision::unlock       UNLOCK DAV method for generic content revision 
oacs_dav::install::create_dav_mkcol_type_sc       create dav_mkcol_type service contract 
oacs_dav::install::create_dav_put_type_sc       create dav_put_type service contract 
oacs_dav::install::create_dav_sc       create dav service contract spec 
oacs_dav::install::create_service_contracts       create service contract for DAV methods 
oacs_dav::install::delete_service_contracts       remove service contracts on uninstall 
oacs_dav::install::package_install       setup DAV service contracts 
oacs_dav::install::package_uninstall       clean up for package uninstall 
oacs_dav::install::register_implementation       add default content repository service contract implementation 
oacs_dav::install::unregister_implementation       remove default service contract implementation 
oacs_dav::install::upgrade       Install new DAV service contracts 
oacs_dav::item_parent_folder_id       get the folder_id of the parent of an item from the uri 
oacs_dav::register_folder       add a uri to dav support 
oacs_dav::request_folder_id       resolves a node_id to a DAV enabled folder_id 
oacs_dav::request_site_node       resolves uri to a site node_id 
oacs_dav::set_user_id       set user_id based on authentication header 
oacs_dav::unregister_folder       remove a uri from dav support 
oacs_dav::uri_prefix        
oacs_dav::urlencode       urlencode allowing characters according to rfc 1738 http://www.w3.org/Addressing/rfc1738.txt "Thus, only alphanumerics, the special characters "$-_.+!*'(),", and reserved characters used for their reserved purposes may be used unencoded within a URL." ignore + used to encode spaces in query strings This is mainly to support MS Web Folders which do not follow the spec which states that any character may be urlencoded. 

SQL Files

sql/postgresql/oacs-dav-create.sql        
sql/postgresql/oacs-dav-drop.sql        
sql/postgresql/upgrade/upgrade-1.0b3-1.0b4.sql        
sql/postgresql/upgrade/upgrade-1.2.0d1-1.2.0d2.sql        

Content Pages

www/
     admin/
           disable.tcl WebDAV disable folders
           enable.tcl WebDAV enable folders
           index.adp
           index.tcl Administer webdav enabled folders
      index.vuh

 

  Contact Us
  Project Open Business Solutions S.L.

Calle Aprestadora 19, 12o-2a

08902 Hospitalet de Llobregat (Barcelona)

Spain

 Tel Europe: +34 609 953 751
 Tel US: +1 415 200 2465
 Mail: info@project-open.com