changeset 82:a02f44b709c0

add treeTestTopology
author akahori
date Sat, 15 Sep 2018 09:12:42 +0900
parents 41902f08efa7
children 2314c55534ef
files src/main/java/christie/test/topology/treeTestTopology/ChildCodeGear.java src/main/java/christie/test/topology/treeTestTopology/ParentCodeGear.java src/main/java/christie/test/topology/treeTestTopology/StartTreeTestTopology.java
diffstat 3 files changed, 84 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/christie/test/topology/treeTestTopology/ChildCodeGear.java	Sat Sep 15 09:12:42 2018 +0900
@@ -0,0 +1,19 @@
+package christie.test.topology.treeTestTopology;
+
+import christie.annotation.Peek;
+import christie.annotation.Take;
+import christie.codegear.CodeGear;
+import christie.codegear.CodeGearManager;
+
+public class ChildCodeGear  extends CodeGear {
+    @Peek
+    String nodeName;
+
+    @Override
+    protected void run(CodeGearManager cgm) {
+
+        getDGM("parent").put("childNodeName", nodeName);
+        cgm.setup(new ParentCodeGear());
+    }
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/christie/test/topology/treeTestTopology/ParentCodeGear.java	Sat Sep 15 09:12:42 2018 +0900
@@ -0,0 +1,24 @@
+package christie.test.topology.treeTestTopology;
+
+import christie.annotation.Peek;
+import christie.annotation.Take;
+import christie.codegear.CodeGear;
+import christie.codegear.CodeGearManager;
+
+public class ParentCodeGear extends CodeGear{
+    @Peek
+    String nodeName;
+
+    @Take
+    String childNodeName;
+
+    public ParentCodeGear(){
+    }
+
+
+    @Override
+    protected void run(CodeGearManager cgm) {
+        System.out.println(nodeName + " : " + childNodeName + " accept");
+        cgm.setup(new ParentCodeGear());
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/christie/test/topology/treeTestTopology/StartTreeTestTopology.java	Sat Sep 15 09:12:42 2018 +0900
@@ -0,0 +1,41 @@
+package christie.test.topology.treeTestTopology;
+
+import christie.codegear.CodeGearManager;
+import christie.codegear.StartCodeGear;
+import christie.topology.manager.StartTopologyManager;
+import christie.topology.manager.TopologyManagerConfig;
+import christie.topology.node.StartTopologyNode;
+import christie.topology.node.TopologyNodeConfig;
+
+import java.util.LinkedList;
+
+public class StartTreeTestTopology extends StartCodeGear {
+
+
+    public StartTreeTestTopology(CodeGearManager cgm) {
+        super(cgm);
+    }
+
+    public static void main(String[] args) {
+        int topologyManagerPort = 10000;
+        int topologyNodePort = 10001;
+        int nodeNum = 3;
+        String[] managerArg = {"--localPort", String.valueOf(topologyManagerPort), "--Topology", "tree"};
+        TopologyManagerConfig topologyManagerConfig = new TopologyManagerConfig(managerArg);
+        CodeGearManager topologyManagerCGM = createCGM(topologyManagerConfig.localPort);
+        new StartTopologyManager(topologyManagerCGM, topologyManagerConfig);
+
+        for (int i = 0; i < nodeNum; i++) {
+            CodeGearManager nodeCGM = createCGM(topologyNodePort + i);
+            String[] nodeArg = {
+                    "--managerPort", String.valueOf(topologyManagerConfig.localPort),
+                    "--managerHost", "localhost"};
+            TopologyNodeConfig cs = new TopologyNodeConfig(nodeArg);
+
+            new StartTopologyNode(nodeCGM, cs, new ParentCodeGear());
+
+        }
+    }
+
+
+}