Tobias Schlitt wrote: > Hi! > > On 01/30/2008 10:58 AM Derick Rethans wrote: >> On Thu, 24 Jan 2008, Tobias Schlitt wrote: > >>> After I duck some more into designing the "lock" feature for the Webdav >>> component Kore and me discussed possible implementation scenarios >>> yesterday and want to present our foundings to you here, to make a basic >>> desicion for a design concept. I try to keep the necessary background >>> information as short as possible, to not waste your time. There are >>> basically 2 possibilities to implement locking: > >>> a) As a plugin for the (currently private) Plugin-API. >>> b) Integrated into the transport and backend layer (SimpleBackend). > >> The first one, will also allow the locking to be used for other >> backends, right? > > Correct, as long as those can/will implement a certain interface we need > to design then, because there are adjustments in the backend needed to > support such a plugin (e.g a global "lock the complete backend" command > must be supported). > > Please note, that this implementation should work with other backends > but might be even more imperformant than it will be for the filesystem > based backend (e.g. for a database driven backend).
I imagine that a filesystem backend is more common than a database one. But in any case, my opinion is that the lock functionality is better implemented as a plugin. The plugin API looks like it was designed for this kind of thing, with pre and post request hooks. What other plugins are there? Are they able to use the lock plugin if needed? Do they need the lock plugin loaded, or can they load it automatically? -- Alexandru Stanoi eZ Components System Developer eZ Systems | http://ez.no -- Components mailing list [email protected] http://lists.ez.no/mailman/listinfo/components
