diff src/main/java/christie/topology/manager/CreateTreeTopology.java @ 94:87a203c99177

update HostMessage refactor
author akahori
date Sat, 15 Sep 2018 18:59:12 +0900
parents 7abfe041b75c
children 5cd99bac9abd
line wrap: on
line diff
--- a/src/main/java/christie/topology/manager/CreateTreeTopology.java	Sat Sep 15 17:41:14 2018 +0900
+++ b/src/main/java/christie/topology/manager/CreateTreeTopology.java	Sat Sep 15 18:59:12 2018 +0900
@@ -39,7 +39,10 @@
         String nodeName = "node" + hostCount;
         // Manager connect to Node
 
-        cgm.createRemoteDGM(nodeName, newHost.hostName, newHost.port);
+        String newHostName = newHost.getHostName();
+        int newHostPort = newHost.getPort();
+
+        cgm.createRemoteDGM(nodeName, newHostName, newHostPort);
 
         getDGM(nodeName).put("nodeName", nodeName);
         getDGM(nodeName).put("cookie", MD5);
@@ -47,7 +50,7 @@
         absCookieTable.put(MD5, nodeName);
         getLocalDGM().put("hostCount", hostCount + 1);
 
-        newHost.alive = true;
+        newHost.setAlive(true);
         nameTable.put(nodeName, newHost);
         parentManager.register(nodeName);
 
@@ -62,21 +65,16 @@
             getDGM(nodeName).put("connectNodeNum", 1);
             // put parent information own
             String parentNodeName = parentManager.getMyParent();
-            HostMessage parent = nameTable.get(parentNodeName);
+            HostMessage parentHost = nameTable.get(parentNodeName);
 
-            HostMessage newParentHost = new HostMessage(parent.hostName, parent.port, "parent");
-            newParentHost.nodeName = parentNodeName;
-            newParentHost.remoteNodeName = nodeName; // address
-
-            getLocalDGM().put("nodeInfo", newParentHost);
+            // 相手からhostNameとportはもらっているので, nodeの情報だけ与えれば良い.
+            parentHost.setNodeInfo(parentNodeName, "parent", nodeName);
+            getLocalDGM().put("nodeInfo", parentHost);
             cgm.setup(new RecordTopology());
 
-            // put own information parent
-            HostMessage newChildHost = new HostMessage(newHost.hostName, newHost.port, "child" + parentManager.getMyNumber());
-            newChildHost.nodeName = nodeName;
-            newChildHost.remoteNodeName = parentNodeName;
-
-            getLocalDGM().put("nodeInfo", newChildHost);
+            // newChildHost, newHostも同じ
+            newHost.setNodeInfo(nodeName, "child" + parentManager.getMyNumber(), parentNodeName);
+            getLocalDGM().put("nodeInfo", newHost);
             cgm.setup(new RecordTopology());
         }