annotate src/main/java/alice/topology/node/CloseRemoteDataSegment.java @ 546:15eeb439830c dispose

setAliceDaemon in setKey
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Tue, 04 Aug 2015 19:39:47 +0900
parents 074c6716f906
children e91a574b69de
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
492
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
1 package alice.topology.node;
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
2
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
3 import alice.codesegment.CodeSegment;
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
4 import alice.datasegment.CommandType;
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
5 import alice.datasegment.Receiver;
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
6 import alice.topology.manager.keeparive.ListManager;
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
7
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
8 public class CloseRemoteDataSegment extends CodeSegment {
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
9
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
10 private Receiver info = ids.create(CommandType.TAKE);
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
11 private Receiver info1 = ids.create(CommandType.TAKE);
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
12 private Receiver info2 = ids.create(CommandType.TAKE);
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
13 private Receiver info3 = ids.create(CommandType.TAKE);
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
14
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
15 public CloseRemoteDataSegment() {
546
15eeb439830c setAliceDaemon in setKey
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 545
diff changeset
16 info.setKey("_CLOSEMESSEAGE", arg1.index, this);
15eeb439830c setAliceDaemon in setKey
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 545
diff changeset
17 info1.setKey("_CLOSEREADY", arg1.index, this);
15eeb439830c setAliceDaemon in setKey
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 545
diff changeset
18 info2.setKey("_CLOSEREADY", arg1.index, this);
15eeb439830c setAliceDaemon in setKey
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 545
diff changeset
19 info3.setKey("_SCHEDULER", arg1.index, this);
492
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
20 }
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
21
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
22 @Override
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
23 public void run() {
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
24 String managerKey = info.asString();
494
dca4b392f788 bug fix
sugi
parents: 492
diff changeset
25 ListManager manager = info3.asClass(ListManager.class);
492
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
26 if (info1.from.equals(managerKey)||info2.from.equals(managerKey)) {
543
f3f7e256ee03 add AliceDaemon on paramater
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 539
diff changeset
27 if (aliceDaemon.dataSegment.contains(managerKey))
f3f7e256ee03 add AliceDaemon on paramater
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 539
diff changeset
28 aliceDaemon.dataSegment.get(managerKey).shutdown();
545
074c6716f906 add AliceDeamon on paramater. not working TestLocalAlice
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 543
diff changeset
29 manager.deleteAll(managerKey, aliceDaemon);
492
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
30 }
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
31
502
7d83a188a4f7 bug fix keepAlive
sugi
parents: 494
diff changeset
32 ods.update(info3.key, manager);
492
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
33 new ReceiveCloseMessage(CommandType.PEEK);
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
34 }
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
35
24e535123df7 add PrepareToClose CodeSegment
sugi
parents:
diff changeset
36 }