protected void awaitBootstrapCompleteService(String serviceName, long timeout, TimeUnit unit) throws TimeoutException, InterruptedException, IOException { long timeoutMillis = System.currentTimeMillis() + unit.toMillis(timeout); while (System.currentTimeMillis() < timeoutMillis) { TabularData list = serviceStateMBean.listServices(serviceName, null); if (list.size() > 0) { return; } else { Thread.sleep(500); } } throw new TimeoutException("Timeout while waiting for service: " + serviceName); }
@Override public TabularData listServices() throws IOException { TabularData services = getServiceStateMBean().listServices(); if (log.isTraceEnabled()) log.trace("listServices: " + services); return services; } }