gatk-3.8/scala/src/org/broadinstitute/sting/queue/engine/JobManager.scala

34 lines
882 B
Scala
Raw Normal View History

package org.broadinstitute.sting.queue.engine
import org.broadinstitute.sting.queue.function.QFunction
/**
* Creates and stops JobRunners
*/
trait JobManager[TFunction <: QFunction, TRunner <: JobRunner[TFunction]] {
/** The class type of the runner. Available at runtime even after erasure. */
def functionType: Class[TFunction]
/** The class type of the functions processed by the runner. Available at runtime even after erasure. */
def runnerType: Class[TRunner]
/** Creates a new runner.
* @param function Function for the runner.
*/
def create(function: TFunction): TRunner
/**
* Updates the status on a list of functions.
* @param runners Runners to update.
*/
def updateStatus(runners: List[TRunner]) {
}
/**
* Stops a list of functions.
* @param runners Runners to stop.
*/
def tryStop(runners: List[TRunner]) {
}
}