annotate src/main/java/alice/topology/manager/keeparive/RemoveTask.java @ 419:aefbe41fcf12 dispose

change tab to space
author sugi
date Tue, 15 Jul 2014 16:00:22 +0900 (2014-07-15)
parents 8f71c3e6f11d
children e5d2141af6c2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
1 package alice.topology.manager.keeparive;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
2
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
3 import alice.codesegment.CodeSegment;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
4 import alice.datasegment.CommandType;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
5 import alice.datasegment.Receiver;
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
6
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
7 public class RemoveTask extends CodeSegment {
419
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
8 private Receiver info1 = ids.create(CommandType.TAKE); // list
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
9 private Receiver info2 = ids.create(CommandType.TAKE); // remove task
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
10
419
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
11 public RemoveTask(){
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
12 info1.setKey("_WAITINGLIST");
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
13 info2.setKey("_REMOVETASK");
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
14 }
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
15
419
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
16 @Override
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
17 public void run() {
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
18 ListManager list = info1.asClass(ListManager.class); // explicit cast
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
19 TaskInfo task = info2.asClass(TaskInfo.class);
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
20 TaskExecuter exec = TaskExecuter.getInstance();
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
21 if (exec.compareNowTask(task)){
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
22 // case: remove task is state countdown.
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
23 exec.skip();
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
24 } else {
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
25 // case: remove task is still in the waiting queue.
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
26 boolean removeFlag = list.deleteTask(task);
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
27 if (!removeFlag){
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
28 ods.put("_REMOVETASK", task);
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
29 }
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
30 }
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
31 ods.update("_WAITINGLIST", list);
aefbe41fcf12 change tab to space
sugi
parents: 345
diff changeset
32 }
345
8f71c3e6f11d Change directory structure Maven standard
sugi
parents:
diff changeset
33 }