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());
 
     }