# HG changeset patch # User suruga # Date 1502012563 -32400 # Node ID 4027e55df60de71456b4383f82284c73cc3add9a # Parent b6cbf3ca3d12ad448f7bdae51a1b2de60a840fee add startKeepAlive diff -r b6cbf3ca3d12 -r 4027e55df60d src/main/java/alice/daemon/Config.java --- a/src/main/java/alice/daemon/Config.java Thu Aug 03 20:02:55 2017 +0900 +++ b/src/main/java/alice/daemon/Config.java Sun Aug 06 18:42:43 2017 +0900 @@ -9,6 +9,7 @@ public Level level = Level.FATAL; public String MCSTADDR = "224.0.0.1"; public String nis = "en1"; + public boolean useKeepAlive = true; public Config(String[] args) { for (int i = 0; i< args.length; i++) { @@ -18,6 +19,8 @@ logFile = args[++i]; } else if ("-n".equals(args[i])) { nis = args[++i]; + } else if ("--noKeepAlive".equals(args[i])) { + useKeepAlive = false; } else if ("-a".equals(args[i])) { MCSTADDR = args[++i]; } else if ("-level".equals(args[i])) { diff -r b6cbf3ca3d12 -r 4027e55df60d src/main/java/alice/topology/manager/StartTopologyManager.java --- a/src/main/java/alice/topology/manager/StartTopologyManager.java Thu Aug 03 20:02:55 2017 +0900 +++ b/src/main/java/alice/topology/manager/StartTopologyManager.java Sun Aug 06 18:42:43 2017 +0900 @@ -32,6 +32,7 @@ public void run() { new CheckComingHost(); ods.put("absCookieTable", new HashMap()); + ods.put("config", conf ); if (!conf.dynamic) { LinkedList nodeNames = new LinkedList(); diff -r b6cbf3ca3d12 -r 4027e55df60d src/main/java/alice/topology/node/ConfigurationFinish.java --- a/src/main/java/alice/topology/node/ConfigurationFinish.java Thu Aug 03 20:02:55 2017 +0900 +++ b/src/main/java/alice/topology/node/ConfigurationFinish.java Sun Aug 06 18:42:43 2017 +0900 @@ -1,5 +1,6 @@ package alice.topology.node; +import alice.topology.manager.TopologyManagerConfig; import org.msgpack.type.ValueFactory; import alice.codesegment.CodeSegment; @@ -11,6 +12,7 @@ public Receiver reverseCount = ids.create(CommandType.PEEK); public Receiver configNodeNum = ids.create(CommandType.PEEK); + public Receiver config = ids.create(CommandType.PEEK); private CodeSegment startCS; public ConfigurationFinish(CodeSegment startCS) { @@ -21,12 +23,14 @@ public void run() { int rcount = reverseCount.asInteger(); int ncount = configNodeNum.asInteger(); + TopologyManagerConfig tconfig = config.asClass(TopologyManagerConfig.class); if (rcount == ncount) { ods.put("manager", "done", ValueFactory.createNilValue()); Start cs = new Start(startCS); cs.done.setKey("manager", "start"); - new StartKeepAlive().execute(); + if (tconfig.useKeepAlive) + new StartKeepAlive().execute(); new ReceiveCloseMessage(CommandType.PEEK); ClosedEventManager.getInstance().register(DeleteConnection.class); ClosedEventManager.getInstance().setKey();