Mercurial > hg > Database > Alice
view src/main/java/alice/topology/manager/ComingServiceHosts.java @ 402:ca2947303438 dispose
one node can work extendsTopology mode
author | sugi |
---|---|
date | Mon, 23 Jun 2014 14:02:36 +0900 |
parents | |
children | 539b7f5772c7 |
line wrap: on
line source
package alice.topology.manager; import org.msgpack.type.ValueFactory; import alice.codesegment.CodeSegment; import alice.datasegment.CommandType; import alice.datasegment.DataSegment; import alice.datasegment.Receiver; import alice.topology.HostMessage; public class ComingServiceHosts extends CodeSegment{ Receiver info = ids.create(CommandType.TAKE); Receiver info1 = ids.create(CommandType.TAKE); int BINATY_TREE = 2; public ComingServiceHosts(){ info.setKey("host"); info1.setKey("hostCount"); } @Override public void run() { HostMessage host = info.asClass(HostMessage.class); int comingHostCount = info1.asInteger(); String nodeName = "node"+comingHostCount; // Manager connect to Node DataSegment.connect(nodeName, "", host.name, host.port); ods.put(nodeName, "host", nodeName); ods.update(info1.key, comingHostCount+1); for (int i=1;i < BINATY_TREE+1; i++) { int num = 2 * comingHostCount+i; HostMessage newHost = new HostMessage(host.name, host.port, "parent", "child"+(i-1)); ods.put("node"+num, newHost); } ods.put(nodeName, ValueFactory.createNilValue()); ods.put("start", ValueFactory.createNilValue()); } }