Interface ClusterTaskScheduler
-
- All Superinterfaces:
TaskScheduler
- All Known Implementing Classes:
AbstractClusterTaskScheduler
,BpipeTaskScheduler
,BundledScriptBpipeTaskScheduler
,DummyTaskScheduler
,HTCondorTaskScheduler
,PBSProTaskScheduler
,SLURMTaskScheduler
,TGCCTaskScheduler
,TORQUETaskScheduler
public interface ClusterTaskScheduler extends TaskScheduler
This interface define a cluster task scheduler.- Since:
- 2.0
- Author:
- Laurent Jourdren
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
ClusterTaskScheduler.StatusResult
This class define a Status result return by the statusJob() method of the interface.static class
ClusterTaskScheduler.StatusValue
This enum define the values of the status of a job.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
cleanupJob(String jobId)
Cleanup after a job.void
configure(Settings settings)
Configure the scheduler.String
getSchedulerName()
Get the scheduler name.ClusterTaskScheduler.StatusResult
statusJob(String jobId)
Get the status of a job.void
stopJob(String jobId)
Stop a job.String
submitJob(String jobName, List<String> jobCommand, File jobDirectory, int taskId, int requiredMemory, int requiredProcessors)
Submit a job.-
Methods inherited from interface fr.ens.biologie.genomique.eoulsan.core.schedulers.TaskScheduler
getResult, getStatus, getTaskDoneCount, getTaskRunningCount, getTaskSubmittedCount, getTotalTaskDoneCount, getTotalTaskRunningCount, getTotalTaskSubmittedCount, start, stop, submit, submit, waitEndOfTasks
-
-
-
-
Method Detail
-
getSchedulerName
String getSchedulerName()
Get the scheduler name.- Returns:
- the name of the scheduler
-
configure
void configure(Settings settings) throws EoulsanException
Configure the scheduler.- Parameters:
settings
- Eoulsan settings- Throws:
EoulsanException
- if an error occurs while configuring the scheduler
-
submitJob
String submitJob(String jobName, List<String> jobCommand, File jobDirectory, int taskId, int requiredMemory, int requiredProcessors) throws IOException
Submit a job.- Parameters:
jobName
- job namejobCommand
- job commandjobDirectory
- job directorytaskId
- task idrequiredMemory
- required memoryrequiredProcessors
- required processors- Returns:
- a String with the id of the submitted job
- Throws:
IOException
- if an error occurs while submitting job
-
stopJob
void stopJob(String jobId) throws IOException
Stop a job.- Parameters:
jobId
- job id- Throws:
IOException
- if an error occurs while stopping the job
-
statusJob
ClusterTaskScheduler.StatusResult statusJob(String jobId) throws IOException
Get the status of a job.- Parameters:
jobId
- job id- Throws:
IOException
- if an error occurs while getting the status of the job
-
cleanupJob
void cleanupJob(String jobId) throws IOException
Cleanup after a job.- Parameters:
jobId
- job id- Throws:
IOException
- if an error occurs while cleanup
-
-