[dev] WebDAV package v0.1

Evert Pot evertpot at gmail.com
Thu Oct 8 19:57:52 UTC 2009


Here's the package for horde-git:

-------------- next part --------------
A non-text attachment was scrubbed...
Name: Horde_DAV_0.0.1.tar.gz
Type: application/x-gzip
Size: 2789 bytes
Desc: not available
URL: <http://lists.horde.org/archives/dev/attachments/20091008/18c2bdb7/attachment.bin>
-------------- next part --------------


I also made a preliminarily dav.php (end of this email).

Some notes:
   * Still needs lots of docblocks
   * Needs more testing
   * Only forwards GET, PUT, DELETE, PROPFIND, MKCOL to respective  
applications.

Since this is only intended as a compatibility layer, I'm not  
implementing the advanced features, such as custom properties.

I want to add a dedicated Web/SabreDAV interface to Kronolith,  
replacing the existing methods from the RPC system.
One suggestion is to add a new method to to Kronolith_API, called  
something like getWebDAVTree, or add a new file called Kronolith_DAV,  
which is automatically discovered(not sure how that would work within  
horde??)

All this effort is to reduce WebDAV-logic from respective  
Kronolith_API classes, and more into the protocol layer. Currently I  
see a lot of duplication of validation and little application-level  
controllers, which can all be simplified.

Feedback is highly appreciated :)

<?php
/**
  * WebDAV endpoint
  *
  * This script triggers Horde's WebDAV server.
  *
  * $Horde: horde/rpc.php,v 1.58 2009-08-03 17:04:29 jan Exp $
  *
  * Copyright 2002-2009 The Horde Project (http://www.horde.org/)
  *
  * See the enclosed file COPYING for license information (LGPL). If you
  * did not receive this file, see http://www.fsf.org/copyleft/ 
lgpl.html.
  *
  * @author Jan Schneider <jan at horde.org>
  */

require_once dirname(__FILE__) . '/lib/core.php';

$input = null;
$params = array();

/* Load base libraries. */
$horde_authentication = 'none';
require_once HORDE_BASE . '/lib/base.php';

/* Start the server */
$server = new Horde_DAV_Server();
$server->exec();


More information about the dev mailing list