Mercurial > hg > Database > Christie
view src/main/java/christie/topology/node/TopologyNode.java @ 49:fd944876257b
add node and keepalive
author | akahori |
---|---|
date | Thu, 23 Aug 2018 09:29:05 +0900 |
parents | |
children | 9922e6decbe8 |
line wrap: on
line source
package christie.topology.node; import christie.codegear.CodeGear; import christie.codegear.CodeGearManager; import christie.topology.HostMessage; import christie.topology.manager.IncomingHosts; import java.net.InetAddress; import java.net.UnknownHostException; import java.util.ArrayList; public class TopologyNode extends CodeGear{ private final String manager; private final String local; private TopologyNodeConfig conf; private CodeGear startCS; public TopologyNode(TopologyNodeConfig conf, CodeGear startCS) { this.conf = conf; this.startCS = startCS; this.manager = conf.getManagerKey(); this.local = conf.getLocalKey(); } @Override protected void run(CodeGearManager cgm) { cgm.createRemoteDGM(manager, conf.getManagerHostName(), conf.getManagerPort()); String localHostName = null; try { localHostName = InetAddress.getLocalHost().getHostAddress(); } catch (UnknownHostException e) { e.printStackTrace(); } cgm.setup(new SaveCookie()); if (cgm.localPort == 0) { // local test mode localHostName = conf.getLocalKey(); } getLocalDGM().put("config" , conf ); HostMessage host = new HostMessage(localHostName, cgm.localPort); host.cookie = conf.cookie; getDGM(manager).put("hostMessage", host); getLocalDGM().put("_CLIST", new ArrayList<String>()); //getDGM(local).put("_CLIST", new ArrayList<String>()); cgm.setup(new IncomingAbstractHostName(conf)); cgm.setup(new IncomingReverseKey()); getLocalDGM().put("reverseCount", 0); cgm.setup(new ConfigurationFinish(startCS)); } }