public boolean stop() { scheduler.stop(); try { ZKManager zkManager = new ZKManager(PropertiesUtil.loadProperties()); String serverPathStr = CommonConstants.ZK_ROOT_PATH + "/server"; List<String> serverNodeList = zkManager.getZooKeeper().getChildren(serverPathStr, false); for (int i = 0; (serverNodeList != null) && (i < serverNodeList.size()); i++) { String id = serverNodeList.get(i); String c = zkManager.getData(serverPathStr + "/" + id); if (c == null) { continue; } BasicDBObject record = (BasicDBObject) com.mongodb.util.JSON.parse(c); String ip = (String) record.get(CommonConstants.IP); if (!StringUtil.isEmpty(ip) && IpUtil.getLocalIP().equals(ip)) { zkManager.delete(serverPathStr + "/" + id); } } zkManager.close(); } catch (Exception e) { if (logger.isDebugEnabled()) e.printStackTrace(); logger.error("ModuleSchedulerServer-->>stop() error ", e); } return true; }