source: DCWoRMS/trunk/src/schedframe/ExecutablesList.java @ 481

Revision 481, 3.3 KB checked in by wojtekp, 13 years ago (diff)
  • Property svn:mime-type set to text/plain
RevLine 
[481]1package schedframe;
2
3import gssim.schedframe.scheduling.ExecTask;
4import gssim.schedframe.scheduling.Executable;
5
6import java.util.ArrayList;
7import java.util.Collection;
8import java.util.Collections;
9import java.util.Iterator;
10import java.util.List;
11import java.util.ListIterator;
12
13public class ExecutablesList implements List<ExecTask> {
14
15        private List<ExecTask> executables;
16        public ExecutablesList (){
17                executables = Collections.synchronizedList(new ArrayList<ExecTask>());
18        }
19
20
21        public List<Executable> getJobExecutables(String jobId){
22                List<Executable> list = new ArrayList<Executable>();
23                synchronized (executables)  {
24                        for(int i = 0; i < executables.size(); i++){
25                                Executable exec = (Executable)executables.get(i);
26                               
27                                if(exec.getJobId().equals(jobId))
28                                        list.add(exec);
29                        }
30                }
31                return list;
32        }
33       
34        public List<Executable> getTaskExecutables(String jobId, String taskId){
35               
36                List<Executable> list = new ArrayList<Executable>();
37                synchronized (executables)  {
38                        for(int i = 0; i < executables.size(); i++){
39                                Executable exec = (Executable)executables.get(i);
40                               
41                                if(exec.getJobId().equals(jobId) && exec.getId().equals(taskId))
42                                        list.add(exec);
43                        }
44                }
45                return list;
46        }
47       
48        public Executable getTaskExecutable(Integer executableId){
49                synchronized (executables)  {
50                        for (ExecTask task : executables) {
51                                Executable exec = (Executable)task;
52                                if (exec.getUniqueId() == executableId) {
53                                        return exec;
54                                }
55                        }
56                }
57                return null;
58        }
59       
60       
61        public boolean add(ExecTask arg0) {
62                return executables.add(arg0);
63        }
64
65        public void add(int arg0, ExecTask arg1) {
66                executables.add(arg0, arg1);
67        }
68
69        public boolean addAll(Collection<? extends ExecTask> arg0) {
70                return executables.addAll(arg0);
71        }
72
73        public boolean addAll(int arg0, Collection<? extends ExecTask> arg1) {
74                return executables.addAll(arg0, arg1);
75        }
76
77        public void clear() {
78                executables.clear();
79        }
80
81        public boolean contains(Object arg0) {
82                return executables.contains(arg0);
83        }
84
85        public boolean containsAll(Collection<?> arg0) {
86                return executables.containsAll(arg0);
87        }
88
89        public ExecTask get(int arg0) {
90                return executables.get(arg0);
91        }
92
93        public int indexOf(Object arg0) {
94                return indexOf(arg0);
95        }
96
97        public boolean isEmpty() {
98                return executables.isEmpty();
99        }
100
101        public Iterator<ExecTask> iterator() {
102                return executables.iterator();
103        }
104
105        public int lastIndexOf(Object arg0) {
106                return executables.lastIndexOf(arg0);
107        }
108
109        public ListIterator<ExecTask> listIterator() {
110                return executables.listIterator();
111        }
112
113        public ListIterator<ExecTask> listIterator(int arg0) {
114                return executables.listIterator(arg0);
115        }
116
117        public boolean remove(Object arg0) {
118                return executables.remove(arg0);
119        }
120
121        public ExecTask remove(int arg0) {
122                return executables.remove(arg0);
123        }
124
125        public boolean removeAll(Collection<?> arg0) {
126                return executables.removeAll(arg0);
127        }
128
129        public boolean retainAll(Collection<?> arg0) {
130                return executables.retainAll(arg0);
131        }
132
133        public ExecTask set(int arg0, ExecTask arg1) {
134                return executables.set(arg0, arg1);
135        }
136
137        public int size() {
138                return executables.size();
139        }
140
141        public List<ExecTask> subList(int arg0, int arg1) {
142                return executables.subList(arg0, arg1);
143        }
144
145        public Object[] toArray() {
146                return executables.toArray();
147        }
148
149        public <T> T[] toArray(T[] arg0) {
150                return executables.toArray(arg0);
151        }
152       
153}
154
Note: See TracBrowser for help on using the repository browser.