From fc2af339904e89de82e9c27d1830b56c2214db77 Mon Sep 17 00:00:00 2001 From: Peter van 't Hof <p.j.van_t_hof@lumc.nl> Date: Mon, 21 Sep 2015 15:10:52 +0200 Subject: [PATCH] Still executes multisample jobs when all samples are given with --sample flag --- .../main/scala/nl/lumc/sasc/biopet/core/BiopetQScript.scala | 4 ++-- .../scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala | 2 +- .../nl/lumc/sasc/biopet/core/summary/SummaryQScript.scala | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/BiopetQScript.scala b/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/BiopetQScript.scala index 91b265986..c84c9faa8 100644 --- a/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/BiopetQScript.scala +++ b/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/BiopetQScript.scala @@ -87,8 +87,8 @@ trait BiopetQScript extends Configurable with GatkLogging { else Logging.addError("Parent of output dir: '" + outputDir.getParent + "' is not writeable, outputdir can not be created") this match { - case q: MultiSampleQScript if (q.onlySamples.nonEmpty) => - logger.info("Write summary is skipped because sample flag is used") + case q: MultiSampleQScript if q.onlySamples.nonEmpty && !q.samples.forall(x => q.onlySamples.contains(x._1)) => + logger.info("Write report is skipped because sample flag is used") case _ => reportClass.foreach(add(_)) } diff --git a/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala b/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala index baf9f5acb..17631709f 100644 --- a/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala +++ b/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/MultiSampleQScript.scala @@ -131,7 +131,7 @@ trait MultiSampleQScript extends SummaryQScript { /** Runs addAndTrackJobs method for each sample */ final def addSamplesJobs() { - if (onlySamples.isEmpty) { + if (onlySamples.isEmpty || samples.forall(x => onlySamples.contains(x._1))) { samples.foreach { case (sampleId, sample) => sample.addAndTrackJobs() } addMultiSampleJobs() } else onlySamples.foreach(sampleId => samples.get(sampleId) match { diff --git a/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/summary/SummaryQScript.scala b/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/summary/SummaryQScript.scala index 1876c2fb0..7f0fce673 100644 --- a/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/summary/SummaryQScript.scala +++ b/public/biopet-core/src/main/scala/nl/lumc/sasc/biopet/core/summary/SummaryQScript.scala @@ -136,7 +136,7 @@ trait SummaryQScript extends BiopetQScript { addChecksum(file) this match { - case q: MultiSampleQScript if (q.onlySamples.nonEmpty) => + case q: MultiSampleQScript if q.onlySamples.nonEmpty && !q.samples.forall(x => q.onlySamples.contains(x._1)) => logger.info("Write summary is skipped because sample flag is used") case _ => add(writeSummary) } -- GitLab