annotate src/main/java/alice/test/topology/aquarium/fx/CheckAllFishInfoExist.java @ 547:e91a574b69de dispose

remove index
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Tue, 18 Aug 2015 16:15:17 +0900
parents 15eeb439830c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
384
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
1 package alice.test.topology.aquarium.fx;
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
2
397
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
3 import java.io.IOException;
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
4
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
5 import javafx.scene.Group;
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
6 import javafx.scene.Node;
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
7
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
8 import org.msgpack.MessagePack;
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
9 import org.msgpack.type.ArrayValue;
396
f64e53200228 root node send all object information to "registeredList" Key
sugi
parents: 384
diff changeset
10 import org.msgpack.type.Value;
384
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
11
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
12 import alice.codesegment.CodeSegment;
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
13 import alice.datasegment.CommandType;
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
14 import alice.datasegment.Receiver;
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
15
397
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
16 public class CheckAllFishInfoExist extends CodeSegment {
419
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
17 // this CS check all fish object exist in scene
384
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
18
419
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
19 private Receiver info = ids.create(CommandType.TAKE); // fishInfoList
467
6e304a7a60e7 remove white space
sugi
parents: 419
diff changeset
20 private Receiver info1 = ids.create(CommandType.PEEK);
397
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
21
419
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
22 public CheckAllFishInfoExist(){
547
e91a574b69de remove index
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 546
diff changeset
23 info.setKey("receiveRegisteredList", this);
e91a574b69de remove index
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 546
diff changeset
24 info1.setKey("root", this);
419
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
25 }
396
f64e53200228 root node send all object information to "registeredList" Key
sugi
parents: 384
diff changeset
26
419
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
27 @Override
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
28 public void run() {
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
29 try {
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
30 new SendDataOthers(info, info.key);
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
31 ods.put("registeredList", info.getVal());
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
32 ArrayValue fishInfoList = info.asClass(Value.class).asArrayValue();
543
f3f7e256ee03 add AliceDaemon on paramater
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 539
diff changeset
33 MessagePack packer = aliceDaemon.packer;
419
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
34 Group root = info1.asClass(Group.class);
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
35 for (Value v : fishInfoList){
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
36 boolean exist = false;
529
cb7c31848d16 add CompressedDSMs
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 467
diff changeset
37 FishInfo info = packer.convert(v, FishInfo.class);
419
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
38 if (info.name != null) {
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
39 for (Node n : root.getChildren()) {
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
40 if (info.name.equals(n.getId())) {
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
41 exist = true;
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
42 break;
467
6e304a7a60e7 remove white space
sugi
parents: 419
diff changeset
43 }
419
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
44 }
397
ca92da166f1a check All fish object in own scene om CheckAllFishInfoExist code segment
sugi
parents: 396
diff changeset
45
419
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
46 if (!exist) {
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
47 info.fromCheckExist = true;
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
48 ods.put("fishData", info);
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
49 }
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
50 }
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
51 }
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
52
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
53 } catch (IOException e) {
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
54 e.printStackTrace();
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
55 }
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
56 this.recycle();
aefbe41fcf12 change tab to space
sugi
parents: 407
diff changeset
57 }
384
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
58
56d4f93a3921 add RegisterList
sugi
parents:
diff changeset
59 }