> -----Original Message-----> > > What kind of extensions are we talking about? From your doc, I can see > > * Management Extensions > * Directory Extensions > * Container Components > > Management extensions would include certain things like JMX support and > Instrumentation support. > > Directory extensions would include JNDI integration, context value > customization, etc. > > Container Components include privileged code that runs in the container > space. Perhaps a shutdown component, or something else along those lines.
Sounds good to me. > Is there anything else? Probably. Specifically I've been thinking about SOAP and JMS. For example, in JMS you have a MessageListener interface which provides an onMessage(Message msg) method. If an Avalon service were able to tell a JMS-enabled container what JMS destination it wants to listen to, the container could take care of subscribing it to the destination. In the end you get an Avalon version of Message Driven Beans. This can pretty much be done using Lifecycle extensions now (I'm almost done with one version) but would be significantly easier if the extensions could get a hold of assembly attributes for the component which could convey the JMS destination information. Same holds for (Alt)RMI exporting of objects. I suppose these all fall into the "Directory Extensions" you mention. More random thoughts: One way I've been looking at it is to try to figure out the basic roles or lifecycles of a container (this is not a perfect list): - Establish Runtime Environment (Context) - Assemble Components - Provide Resources/Bundles - Handle Lifecycle - Handle Component Access (Lookups) - Handle Component decommissioning and so on. Next is to determine which of these are valid for extension. Perhaps all are. Perhaps only certain ones make sense. I'm still in the "thinking about it" stage on this one. However, off the top of my head, here are some other container extensions which might be interesting: - Clustering and Failover - Transparent Remote Service Lookup (looking up services across VMs) - Resource loading/downloading (Downloading from Maven or JNLP repository) - Hot deploy of services - Support for JINI or Javaspaces It's also a question of which of these could be implemented as normal services under Avalon 4 and which would require new capabilities. Not saying I have all the answers, but I certainly have a bunch of questions. :) jaaron --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
