You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Rolf Kulemann <ro...@apache.org> on 2004/04/08 15:59:43 UTC

[RT] RepositorySource

Hello,

I currently test and play around with the Repository block.
I guess a RepositorySource would be useful at least for my personal
needs.

I'm going do some coding on it and wonder what involved Cocooner's think
about it.

Since it is possible to configure different "backends" being used
through the repository interface it would make sense to me to access
such a source like:

{repository:backend/path}

where backend is a name configured for a particular repository impl.
i.e.
- mywebdav as a name for webdav backend
- myslide ........

Any ideas on this?

-- 
Regards,

    Rolf Kulemann


Re: [RT] RepositorySource

Posted by Rolf Kulemann <ro...@apache.org>.
On Thu, 2004-04-08 at 15:59, Rolf Kulemann wrote:
> Hello,
> 
> I currently test and play around with the Repository block.
> I guess a RepositorySource would be useful at least for my personal
> needs.
> 
> I'm going do some coding on it and wonder what involved Cocooner's think
> about it.
> 
> Since it is possible to configure different "backends" being used
> through the repository interface it would make sense to me to access
> such a source like:
> 
> {repository:backend/path}
> 
> where backend is a name configured for a particular repository impl.
> i.e.
> - mywebdav as a name for webdav backend
> - myslide ........
> 
> Any ideas on this?

Maybe we also need to encode user name and credentials like
{repository:user:pass@backend/path}

???

-- 
Regards,

    Rolf Kulemann


Re: [RT] RepositorySource

Posted by Rolf Kulemann <ro...@apache.org>.
On Thu, 2004-04-08 at 17:08, Guido Casper wrote:
> Rolf Kulemann wrote:
> > Looking at the repository block, one will see that there is already a
> > RepositorySource, but that source and the RepositorySourceFactory are
> > not meant to be used with the new Repository interface from Guido.
> > 
> > What I have in mind is:
> > 
> > A new RepositorySourceFactory should simply look up the appropriate
> > respositroy via the RepositoryManager and pass that to RepsitorySource.
> > The source than acts on the Repository interface to provide a sources
> > functionality.
> > 
> > Does this make sense?
> 
> It does.
> However please consider the Repository interface unstable (if not at 
> "proposal stage", but definately not finished) and I currently wouldn't 
> move too quick building further components on top of it.

I agree that the rep. interface is "unstable" BUT adding another layer,
more concrete a source impl., will not cause much overhead, since it is
"a single" point of change. 

> 
> If you need a Source for accessing WebDAV, why not use the WebDAVSource?

My App does not know WebDAV and should not. Of course using the webdav
source is an option, but I thought as soon as we have alpha code seeds
for the Respository more people will look at it and maybe enhance and/or
contribute (to) it.

I think I can cope with using the WebDAVSource, but it is not really
satisfactory for me. I'm looking forward to a (new) repository soooo
looong.....

I just did a skeleton for the source and factory. It is not much code,
so that is why I can follow ur concerns, but can not agree with being
"that careful".

Is there really no space for hacking concerning the repsitory???

Using the WebDAV source means for me binding my sitemap to WebDAV. That
could be changed easy in the future I think, so if there is no space for
good old hacking, I will go that way.


Another question:

When do sources go into scratchpad? If they are unstable or "proposed"?
If so, wouldn't that mean the repository should go to scratchpad?

I also could add my source to the scratchpad.
WDYT?

-- 
Regards,

    Rolf Kulemann


Re: [RT] RepositorySource

Posted by Gianugo Rabellino <gi...@apache.org>.
Guido Casper wrote:

> Rolf Kulemann wrote:
> 
>> Looking at the repository block, one will see that there is already a
>> RepositorySource, but that source and the RepositorySourceFactory are
>> not meant to be used with the new Repository interface from Guido.
>>
>> What I have in mind is:
>>
>> A new RepositorySourceFactory should simply look up the appropriate
>> respositroy via the RepositoryManager and pass that to RepsitorySource.
>> The source than acts on the Repository interface to provide a sources
>> functionality.
>>
>> Does this make sense?
> 
> 
> It does.
> However please consider the Repository interface unstable (if not at 
> "proposal stage", but definately not finished) and I currently wouldn't 
> move too quick building further components on top of it.

