Comments inline... [2002-12-11 15:31 +0100] James Bates ([EMAIL PROTECTED]) wrote:
> > > > -----Original Message----- > > From: Vladimir R. Bossicard [mailto:[EMAIL PROTECTED] > > Sent: 11 December 2002 14:43 > > To: [EMAIL PROTECTED] > > Subject: Re: [2.0] slowly moving towards Avalon > > > > > > > > > I feel Avalon is overkill for what we need: configuration > > of components is only a minor issue in Xindice, and the > > current framework works fine IMHO... > > > > I forgot 'e.g.' when talking about configuration. From what > > I've seen, > > the configuration doesn't currently handle more complicated > > configurations (multiple children with the same name). > > > > Of course you can always spend some time enhancing the > > Xindice class but > > I prefer to use what's already out there. > > > > And the configuration is only an example. I have no experience with > > Avalon but I think that it can bring more than just the configuration. > > > > That's true. However, from the contact I've had with Avalon using Cocoon it is > s *HUGE* and quite complex framework, and frankly Xindice is too simple to > benefit from it. All Xindice needs is to start up a server engine, create > accessors to it, and that's it. Maybe I can clarify this a bit. The primary 'product' of the Avalon project is the Avalon Framework, which defines a component lifecycle and provides a few utility classes for working with components following the Avalon lifecycle. The framework jar is 54K. This includes the Configuration code. Avalon components may be provisioned and lifecycled by a tool called a 'container'. There are multiple container projects at Avalon, ranging from demo level (Tweety in jakarta-avalon-excalibur), the very lightweight (merlin1 in jakarta-avalon-excalibur), to medium weight: Fortress in jakarta-avalon-excalibur, soon to be released formally (obsoletes the venerable ECM); Phoenix in jakarta-avalon-phoenix, in release 4 and widely used; Merlin2 in jakarta-avalon-excalibur (but moving to avalon-sandbox), cutting edge container, alpha at best. The containers labelled 'medium-weight' are probably fairly heavy for Xindice, but not necessarily. Fortress is the most likely to be useful to you, although one of these days it will be possible to build an embeddable merlin2 with only those container capabilities you need. > Starting up the engine involves configuring the root collection, getting the > system data from it, and settings up filers and XML manipulation classes. > That really isn't all that complex from the Avalon point of view. It's really more about whether you perceive a need for a component architecture to help maintain a clean internal design with a minimum of ugly glue. If so, you might as well use Avalon as it does all the dirty work. If those kinds of concerns aren't coming up, then you're probably right, Avalon is likely to be overkill. Regards, Gary > > I maintain my belief that effort should go into real database work: optimizing > storage, getting queries to execute efficiently, transactioning and failover > etc... > the current Xindice framework fully allows working on such items. It is > precicely > for such work that I started the "internals" guide as it should provide some > starting points for developers to start looking at these areas. > > > James >
