annotate src/main/java/christie/topology/manager/IncomingHosts.java @ 129:2e2d761ea806

fix List Peek to Take
author akahori
date Tue, 25 Dec 2018 15:16:17 +0900
parents 87a203c99177
children e295cb59e514
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
41
akahori
parents:
diff changeset
1 package christie.topology.manager;
akahori
parents:
diff changeset
2
akahori
parents:
diff changeset
3
akahori
parents:
diff changeset
4 import christie.annotation.Peek;
akahori
parents:
diff changeset
5 import christie.annotation.Take;
akahori
parents:
diff changeset
6 import christie.codegear.CodeGear;
akahori
parents:
diff changeset
7 import christie.codegear.CodeGearManager;
akahori
parents:
diff changeset
8 import christie.topology.HostMessage;
akahori
parents:
diff changeset
9
akahori
parents:
diff changeset
10 import java.util.HashMap;
akahori
parents:
diff changeset
11 import java.util.LinkedList;
akahori
parents:
diff changeset
12
akahori
parents:
diff changeset
13 public class IncomingHosts extends CodeGear {
akahori
parents:
diff changeset
14
129
2e2d761ea806 fix List Peek to Take
akahori
parents: 94
diff changeset
15 @Take
94
87a203c99177 update HostMessage refactor
akahori
parents: 93
diff changeset
16 HashMap<String, LinkedList<HostMessage>> resultParse;
129
2e2d761ea806 fix List Peek to Take
akahori
parents: 94
diff changeset
17 @Take
60
cfd79a71f9cd refactor topology manager
akahori
parents: 59
diff changeset
18 LinkedList<String> nodeNames;
129
2e2d761ea806 fix List Peek to Take
akahori
parents: 94
diff changeset
19 @Take
60
cfd79a71f9cd refactor topology manager
akahori
parents: 59
diff changeset
20 HashMap<String, String> absCookieTable;
41
akahori
parents:
diff changeset
21
akahori
parents:
diff changeset
22 @Take // new coming host info
44
6664efac18ee fix CheckCommingHost ConfigWaiter IncommingHosts
akahori
parents: 41
diff changeset
23 HostMessage newHost;
6664efac18ee fix CheckCommingHost ConfigWaiter IncommingHosts
akahori
parents: 41
diff changeset
24 @Take
6664efac18ee fix CheckCommingHost ConfigWaiter IncommingHosts
akahori
parents: 41
diff changeset
25 String MD5;
41
akahori
parents:
diff changeset
26
akahori
parents:
diff changeset
27 public IncomingHosts() {
akahori
parents:
diff changeset
28
akahori
parents:
diff changeset
29 }
akahori
parents:
diff changeset
30
akahori
parents:
diff changeset
31 @Override
57
f4b388422045 fix public to protected run
akahori
parents: 55
diff changeset
32 protected void run(CodeGearManager cgm) {
41
akahori
parents:
diff changeset
33 // not have or match cookie
akahori
parents:
diff changeset
34 String nodeName = nodeNames.poll();
129
2e2d761ea806 fix List Peek to Take
akahori
parents: 94
diff changeset
35 getLocalDGM().put("nodeNames", nodeNames);
44
6664efac18ee fix CheckCommingHost ConfigWaiter IncommingHosts
akahori
parents: 41
diff changeset
36
94
87a203c99177 update HostMessage refactor
akahori
parents: 93
diff changeset
37 String newHostName = newHost.getHostName();
87a203c99177 update HostMessage refactor
akahori
parents: 93
diff changeset
38 int newHostPort = newHost.getPort();
87a203c99177 update HostMessage refactor
akahori
parents: 93
diff changeset
39
41
akahori
parents:
diff changeset
40 // Manager connect to Node
94
87a203c99177 update HostMessage refactor
akahori
parents: 93
diff changeset
41 cgm.createRemoteDGM(nodeName, newHostName, newHostPort);
41
akahori
parents:
diff changeset
42
44
6664efac18ee fix CheckCommingHost ConfigWaiter IncommingHosts
akahori
parents: 41
diff changeset
43 absCookieTable.put(MD5, nodeName);
129
2e2d761ea806 fix List Peek to Take
akahori
parents: 94
diff changeset
44 getLocalDGM().put("absCookieTable", absCookieTable);
41
akahori
parents:
diff changeset
45
64
f884c1bd0d36 fix IncomingHosts and RecordTopology. and refactor.
akahori
parents: 60
diff changeset
46 getDGM(nodeName).put( "nodeName", nodeName);
44
6664efac18ee fix CheckCommingHost ConfigWaiter IncommingHosts
akahori
parents: 41
diff changeset
47 getDGM(nodeName).put("cookie", MD5);
41
akahori
parents:
diff changeset
48
94
87a203c99177 update HostMessage refactor
akahori
parents: 93
diff changeset
49 LinkedList<HostMessage> nodeInfoList = resultParse.get(nodeName);
68
37601b98f0da update TopologyNode
akahori
parents: 67
diff changeset
50 getDGM(nodeName).put("connectNodeNum", nodeInfoList.size());
94
87a203c99177 update HostMessage refactor
akahori
parents: 93
diff changeset
51 for (HostMessage nodeInfo : nodeInfoList) {
87a203c99177 update HostMessage refactor
akahori
parents: 93
diff changeset
52 nodeInfo.setHostAndPort(newHostName, newHostPort);
41
akahori
parents:
diff changeset
53
94
87a203c99177 update HostMessage refactor
akahori
parents: 93
diff changeset
54 getLocalDGM().put("nodeInfo", nodeInfo);
64
f884c1bd0d36 fix IncomingHosts and RecordTopology. and refactor.
akahori
parents: 60
diff changeset
55
44
6664efac18ee fix CheckCommingHost ConfigWaiter IncommingHosts
akahori
parents: 41
diff changeset
56 cgm.setup(new RecordTopology());
41
akahori
parents:
diff changeset
57 }
129
2e2d761ea806 fix List Peek to Take
akahori
parents: 94
diff changeset
58 getLocalDGM().put("resultParse", resultParse);
2e2d761ea806 fix List Peek to Take
akahori
parents: 94
diff changeset
59
41
akahori
parents:
diff changeset
60 cgm.setup(new IncomingHosts());
akahori
parents:
diff changeset
61 }
akahori
parents:
diff changeset
62 }