On Tuesday 09 December 2003 06:29, Farr, Aaron wrote: > 3. Meta level dependencies don't work here. We are not talking about > something that the client needs from the service manager, we're talking > about something it looks up via JNDI. Perhaps our notion of dependency > needs to expand.
IMHO, No, we don't need to expand the notion of dependency. We need to remove the "static assembly" and introduce a "Service Availability" contract. This will allow services to "come and go" very much independently of everything else. In your case, "JMS Client" would make a call like; servicemanager.addServiceListener( JMSService.ROLE, this ); and have the methods public void serviceAdded( ServiceEvent event ); public void serviceRemoved( ServiceEvent event ); instead of doing the servicemanager.lookup( JMSService.ROLE ); Making sense? As for now, I would suggest that your client is not so "greedy". You claim it needs the "JMS Server" early, but I don't understand why is that a requirement. Create a separate thread, and start it in start(), and from there you should be able to handle this "inconvenience" for now. Cheers, Niclas --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
