/[projects]/dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/tasks/TaskManager.java
ViewVC logotype

Contents of /dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/tasks/TaskManager.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2838 - (show annotations) (download)
Sun Jan 24 21:48:55 2016 UTC (8 years, 4 months ago) by torben
File size: 1161 byte(s)
Add first working edition
1 package dk.daoas.adressevedligehold.tasks;
2
3 import java.util.ArrayList;
4 import java.util.Collections;
5 import java.util.List;
6 import java.util.concurrent.ExecutorService;
7 import java.util.concurrent.Executors;
8
9 import dk.daoas.adressevedligehold.tasks.Task.TaskBean;
10
11 public class TaskManager {
12
13 public static final String TASKMANAGER = "TASKMANAGER";
14
15 ExecutorService executor = Executors.newFixedThreadPool(1);
16
17
18 private ArrayList<Task> tasks = new ArrayList<Task>();
19
20 private Task currentTask;
21
22 public List<TaskBean> getTasks() {
23 ArrayList<TaskBean> tmpList = new ArrayList<TaskBean>();
24 for (Task t : tasks) {
25 tmpList.add( t.getTaskBean() );
26 }
27
28 Collections.reverse(tmpList);
29
30 return tmpList;
31 }
32
33 public void setCurrentTask(Task task) {
34 this.currentTask = task;
35 }
36
37 public Task getCurrentTask() {
38 return this.currentTask;
39 }
40
41 void shutDown() {
42 if (currentTask != null) {
43 currentTask.doAbort();
44 }
45
46 executor.shutdownNow();
47 }
48
49 public void submitTask(Task newTask) {
50 newTask.setManager(this);
51
52 tasks.add(newTask);
53 executor.submit(newTask);
54 }
55
56
57 }

  ViewVC Help
Powered by ViewVC 1.1.20