Mercurial > hg > Database > Christie
changeset 45:12c9bf81d429
fix TopologyManager.java
author | akahori |
---|---|
date | Thu, 02 Aug 2018 11:45:46 +0900 |
parents | 6664efac18ee |
children | 21cf500585d1 |
files | src/main/java/christie/topology/manager/TopologyManager.java |
diffstat | 1 files changed, 27 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/src/main/java/christie/topology/manager/TopologyManager.java Thu Aug 02 11:44:47 2018 +0900 +++ b/src/main/java/christie/topology/manager/TopologyManager.java Thu Aug 02 11:45:46 2018 +0900 @@ -1,6 +1,5 @@ package christie.topology.manager; -import christie.annotation.Peek; import christie.codegear.CodeGear; import christie.codegear.CodeGearManager; @@ -11,6 +10,7 @@ import java.util.HashMap; import java.util.LinkedList; +import christie.topology.HostMessage; import org.apache.log4j.Logger; import com.alexmerz.graphviz.ParseException; @@ -19,24 +19,29 @@ public class TopologyManager extends CodeGear { - @Peek - TopologyManagerConfig config; + private TopologyManagerConfig conf; + private Logger logger = Logger.getLogger(TopologyManager.class); - Logger logger = Logger.getLogger(TopologyManager.class); - + public TopologyManager(TopologyManagerConfig conf) { + this.conf = conf; + } @Override protected void run(CodeGearManager cgm) { cgm.setup(new CheckComingHost()); + getLocalDGM().put("absCookieTable", new HashMap<String, String>()); + getLocalDGM().put("config", conf ); + // if (!conf.dynamic) は, conf.dynamic = trueの動作がわからないので, 省いた. - LinkedList<String> nodeNames = new LinkedList<String>(); - HashMap<String, LinkedList<NodeInfo>> topology = new HashMap<String, LinkedList<NodeInfo>>(); + + LinkedList<String> nodeNames = new LinkedList<>(); + HashMap<String, LinkedList<NodeInfo>> topology = new HashMap<>(); int nodeNum = 0; try { - FileReader reader = new FileReader(new File(config.confFilePath)); + FileReader reader = new FileReader(new File(conf.confFilePath)); Parser parser = new Parser(); parser.parse(reader); @@ -51,11 +56,11 @@ for (Node node : nodes) { String nodeName = node.getId().getId(); nodeNames.add(nodeName); - topology.put(nodeName, new LinkedList<NodeInfo>()); + topology.put(nodeName, new LinkedList<>()); } ArrayList<Edge> edges = digraph.getEdges(); - HashMap<String, NodeInfo> hash = new HashMap<String, NodeInfo>(); + HashMap<String, NodeInfo> hash = new HashMap<>(); String connection; String source; @@ -92,10 +97,10 @@ } } catch (FileNotFoundException e) { - logger.error("File not found: " + config.confFilePath); + logger.error("File not found: " + conf.confFilePath); e.printStackTrace(); } catch (ParseException e) { - logger.error("File format error: " + config.confFilePath); + logger.error("File format error: " + conf.confFilePath); e.printStackTrace(); } @@ -115,7 +120,16 @@ cgm.setup(new ConfigWaiter()); getLocalDGM().put("nodeNum", nodeNum); - getLocalDGM().put("done", false); + + + + + + getLocalDGM().put("topology", new HashMap<String, LinkedList<HostMessage>>()); + getLocalDGM().put("createdList", new LinkedList<String>()); + cgm.setup(new CreateHash()); + + cgm.setup(new TopologyFinish()); }