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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2838 - (hide 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 torben 2838 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