Mercurial > hg > Database > Alice
diff src/alice/topology/manager/keeparive/WaitingList.java @ 309:797267843126
Refactor
author | sugi |
---|---|
date | Tue, 26 Nov 2013 15:33:29 +0900 |
parents | src/alice/topology/manager/keeparive/PingSchedList.java@098e97954c08 |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/alice/topology/manager/keeparive/WaitingList.java Tue Nov 26 15:33:29 2013 +0900 @@ -0,0 +1,37 @@ +package alice.topology.manager.keeparive; + +import java.util.LinkedList; + +public class WaitingList { + private LinkedList<TaskInfo> list = new LinkedList<TaskInfo>(); + + public LinkedList<TaskInfo> getTaskList(){ + return list; + } + + public void addTask(TaskInfo newInfo){ + if (list.isEmpty()) { + list.add(newInfo); + } else { + int cnt = 0; + for (TaskInfo info : list){ + if (info.getSleepTime() < newInfo.getSleepTime()){ + newInfo.setSleepTime(newInfo.getSleepTime() - info.getSleepTime()); + } else if (info.getSleepTime() == newInfo.getSleepTime()){ + newInfo.setSleepTime(newInfo.getSleepTime() - info.getSleepTime()); + cnt++; + break; + } else if (info.getSleepTime() > newInfo.getSleepTime()){ + info.setSleepTime(info.getSleepTime() - newInfo.getSleepTime()); + break; + } + cnt++; + } + + list.add(cnt, newInfo); + + } + } + + +}