+1. Let's stabilize the whole Repository concept once and for all before 
starting to add layers on top of it.

Ciao,

-- 
Gianugo Rabellino
Pro-netics s.r.l. -  http://www.pro-netics.com
Orixo, the XML business alliance - http://www.orixo.com
     (Blogging at: http://www.rabellino.it/blog/)

Re: [RT] RepositorySource

Posted by Rolf Kulemann <ro...@apache.org>.
On Thu, 2004-04-08 at 18:46, Stephan Michels wrote:
> Am Do, den 08.04.2004 schrieb Guido Casper um 17:08:
> > Rolf Kulemann wrote:
> > > Looking at the repository block, one will see that there is already a
> > > RepositorySource, but that source and the RepositorySourceFactory are
> > > not meant to be used with the new Repository interface from Guido.
> > > 
> > > What I have in mind is:
> > > 
> > > A new RepositorySourceFactory should simply look up the appropriate
> > > respositroy via the RepositoryManager and pass that to RepsitorySource.
> > > The source than acts on the Repository interface to provide a sources
> > > functionality.
> > > 
> > > Does this make sense?
> > 
> > It does.
> > However please consider the Repository interface unstable (if not at 
> > "proposal stage", but definately not finished) and I currently wouldn't 
> > move too quick building further components on top of it.
> > 
> > If you need a Source for accessing WebDAV, why not use the WebDAVSource?
> 
> What the status of the WebDAVSource? It seems that it doesn't implement
> any versioning. Or am I wrong?
> 
> Do you have plan to do something in this direction?

I do not plan to use the WebDAVSource at all. At the mom I use WebDAV
versioning via the Repository and its VersioningHelper.
See the WebDAV block and the WebDAVRepsitory.getVersioningHelper.

But the repository stuff is lacking other things than versioning i.e. I
can not retrieve a collection of nodes i.e. in a iterator.

-- 
Regards,

    Rolf Kulemann


Re: [RT] RepositorySource

Posted by Stefano Mazzocchi <st...@apache.org>.
Guido Casper wrote:

> Slide's CVS contains a JSR147 implementation as well. JSR147 strangely 
> is geared towards DeltaV-only. 

Because the spec lead is interested in versioning only ;-) [I met him 
monday]

> Slide's implementation therefore has some 
> proprietary extensions (I never understood why there is no JSR for a 
> general WebDAV API). 

