> Maybe later. As I said, I looked at it, didn't understand it well, and had 
> problem to see how to use it.

Np don't slow down if you're gonna give me a plugin ;).

> One thing; I don't like specs that has classes (other than Exceptions and 
> EventObjects).

Right interfaces are key - I don't think we're too far off here.

<snip/>

> urn:maven:http://www.ibiblio.com/apache/avalon/component/repository
> 
> or something would work.
> 
> Sounds good?

Your explaination for the urn seems unnecessary.  A url has a scheme and 
the agent factory should know what its doing using a factory pattern.
Is the [type] the switch parameter to the factory?  

Take your time to answer or respond there's no rush.  I will be working 
on some code too.  It's been a while I need to crack the fingers and start
grokin code.



> > You're going to need a repo with a database for this.  Pulling all this
> > info as artifacts from a large repo like the ibiblio one could be a massive
> > undertaking taking on the order of seconds to pull every descriptor
> > artifcat.  Just thinking to myself here.  
> 
> I now realize that I should probably change the signature of 
> ResourceInfo[] loadResourceInfo( String resourceGroup );
> to plain
> ResourceGroup loadResourceGroup( String resourceGroup );
> 
> It doesn't change the principal.
> The point in place is that the ResourceInfo object is fairly small, and 
> repositories should be structured to some degree to avoid naming conflicts 
> (maybe they are not now, but if there were browsers around, I think that 
> would change quickly).
> The method call only returns the container that is requested in each call, not 
> the entire tree under. The implementation is free to do any kind of clever 
> pre-fetching, caching and so on under the hood.
> 
> Have you ever used the CVS browser in Eclipse or Netbeans??
> If not, do so. Point it to :pserver:[EMAIL PROTECTED]:/home/cvspublic (a 
> fairly large CVS) and you will be surprised how snappy it is. Because, under 
> the hood, it retrieves what is need now + one layer below what can be seen, 
> so when you open a folder it is instantenous.
> I expect a professional RepositoryAgent(Factory) implementation to be 
> operating in the same manner.

You're thinking well at making the Eclipse user happy by not taking too 
long and thinking ahead of the user i like that.

> > I don't know if you're privy to
> > it but I'm very bent towards enabling the conventional (maven) repo with
> > a queriable interface.  This way we can ask complex questions about the
> > artifacts (Resources) contained therein.
> 
> OK, this is a VERY good point. But any Query language or system typically 
> requires a lot of thought to be powerful, yet reasonably easy to implement.
> Let us discuss that later/separately.

Well questions about artifacts can be posed using an API interfaces 
instead of using query language.  The query language I was thinking 
about was an LDAP filter which is basically like a where clause in
prefix notation: i.e. ask for all DataStore service implementation 
blocks that are greater than 1.0 and can run in both Merlin and 
Pheonix.

(& (objectClass=block) (service=o.a.a.DataStore) (version>1.0) 
(| (container=Merlin) (container=Phoenix) ) )

Regardless, the API's implementation for an LDAP based artifact
database will use LDAP filter to neatly query the directory.  Let's
face it a heirarchical repository with meta data is a directory.

Again realize the repo will not have Avalon specific attributes
predefined for it.  We add that later as Avalon specific functionality
over the baseline.  Give users generic attributes to work with
first.

<snip/>

> Also, it is necessary to make the GUI snappy, i.e. instead of reading the 
> data when the user click somewhere, you initialize the operation and return, 
> then the event will come later and update the UI.
> 
> > > What do you think?

So awesome.  Return immediately after user commands and do asynchronous update
when command complete on GUI?  Yeah I really like that.

> you have shown here. Maybe if you could provide me with a use-case of how the 
> code in CVS is to be used, it would clear any fog in my brain.

Give me a little while let's code some more for a while - I'm sick 
of email management!

> I send the source separately, but not until after the change above, and tidy 
> it up a little bit. Expect an hour or two.

Again take your time.  I think the grouping thing opens a new dimension 
that requires some consideration.  I need to think about this too a bit
more.

Enjoy the coffee!  BTW, it's 10:15 PM here in FL but I think I'll get some coffee too.


Alex



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to