From 944b9af0d38f0484bb63e9c20665ff2fadc7c18d Mon Sep 17 00:00:00 2001 From: Peter van 't Hof <p.j.van_t_hof@lumc.nl> Date: Tue, 3 Feb 2015 11:51:23 +0100 Subject: [PATCH] Added addMultisampleJobs method --- .../sasc/biopet/core/MultiSampleQScript.scala | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala index 478a26aa0..0857be0ef 100644 --- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala +++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala @@ -26,7 +26,7 @@ import org.broadinstitute.gatk.utils.commandline.{ Argument } */ trait MultiSampleQScript extends BiopetQScript { @Argument(doc = "Only Sample", shortName = "sample", required = false) - val onlySample: List[String] = Nil + private val onlySamples: List[String] = Nil require(Config.global.map.contains("samples"), "No Samples found in config") @@ -94,7 +94,7 @@ trait MultiSampleQScript extends BiopetQScript { protected def addJobs() /** function add all libraries in one call */ - protected final def addLibsJobs(): Unit = { + protected final def addPerLibJobs(): Unit = { for ((libraryId, library) <- libraries) { library.addAndTrackJobs() } @@ -128,14 +128,21 @@ trait MultiSampleQScript extends BiopetQScript { protected def sampleIds: Set[String] = ConfigUtils.any2map(Config.global.map("samples")).keySet /** Runs addAndTrackJobs method for each sample */ - final def addSamplesJobs() { - if (onlySample.isEmpty) samples.foreach { case (sampleId, sample) => sample.addAndTrackJobs() } - else onlySample.foreach(sampleId => samples.get(sampleId) match { + final def addPerSampleJobs() { + if (onlySamples.isEmpty) { + samples.foreach { case (sampleId, sample) => sample.addAndTrackJobs() } + addMultiSampleJobs() + } else onlySamples.foreach(sampleId => samples.get(sampleId) match { case Some(sample) => sample.addAndTrackJobs() case None => logger.warn("sampleId '" + sampleId + "' not found") }) } + /** + * Method where the multisample jobs should be added, this will be executed only when running the -sample argument is not given + */ + def addMultiSampleJobs() + /** Stores sample state */ private var currentSample: Option[String] = None -- GitLab