JSR 170 is supposed be that and more. [in fact, the spec lead of 147 is 
the guy who wrote the versioning part of WebDAV (who later became 
DeltaV) and the versioning part of JSR170.

Ah, FYI, we have proposed JSR 170 for public review on monday. It should 
be out in 2 weeks (now it's all JCP bureaucratic time)

-- 
Stefano.


Re: [RT] RepositorySource

Posted by Guido Casper <gc...@s-und-n.de>.
Stephan Michels wrote:
> Am Do, den 08.04.2004 schrieb Guido Casper um 20:18:
> 
>>Stephan Michels wrote:
>>
>>>What the status of the WebDAVSource? It seems that it doesn't implement
>>>any versioning. Or am I wrong?
>>
>>No. I (vaguely) remember some discussion considering your 
>>VersionableSource vs. Sylvain's VersionedSource from:
>>http://www.cocoondev.org/projects/cvssource.html
>>
>>However ...
>>
>>
>>>Do you have plan to do something in this direction?
>>
>>I like the fact that WebDAV makes versions available via seperate URIs. 
>>So there is no need (and no value IMO) to have things like 
>>get/setVersion() since there is no way to anticipate the versioning 
>>scheme (i.e. what's the name of the previous version?). All you need is 
>>a way to get at an ordered list of versions which might as well be 
>>complete version URIs.
> 
> 
> Do you have an example to get older versions via URI?

The DeltaV spec has a REPORT method which allows for a version-tree 
report listing the URIs of all version resources.
http://www.webdav.org/deltav/protocol/rfc3253.html#rfc.section.3.7

Slide's WebdavResource has a report() method accounting for that.

> 
> 
>>I wonder if it's a good idea to expand this concept to the Repository 
>>interface so any implementation can make up its own or find a common URI 
>>scheme that includes versioning/branching/etc. information. It is quite 
>>easy for an application to manage things like "versioning state" on its 
>>own and the Repository stays more generic.
> 
> 
> Okay, what do you use as client? The WebDAV client of Slide? Is it good
> enough?

Well, Slide's "old" WebDAV client seems to be the most complete right now.

Slide's CVS contains a JSR147 implementation as well. JSR147 strangely 
is geared towards DeltaV-only. Slide's implementation therefore has some 
proprietary extensions (I never understood why there is no JSR for a 
general WebDAV API). AFAIU these extension has been proposed to the 
expert group (the creator of slide's implementation is a member thereof).

TBH I don't know what your best bet right now is. But Slide's "old" 
WebDAV client is quite stable, already part of Cocoon's CVS and "good 
enough" for anything I can think of right now.

Guido

> 
> 
>>getVersions() (and maybe getBranches()) objectively has to be extended 
>>to manage branches.
>>
>>WDYT about that?
> 
> 
> Yes, I think you're right. It only feels a little odd to bypass the
> Source IF.
> 
> Stephan Michels.
> 
> 


-- 
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
-------------------------------------------------


Re: [RT] RepositorySource

Posted by Stephan Michels <st...@apache.org>.
Am Do, den 08.04.2004 schrieb Guido Casper um 20:18:
> Stephan Michels wrote:
> > What the status of the WebDAVSource? It seems that it doesn't implement
> > any versioning. Or am I wrong?
> 
> No. I (vaguely) remember some discussion considering your 
> VersionableSource vs. Sylvain's VersionedSource from:
> http://www.cocoondev.org/projects/cvssource.html
> 
> However ...
> 
> > 
> > Do you have plan to do something in this direction?
> 
> I like the fact that WebDAV makes versions available via seperate URIs. 
> So there is no need (and no value IMO) to have things like 
> get/setVersion() since there is no way to anticipate the versioning 
> scheme (i.e. what's the name of the previous version?). All you need is 
> a way to get at an ordered list of versions which might as well be 
> complete version URIs.

Do you have an example to get older versions via URI?

> I wonder if it's a good idea to expand this concept to the Repository 
> interface so any implementation can make up its own or find a common URI 
> scheme that includes versioning/branching/etc. information. It is quite 
> easy for an application to manage things like "versioning state" on its 
> own and the Repository stays more generic.

Okay, what do you use as client? The WebDAV client of Slide? Is it good
enough?

> getVersions() (and maybe getBranches()) objectively has to be extended 
> to manage branches.
> 
> WDYT about that?

Yes, I think you're right. It only feels a little odd to bypass the
Source IF.

Stephan Michels.


Re: [RT] RepositorySource

Posted by Guido Casper <gc...@s-und-n.de>.
Stephan Michels wrote:
> Am Do, den 08.04.2004 schrieb Guido Casper um 17:08:
> 
>>Rolf Kulemann wrote:
>>
>>>Looking at the repository block, one will see that there is already a
>>>RepositorySource, but that source and the RepositorySourceFactory are
>>>not meant to be used with the new Repository interface from Guido.
>>>
>>>What I have in mind is:
>>>
>>>A new RepositorySourceFactory should simply look up the appropriate
>>>respositroy via the RepositoryManager and pass that to RepsitorySource.
>>>The source than acts on the Repository interface to provide a sources
>>>functionality.
>>>
>>>Does this make sense?
>>
>>It does.
>>However please consider the Repository interface unstable (if not at 
>>"proposal stage", but definately not finished) and I currently wouldn't 
>>move too quick building further components on top of it.
>>
>>If you need a Source for accessing WebDAV, why not use the WebDAVSource?
> 
> 
> What the status of the WebDAVSource? It seems that it doesn't implement
> any versioning. Or am I wrong?

No. I (vaguely) remember some discussion considering your 
VersionableSource vs. Sylvain's VersionedSource from:
http://www.cocoondev.org/projects/cvssource.html

However ...

> 
> Do you have plan to do something in this direction?

I like the fact that WebDAV makes versions available via seperate URIs. 
So there is no need (and no value IMO) to have things like 
get/setVersion() since there is no way to anticipate the versioning 
scheme (i.e. what's the name of the previous version?). All you need is 
a way to get at an ordered list of versions which might as well be 
complete version URIs.

I wonder if it's a good idea to expand this concept to the Repository 
interface so any implementation can make up its own or find a common URI 
scheme that includes versioning/branching/etc. information. It is quite 
easy for an application to manage things like "versioning state" on its 
own and the Repository stays more generic.

getVersions() (and maybe getBranches()) objectively has to be extended 
to manage branches.

WDYT about that?

> 
> I currently think about to implement a system ontop of it.

Cool.

Guido

> 
> Stephan Michels.
> 
> 

-- 
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
-------------------------------------------------

Re: [RT] RepositorySource

Posted by Stephan Michels <st...@apache.org>.
Am Do, den 08.04.2004 schrieb Guido Casper um 17:08:
> Rolf Kulemann wrote:
> > Looking at the repository block, one will see that there is already a
> > RepositorySource, but that source and the RepositorySourceFactory are
> > not meant to be used with the new Repository interface from Guido.
> > 
> > What I have in mind is:
> > 
> > A new RepositorySourceFactory should simply look up the appropriate
> > respositroy via the RepositoryManager and pass that to RepsitorySource.
> > The source than acts on the Repository interface to provide a sources
> > functionality.
> > 
> > Does this make sense?
> 
> It does.
> However please consider the Repository interface unstable (if not at 
> "proposal stage", but definately not finished) and I currently wouldn't 
> move too quick building further components on top of it.
> 
> If you need a Source for accessing WebDAV, why not use the WebDAVSource?

What the status of the WebDAVSource? It seems that it doesn't implement
any versioning. Or am I wrong?

Do you have plan to do something in this direction?

I currently think about to implement a system ontop of it.

Stephan Michels.


Re: [RT] RepositorySource

Posted by Guido Casper <gc...@s-und-n.de>.
Rolf Kulemann wrote:
> Looking at the repository block, one will see that there is already a
> RepositorySource, but that source and the RepositorySourceFactory are
> not meant to be used with the new Repository interface from Guido.
> 
> What I have in mind is:
> 
> A new RepositorySourceFactory should simply look up the appropriate
> respositroy via the RepositoryManager and pass that to RepsitorySource.
> The source than acts on the Repository interface to provide a sources
> functionality.
> 
> Does this make sense?

It does.
However please consider the Repository interface unstable (if not at 
"proposal stage", but definately not finished) and I currently wouldn't 
move too quick building further components on top of it.

If you need a Source for accessing WebDAV, why not use the WebDAVSource?

Guido

> 
> Guido?
> 
> 
> On Thu, 2004-04-08 at 15:59, Rolf Kulemann wrote:
> 
>>Hello,
>>
>>I currently test and play around with the Repository block.
>>I guess a RepositorySource would be useful at least for my personal
>>needs.
>>
>>I'm going do some coding on it and wonder what involved Cocooner's think
>>about it.
>>
>>Since it is possible to configure different "backends" being used
>>through the repository interface it would make sense to me to access
>>such a source like:
>>
>>{repository:backend/path}
>>
>>where backend is a name configured for a particular repository impl.
>>i.e.
>>- mywebdav as a name for webdav backend
>>- myslide ........
>>
>>Any ideas on this?


Re: [RT] RepositorySource

Posted by Rolf Kulemann <ro...@apache.org>.
Looking at the repository block, one will see that there is already a
RepositorySource, but that source and the RepositorySourceFactory are
not meant to be used with the new Repository interface from Guido.

What I have in mind is:

A new RepositorySourceFactory should simply look up the appropriate
respositroy via the RepositoryManager and pass that to RepsitorySource.
The source than acts on the Repository interface to provide a sources
functionality.

Does this make sense?

Guido?


On Thu, 2004-04-08 at 15:59, Rolf Kulemann wrote:
> Hello,
> 
> I currently test and play around with the Repository block.
> I guess a RepositorySource would be useful at least for my personal
> needs.
> 
> I'm going do some coding on it and wonder what involved Cocooner's think
> about it.
> 
> Since it is possible to configure different "backends" being used
> through the repository interface it would make sense to me to access
> such a source like:
> 
> {repository:backend/path}
> 
> where backend is a name configured for a particular repository impl.
> i.e.
> - mywebdav as a name for webdav backend
> - myslide ........
> 
> Any ideas on this?
-- 
Regards,

    Rolf Kulemann