e);
}
logServiceParameters();
ServiceTemplate template = new ServiceTemplate(null, types, null);
while (true) {
DiscoveryEvent event = null;
synchronized (eventList) {
try {
event = (DiscoveryEvent) eventList.removeFirst();
} catch (NoSuchElementException e) {
try {
eventList.wait(); // XXX timeout?
} catch (InterruptedException ie) {
}
}
}
if (event != null) {
ServiceRegistrar[] registrars = event.getRegistrars();
for (int i = registrars.length; --i >= 0; ) {
ServiceRegistrar registrar = registrars[i];
serviceRef = registrar.lookup(template);
if (serviceRef != null) {
manager.terminate();