# HG changeset patch # User sugi # Date 1405694869 -32400 # Node ID fdac53a9101f7c55a04874efd342b169bf89b465 # Parent 01c4240c2ff0873f39d1e6a60a810682004bdf4c could assign FIsh Object type. but occur ArrayIndexOutOfBoundsException in importer diff -r 01c4240c2ff0 -r fdac53a9101f src/main/java/alice/test/topology/aquarium/fx/AquariumConfig.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/alice/test/topology/aquarium/fx/AquariumConfig.java Fri Jul 18 23:47:49 2014 +0900 @@ -0,0 +1,18 @@ +package alice.test.topology.aquarium.fx; + +import alice.topology.node.TopologyNodeConfig; + +public class AquariumConfig extends TopologyNodeConfig { + + public String type = "DEFAULT"; + + public AquariumConfig(String[] args) { + super(args); + for (int i = 0; i< args.length; i++) { + if ("-type".equals(args[i])) { + type = args[++i]; + } + } + } + +} diff -r 01c4240c2ff0 -r fdac53a9101f src/main/java/alice/test/topology/aquarium/fx/CreateObject.java --- a/src/main/java/alice/test/topology/aquarium/fx/CreateObject.java Fri Jul 18 19:47:04 2014 +0900 +++ b/src/main/java/alice/test/topology/aquarium/fx/CreateObject.java Fri Jul 18 23:47:49 2014 +0900 @@ -18,10 +18,11 @@ public class CreateObject extends CodeSegment{ private Receiver info = ids.create(CommandType.TAKE); // fishInfo - + private Receiver info1 = ids.create(CommandType.PEEK); // fishInfo public CreateObject(){ info.setKey("fishData"); + info1.setKey("type"); } @@ -61,10 +62,22 @@ // for read *.dae file public void addColladaObject(Group obj){ + String url = getResourceUrl(); ColModelImporter colImporter = new ColModelImporter(); - colImporter.read(getClass().getClassLoader().getResource("objects/seymourplane-150-im.dae")); + colImporter.read(getClass().getClassLoader().getResource(url)); Node[] node = colImporter.getImport(); obj.getChildren().add(node[0]); } + + public String getResourceUrl() { + String type = info1.asString(); + System.out.println(type); + for (FishType f :FishType.values()){ + if (type.equals(f.name())){ + return f.getUrl(); + } + } + return FishType.DEFAULT.getUrl(); + } } diff -r 01c4240c2ff0 -r fdac53a9101f src/main/java/alice/test/topology/aquarium/fx/FishType.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/alice/test/topology/aquarium/fx/FishType.java Fri Jul 18 23:47:49 2014 +0900 @@ -0,0 +1,17 @@ +package alice.test.topology.aquarium.fx; + +public enum FishType { + + DEFAULT("objects/seymourplane-150-im.dae"), + TUNA("objects/TUNA.dae"); + + private String url; + + FishType(String url){ + this.url = url; + } + + public String getUrl() { + return url; + } +} diff -r 01c4240c2ff0 -r fdac53a9101f src/main/java/alice/test/topology/aquarium/fx/StartAquariumFX.java --- a/src/main/java/alice/test/topology/aquarium/fx/StartAquariumFX.java Fri Jul 18 19:47:04 2014 +0900 +++ b/src/main/java/alice/test/topology/aquarium/fx/StartAquariumFX.java Fri Jul 18 23:47:49 2014 +0900 @@ -1,15 +1,15 @@ package alice.test.topology.aquarium.fx; import alice.topology.node.TopologyNode; -import alice.topology.node.TopologyNodeConfig; public class StartAquariumFX { public static void main(String args[]){ - TopologyNodeConfig conf = new TopologyNodeConfig(args); + AquariumConfig conf = new AquariumConfig(args); + StartCodeSegment cs = new StartCodeSegment(); if (conf.getManagerHostName() !=null){ - new TopologyNode(conf, new StartCodeSegment()); + cs.ods.put("type", conf.type); + new TopologyNode(conf, cs); } else { - StartCodeSegment cs = new StartCodeSegment(); cs.ods.put("host", "local0"); cs.execute(); } diff -r 01c4240c2ff0 -r fdac53a9101f src/main/java/alice/topology/manager/keeparive/CatchDisconnectEvent.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/alice/topology/manager/keeparive/CatchDisconnectEvent.java Fri Jul 18 23:47:49 2014 +0900 @@ -0,0 +1,16 @@ +package alice.topology.manager.keeparive; + +import alice.daemon.ConnectionInfo; +import alice.topology.manager.CloseEventCodeSegment; + +public class CatchDisconnectEvent extends CloseEventCodeSegment{ + + @Override + public void run() { + ConnectionInfo e = getConnectionInfo(); + System.out.println("----------------------------"); + System.out.println("disconnection IPAddr"+ e.addr); + System.out.println("disconnection port"+ e.port); + System.out.println("----------------------------"); + } +}