cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Guido Casper <gcas...@s-und-n.de>
Subject Repository (was Re: Linotype)
Date Fri, 02 Apr 2004 06:34:32 GMT
Rolf Kulemann wrote:
> On Sat, 2004-03-27 at 16:31, Guido Casper wrote:
> 
>>Concerning the repository ... I just committed another repository 
>>interface :-) that tries to be a best effort in consolidating all the 
>>different approaches and accommodating all concerns in a flexible way 
>>(by having opional helpers for property management, versoning and 
>>transaction management).
>>
>>Like suggested in this thread
>>http://marc.theaimsgroup.com/?t=107022316500003&r=1&w=2
>>
>>the approach does not intend to build upon the source interface but to 
>>provide an interface for different repository implementations (on top of 
>>which a RepositorySource might be implemented).
>>
>>I'll try to come up with a first cut of an implementation for a WebDAV 
>>repository by the end of next weekend.
> 
> 
> Cool.
> 
> We in the Lenya land also plan to "use a kind of repository". We tried
> to gather all our repository interface requirements in
> http://wiki.cocoondev.org/Wiki.jsp?page=LenyaRepositoryRequirements .
> 
> The last days I played around with the slide block. For example I used
> the SlideSource and the repository block to save and read from slide.
> 
> The main lack of the repository interface or slide source was:
> 
> - How to access versioning functionality
> 
> I see two obvious approaches:
> 
> 1.) Directly use the interface VerisonableSource which is implemented by
> SlideSource or use the Repository interface to create new versions etc.
> The problem is 
>  * The repository interface supports no methods for versioning
>  * SlideSource does implement the VersionableSource but the appropiate
> method bodies are quite empty.
> 
> What interests me is:
> 
>     What do u plan for versioning regarding the repository interface?

There is a RepositoryVersioningHelper interface which may serve as a 
starting point for most versioning needs.

> 
> 
> FYI: 
> 
> In Lenya land we tend to use JCR in the future and think about using
> Slide somehow now. I think the best would be to isolate slide/jcr by a
> repositroy layer in cocoon. Of course WebDAV plays a role , too. I can
> imagine WebDAV under JCR or a raw WEBdav based repository
> implementation. 
> 
> Important is imho, that all "repositories" are isolated by a common
> repository interface.

Yes I intend the Repository interface to be a (low level) facade into 
different kind of implementations like slide, jcr, webdav or an extended 
version of the current SourceRepositoryImpl (so you can run samples with 
nothing but the filesystem and HSQL).

It feels easier to manage and to use than to squeeze everything through 
the Source interface - at least for modifying operations. For read 
access Sources of course have it's use and the Source/Repository combo 
seems to be a powerful concept.

On top of this other higher level components might be build. Among the 
things I have in mind are:
-a document store accommodating a certain array of use cases and being 
simple to use from the flow layer (in fact there might be different 
kinds of document stores being shielded from the particular repository 
implementation)
-a workflow component (although that shouldn't be bound to the repository)
-link management
-a RepositorySource(2)

I would be interested what Lenya land (and others) thinks of such an 
approach.

Guido

-- 
Guido Casper
-------------------------------------------------
S&N AG, Competence Center Open Source
                     Tel.: +49-5251-1581-87
Klingenderstr. 5    mailto:gcasper@s-und-n.de
D-33100 Paderborn   http://www.s-und-n.de
-------------------------------------------------



Mime
View raw message