Class BpipeTaskScheduler
- java.lang.Object
-
- fr.ens.biologie.genomique.eoulsan.core.schedulers.AbstractTaskScheduler
-
- fr.ens.biologie.genomique.eoulsan.core.schedulers.clusters.AbstractClusterTaskScheduler
-
- fr.ens.biologie.genomique.eoulsan.core.schedulers.clusters.BpipeTaskScheduler
-
- All Implemented Interfaces:
ClusterTaskScheduler,TaskScheduler
- Direct Known Subclasses:
BundledScriptBpipeTaskScheduler,DummyTaskScheduler,TGCCTaskScheduler
public abstract class BpipeTaskScheduler extends AbstractClusterTaskScheduler
This class allow to submit, stop and get the status of jobs using Bpipe scheduler wrappers.- Since:
- 2.0
- Author:
- Laurent Jourdren
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class fr.ens.biologie.genomique.eoulsan.core.schedulers.clusters.AbstractClusterTaskScheduler
AbstractClusterTaskScheduler.ProcessThreadOutput
-
Nested classes/interfaces inherited from interface fr.ens.biologie.genomique.eoulsan.core.schedulers.clusters.ClusterTaskScheduler
ClusterTaskScheduler.StatusResult, ClusterTaskScheduler.StatusValue
-
-
Constructor Summary
Constructors Constructor Description BpipeTaskScheduler()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected Map<String,String>additionalScriptEnvironment()Define additional environment variable for bpipe scripts.voidcleanupJob(String jobId)Cleanup after a job.voidconfigure(Settings settings)Configure the scheduler.protected abstract FilegetBpipeCommandWrapper()Get the path to the Bpipe command wrapper.ClusterTaskScheduler.StatusResultstatusJob(String jobId)Get the status of a job.voidstopJob(String jobId)Stop a job.StringsubmitJob(String jobName, List<String> jobCommand, File jobDirectory, int taskId, int requiredMemory, int requiredProcessors)Submit a job.-
Methods inherited from class fr.ens.biologie.genomique.eoulsan.core.schedulers.clusters.AbstractClusterTaskScheduler
stop, submit
-
Methods inherited from class fr.ens.biologie.genomique.eoulsan.core.schedulers.AbstractTaskScheduler
afterExecuteTask, beforeExecuteTask, executeTask, getResult, getStatus, getStep, getStep, getTaskDoneCount, getTaskRunningCount, getTaskSubmittedCount, getTotalTaskDoneCount, getTotalTaskRunningCount, getTotalTaskSubmittedCount, isStarted, isStopped, start, submit, waitEndOfTasks
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface fr.ens.biologie.genomique.eoulsan.core.schedulers.clusters.ClusterTaskScheduler
getSchedulerName
-
Methods inherited from interface fr.ens.biologie.genomique.eoulsan.core.schedulers.TaskScheduler
getResult, getStatus, getTaskDoneCount, getTaskRunningCount, getTaskSubmittedCount, getTotalTaskDoneCount, getTotalTaskRunningCount, getTotalTaskSubmittedCount, start, submit, waitEndOfTasks
-
-
-
-
Method Detail
-
getBpipeCommandWrapper
protected abstract File getBpipeCommandWrapper()
Get the path to the Bpipe command wrapper.- Returns:
- the File object with the path to the Bpipe command wrapper
-
configure
public void configure(Settings settings) throws EoulsanException
Description copied from interface:ClusterTaskSchedulerConfigure the scheduler.- Parameters:
settings- Eoulsan settings- Throws:
EoulsanException- if an error occurs while configuring the scheduler
-
submitJob
public String submitJob(String jobName, List<String> jobCommand, File jobDirectory, int taskId, int requiredMemory, int requiredProcessors) throws IOException
Description copied from interface:ClusterTaskSchedulerSubmit 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
public void stopJob(String jobId) throws IOException
Description copied from interface:ClusterTaskSchedulerStop a job.- Parameters:
jobId- job id- Throws:
IOException- if an error occurs while stopping the job
-
statusJob
public ClusterTaskScheduler.StatusResult statusJob(String jobId) throws IOException
Description copied from interface:ClusterTaskSchedulerGet the status of a job.- Parameters:
jobId- job id- Throws:
IOException- if an error occurs while getting the status of the job
-
cleanupJob
public void cleanupJob(String jobId) throws IOException
Description copied from interface:ClusterTaskSchedulerCleanup after a job.- Parameters:
jobId- job id- Throws:
IOException- if an error occurs while cleanup
-
-