package backtype.storm; import java.io.IOException; import java.util.List; import java.util.Map; import java.util.Map.Entry; import org.apache.log4j.Logger; import backtype.storm.utils.Utils; import org.act.tstream.daemon.nimbus.NimbusServer; import org.act.tstream.daemon.nimbus.ServiceHandler; import org.act.tstream.daemon.supervisor.SupervisorManger; import org.act.tstream.utils.PathUtils; import org.act.tstream.zk.Factory; public class LocalClusterMap { public static Logger LOG = Logger.getLogger(LocalClusterMap.class); private NimbusServer nimbusServer; private ServiceHandler nimbus; private Factory zookeeper; private Map conf; private List<String> tmpDir; private SupervisorManger supervisor; public ServiceHandler getNimbus() { return nimbus; } public void setNimbus(ServiceHandler nimbus) { this.nimbus = nimbus; } public Factory getZookeeper() { return zookeeper; } public void setZookeeper(Factory zookeeper) { this.zookeeper = zookeeper; } public Map getConf() { return conf; } public void setConf(Map conf) { this.conf = conf; } public NimbusServer getNimbusServer() { return nimbusServer; } public void setNimbusServer(NimbusServer nimbusServer) { this.nimbusServer = nimbusServer; } public SupervisorManger getSupervisor() { return supervisor; } public void setSupervisor(SupervisorManger supervisor) { this.supervisor = supervisor; } public List<String> getTmpDir() { return tmpDir; } public void setTmpDir(List<String> tmpDir) { this.tmpDir = tmpDir; } public void clean() { if (supervisor != null) { supervisor.ShutdownAllWorkers(); supervisor.shutdown(); } if (nimbusServer != null) { nimbusServer.cleanup(); } if (zookeeper != null) zookeeper.shutdown(); // it will hava a problem: // java.io.IOException: Unable to delete file: // {TmpPath}\{UUID}\version-2\log.1 if (tmpDir != null) { for (String dir : tmpDir) { try { PathUtils.rmr(dir); } catch (IOException e) { // TODO Auto-generated catch block LOG.error("fail to delete " + dir, e); } } } } }