phpgroupware-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Phpgroupware-developers] VFS rework in progress and Filemanager upd


From: Dave Hall
Subject: Re: [Phpgroupware-developers] VFS rework in progress and Filemanager update
Date: Fri, 19 Nov 2004 08:20:14 +1100

On Thu, 2004-11-18 at 17:08 +0100, Benoit Hamet wrote:
> Heya all,
> 
> I just "finish" some work about vfs layer.
> 
> Many things are only proposals and AFAIK Dave seems to have some 
> question about it (I'm waiting his response :).

Questions and comments :)

> 
> To be short:
>   * Some code refactoring into vfs_shared : the generic code is put in 
> it, so new future layer don't need to copy&paste code, resulting in bugs 
> corrected somewhere and not in the others layers.

Cool.  Some naming conventions I would suggest:

class.vfs_.inc.php - currently vfs_shared
class.vfs_*.inc.php - concrete classes - with a signature of:
    "class vfs extends vfs"

class vfs_ should look something like this

include_once('./class.vfs_' . $GLOBALS
['phpgw_info']['server']['something'] .  '.inc.php');

> 
>   * Some new features like lock/unlock given by webdav system. I put 
> them here so, there is some generics features relatives to lock that are 
> shared between classes (typically, code to save cache, and 
> add/remove_lock_override).
> 
>   * The dav layer as been reworked for better performance, better 
> vfs_shared compliance, and Apache 2 webdav module compatibility (less 
> permissive about location than apache 1.3).

As long as it is backward compatible I will be happy :)

> 
>   * Added support for dav https repositories.

Cool!

> 
> I use the old (?) files under filemanager/tests/test.php to check some 
> way of compliance between vfs_sql and vfs_dav. I need to test with 
> test_dav.php to be able to work with sql layer (since lock method is in 
> vfs_shared).
> 
>   * I will try to work on some more generic tests for the vfs layer, but 
> time is short now. (Yes I know quality, ... :)
> 
>   * I have some Ideas about journalling (not yet supported by the dav 
> layer) and locking implementation in sql:
>     * Why not create an independant modules containing the Journalling 
> system ? so like ext2/ext3 way of life we get the journalling in some 
> case. But after a quick tour in the sql_layer, I'm not sure if we can do 
> this without a great effort ...
>     The main advantage is to share the journalling system between dav 
> and SQL or other layer ...
>     * Locking in sql could be something really simple with a separate 
> table containing the file_id and the kind of lock, with the owner.
> With the same consideration, doing this in a separate module could be a 
> goodd idea, just to permit sharing locks with different layers. Dav 
> implements it's own locking system because it's "easy" and very usefull 
> when used with webfolders under Windows...
> 
>   * Next, Why not a versionning implementation like a svn or cvs like 
> filesystem ?

Looks like a nice TODO list for 18 :)

> 
> I know, We are the 18th and the deadline was the 10th, but ... As you 
> want. I'm open to discuss...
> 
> I will send my work in a few moment after this mail, I still need to be 
> sure that there are not to many bugs :). (I will try to test the 
> test_dav.php test against an new sql one system)
> 
> Hope this will be usefull to someone (Yeah, not many people seems to use 
> DAV filesystem ;).

I have wanted to use dav, but found it a PITA.  Now might be the time to
switch :)

Cheers

Dave





reply via email to

[Prev in Thread] Current Thread [Next in Thread]