avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Donald <dona...@apache.org>
Subject [phoenix] BlockEvent/BlockListener support
Date Thu, 20 Sep 2001 15:43:28 GMT

I have committed partial support for Applications to add in BlockListeners 
that get notified when blocks are added/removed from application. Currently 
you can't actually use it as the assembly descriptor format needs to be 
expanded to allow applications to add in listeners.

The BlockEvent contains information including
* block name
* block info object
* actual block instance

The reason for adding this listener to the Phoenix API is to allow the 
following scenario. Say we have a listener that does the following. Every 
time a block is added it searches the services the block exports and looks 
for a service that extends "WebService" interface. If it finds such a service 
exported by a block and it *also* finds another block that exports 
WebServices (like Pauls recent Soapification efforts that export SOAP 
WebServices) then it will register all the WebService objects with the 

So thus to export a Block as a web service you just have to implement an 
interface that extends WebService, add this listener to application and ... 
voila` ! It gets exported. The equivelent could be implemented for JMX, RMI, 
JNDI or any other passive application-wide service. This will hopefully make 
it much easier to add management into Avalon and we can do it in Application 
rather than Kernel space - yay!

Hopefully this will solve all the issues of cooperation between "peer" blocks 
that I have talked about in the past. So what do you think ?

Open Questions:
* Do you like it?
* Should Listeners be Configurable?
* Where/how should we setup listeners for deployment? (I am thinking 
assembly.xml at this stage)
* Is there any other information that may potentially be needed by listeners?
* Is there any other events that we should have listeners for?
* anything else?

Okay _ I think I have hacked enough for my day off - nite ;)



Be nice to your friends. If it weren't 
for them, you'd be a complete stranger.

To unsubscribe, e-mail: avalon-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: avalon-dev-help@jakarta.apache.org

View raw message