From 1db238641aa1385f709c597b382ed327f8994f82 Mon Sep 17 00:00:00 2001 From: bow <bow@bow.web.id> Date: Mon, 9 Feb 2015 15:22:08 +0100 Subject: [PATCH] Fix bug caused by incorrect type usage --- .../lumc/sasc/biopet/extensions/Fastqc.scala | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Fastqc.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Fastqc.scala index 5994d5b66..5d8862e7c 100644 --- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Fastqc.scala +++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/Fastqc.scala @@ -50,19 +50,31 @@ class Fastqc(val root: Configurable) extends BiopetCommandLineFunction { override def afterGraph { this.checkExecutable + + val fastqcDir = executable.substring(0, executable.lastIndexOf("/")) + contaminants = contaminants match { + // user-defined contaminants file take precedence + case userDefinedValue @ Some(_) => userDefinedValue + // otherwise, use default contaminants file (depending on FastQC version) case None => - val fastqcDir = executable.substring(0, executable.lastIndexOf("/")) val defaultContams = getVersion match { - case "v0.11.2" => Option(new File(fastqcDir + "/Configuration/contaminant_list.txt")) - case _ => Option(new File(fastqcDir + "/Contaminants/contaminant_list.txt")) + case "v0.11.2" => new File(fastqcDir + "/Configuration/contaminant_list.txt") + case _ => new File(fastqcDir + "/Contaminants/contaminant_list.txt") } + config("contaminants", default = defaultContams) + } + + adapters = adapters match { + // user-defined contaminants file take precedence + case userDefinedValue @ Some(_) => userDefinedValue + // otherwise, check if adapters are already present (depending on FastQC version) + case None => val defaultAdapters = getVersion match { - case "v0.11.2" => Option(new File(fastqcDir + "/Configuration/adapter_list.txt")) + case "v0.11.2" => Some(new File(fastqcDir + "/Configuration/adapter_list.txt")) case _ => None } - config("contaminants", default = defaultContams) - case wrapped @ Some(_) => wrapped + defaultAdapters.collect { case adp => config("adapters", default = adp) } } } -- GitLab