# HG changeset patch # User Nozomi # Date 1448532695 -32400 # Node ID fbf3a994071e9a804a080e49265b919ca27c8d27 # Parent e8280077c2f96bdf926040068a58e1937bdec41b add MultiTopologyNodeCongingFactory to TopologyNodeConfig for over NAT diff -r e8280077c2f9 -r fbf3a994071e Alice.iml --- a/Alice.iml Thu Nov 26 03:09:14 2015 +0900 +++ b/Alice.iml Thu Nov 26 19:11:35 2015 +0900 @@ -1,6 +1,152 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r e8280077c2f9 -r fbf3a994071e src/main/java/alice/topology/node/TopologyNodeConfig.java --- a/src/main/java/alice/topology/node/TopologyNodeConfig.java Thu Nov 26 03:09:14 2015 +0900 +++ b/src/main/java/alice/topology/node/TopologyNodeConfig.java Thu Nov 26 19:11:35 2015 +0900 @@ -1,6 +1,8 @@ package alice.topology.node; import java.util.ArrayList; +import java.util.LinkedList; + import alice.daemon.Config; public class TopologyNodeConfig extends Config { @@ -10,7 +12,6 @@ public String cookie; private ArrayList eventList = new ArrayList(); - public TopologyNodeConfig(String[] args) { super(args); for (int i = 0; i< args.length; i++) { @@ -24,6 +25,29 @@ } } + public static LinkedList MultiTopologyNodeCongingFactory(String[] args) { + LinkedList configList = new LinkedList(); + LinkedList nodeConfigArgs = new LinkedList(); + + for(int i = 0; i < args.length; ++i) { + if("-host".equals(args[i])) { + if(!nodeConfigArgs.isEmpty()){ + configList.add(new TopologyNodeConfig((String[]) nodeConfigArgs.toArray()); + nodeConfigArgs = new LinkedList(); + } + ++i; + nodeConfigArgs.add(args[i]); + } else if("-port".equals(args[i])) { + ++i; + nodeConfigArgs.add(args[i]); + } else if("-cookie".equals(args[i])) { + ++i; + nodeConfigArgs.add(args[i]); + } + } + + } + public String getManagerHostName() { return managerHostName; }