Ignore:
Timestamp:
07/31/13 15:29:05 (12 years ago)
Author:
wojtekp
Message:
 
Location:
DCWoRMS/branches/coolemall/src/schedframe/scheduling/manager/tasks
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • DCWoRMS/branches/coolemall/src/schedframe/scheduling/manager/tasks/AbstractJobRegistry.java

    r481 r1151  
    22 
    33 
     4import java.util.ArrayList; 
     5import java.util.List; 
    46import java.util.concurrent.ConcurrentHashMap; 
    5  
    6 import org.apache.commons.logging.Log; 
    7 import org.apache.commons.logging.LogFactory; 
    87 
    98import schedframe.scheduling.tasks.Job; 
     
    2423         
    2524        public boolean addJob(JobInterface<?> job) { 
    26                 jobs.put(job.getId(),  job); 
     25                jobs.put(job.getId(), job); 
    2726                return true; 
    2827        } 
     
    5857                return (Job)jobs.get(jobId); 
    5958        } 
     59         
     60        public List<JobInterface<?>> getJobs(){ 
     61                List<JobInterface<?>> jobList = new ArrayList<JobInterface<?>>(); 
     62                for(String jobId:jobs.keySet()) { 
     63                        jobList.add(jobs.get(jobId)); 
     64                } 
     65                return jobList; 
     66        } 
     67 
     68        public List<JobInterface<?>> getJobs(int status) { 
     69                List<JobInterface<?>> jobList = new ArrayList<JobInterface<?>>(); 
     70                synchronized (jobs) { 
     71                        for(String jobId:jobs.keySet()){ 
     72                                JobInterface<?> job = jobs.get(jobId); 
     73                                if (job.getStatus() == status) { 
     74                                        jobList.add(job); 
     75                                } 
     76                        } 
     77                } 
     78                return jobList; 
     79        } 
    6080 
    6181} 
  • DCWoRMS/branches/coolemall/src/schedframe/scheduling/manager/tasks/JobRegistry.java

    r490 r1151  
    1414 
    1515        public JobInterface<?> getJobInfo(String jobId); 
     16         
     17        public List<JobInterface<?>> getJobs(); 
     18         
     19        public List<JobInterface<?>> getJobs(int status); 
     20         
    1621 
    1722        public TaskInterface<?> getTaskInfo(String jobId, String taskId); 
     23         
     24        public ExecutablesList getTasks();  
     25         
     26        public ExecTask getTask(String jobId, String taskId); 
    1827 
    1928         
     
    2837        public List<ExecTask> getFinishedTasks(); 
    2938 
    30  
    31         public ExecutablesList getExecutableTasks();  
    32          
    33         public ExecTask getExecutable(String jobId, String taskId); 
    34  
    3539         
    3640        public List<? extends TaskInterface<?>> getAvailableTasks(List<JobInterface<?>> jobsList); 
  • DCWoRMS/branches/coolemall/src/schedframe/scheduling/manager/tasks/JobRegistryImpl.java

    r1083 r1151  
    3838 
    3939        public boolean addExecTask(ExecTask newTask) { 
    40                 if(getExecutable(newTask.getJobId(), newTask.getId()) == null) { 
     40                if(getTask(newTask.getJobId(), newTask.getId()) == null) { 
    4141                        synchronized (executables)  { 
    4242                                executables.add(newTask); 
     
    4747        } 
    4848 
    49         public ExecutablesList getExecutableTasks() { 
     49        public ExecutablesList getTasks() { 
    5050                return executables; 
    5151        } 
     
    8181        } 
    8282         
    83         public ExecTask getExecutable(String jobId, String taskId){ 
     83        public ExecTask getTask(String jobId, String taskId){ 
    8484                synchronized (executables)  { 
    8585                        for (ExecTask task : executables) { 
     
    9393 
    9494        @SuppressWarnings("unchecked") 
    95         public List<Task> getAvailableTasks(List<JobInterface<?>> wuList) { 
     95        public List<Task> getAvailableTasks(List<JobInterface<?>> jobList) { 
    9696                List<Task> availableTasks = new ArrayList<Task>(); 
    9797                List<Task> waitingTasks = new ArrayList<Task>(); 
    9898                 
    99                 for(int i = 0; i < wuList.size(); i++){ 
    100                         JobInterface<?> wu  = (JobInterface<?>)wuList.get(i); 
    101                         waitingTasks.addAll((List<Task>)wu.getTask()); 
     99                for(int i = 0; i < jobList.size(); i++){ 
     100                        JobInterface<?> job = (JobInterface<?>)jobList.get(i); 
     101                        waitingTasks.addAll((List<Task>)job.getTask()); 
    102102                } 
    103103 
     
    178178                                                ParentType par = w.getParent(j); 
    179179                                                if(par.getTriggerState().compareTo(TaskStatesName.FINISHED) == 0){ 
    180                                                         if(!checkTaskCompletion(task.getJobId(), par.getContent())){ 
     180                                                        if(par.getContent().contains("_")){ 
     181                                                                if(!checkTaskCompletion(par.getContent().split("_")[0], par.getContent().split("_")[1])){ 
     182                                                                        continue; 
     183                                                                } 
     184                                                        } 
     185                                                        else if(!checkTaskCompletion(task.getJobId(), par.getContent())){ 
    181186                                                                continue; 
    182187                                                        } 
Note: See TracChangeset for help on using the changeset viewer.