annotate src/main/java/alice/topology/node/DeleteConnection.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
470
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
1 package alice.topology.node;
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
2
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
3 import java.util.List;
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
4
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
5 import alice.codesegment.CloseEventCodeSegment;
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
6 import alice.datasegment.CommandType;
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
7 import alice.datasegment.Receiver;
483
86c45738dd9e success fix topology ..... may be
sugi
parents: 478
diff changeset
8 import alice.topology.manager.keeparive.ListManager;
470
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
9
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
10 public class DeleteConnection extends CloseEventCodeSegment {
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
11
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
12 private Receiver info = ids.create(CommandType.TAKE);
483
86c45738dd9e success fix topology ..... may be
sugi
parents: 478
diff changeset
13 private Receiver info1 = ids.create(CommandType.TAKE);
470
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
14
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
15 public DeleteConnection() {
547
e91a574b69de remove index
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 546
diff changeset
16 info.setKey("_CLIST", this);
e91a574b69de remove index
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 546
diff changeset
17 info1.setKey("_SCHEDULER", this);
470
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
18 }
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
19
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
20 @Override
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
21 public void run() {
473
041ec04d4d45 refactor
sugi
parents: 471
diff changeset
22 String name = getConnectionInfo().nodeName;
470
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
23 @SuppressWarnings("unchecked")
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
24 List<String> list = info.asClass(List.class);
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
25
501
c5072a63b257 remove comment
sugi
parents: 483
diff changeset
26 if (list.contains(name))
470
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
27 list.remove(name);
543
f3f7e256ee03 add AliceDaemon on paramater
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 539
diff changeset
28 if (aliceDaemon.dataSegment.contains(name)) {
f3f7e256ee03 add AliceDaemon on paramater
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 539
diff changeset
29 aliceDaemon.dataSegment.get(name).shutdown();
f3f7e256ee03 add AliceDaemon on paramater
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 539
diff changeset
30 aliceDaemon.dataSegment.remove(name);
478
cf345b10a21a bug fix
sugi
parents: 473
diff changeset
31 }
483
86c45738dd9e success fix topology ..... may be
sugi
parents: 478
diff changeset
32 ListManager manager = info1.asClass(ListManager.class);
543
f3f7e256ee03 add AliceDaemon on paramater
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 539
diff changeset
33 manager.deleteAll(name, aliceDaemon);
478
cf345b10a21a bug fix
sugi
parents: 473
diff changeset
34 ods.update(info.key, list);
483
86c45738dd9e success fix topology ..... may be
sugi
parents: 478
diff changeset
35 ods.update(info1.key, manager);
470
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
36 }
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
37
780ae843cdac Delete disconnect managerKey from connection list
sugi
parents:
diff changeset
38 }