From 2757c86840f3d2e3d6168c46c65d14eed0d00f3e Mon Sep 17 00:00:00 2001
From: Peter van 't Hof <p.j.van_t_hof@lumc.nl>
Date: Fri, 6 Feb 2015 16:31:02 +0100
Subject: [PATCH] Refactor code

---
 .../scala/nl/lumc/sasc/biopet/tools/VcfFilter.scala | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfFilter.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfFilter.scala
index 85d580890..76f8887cc 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfFilter.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/tools/VcfFilter.scala
@@ -145,10 +145,8 @@ object VcfFilter extends ToolCommand {
     val writer = new AsyncVariantContextWriter(new VariantContextWriterBuilder().setOutputFile(commandArgs.outputVcf).build)
     writer.writeHeader(header)
 
-    val invertedWriter = if (commandArgs.invertedOutputVcf.isDefined)
-      Some(new AsyncVariantContextWriter(new VariantContextWriterBuilder().setOutputFile(commandArgs.invertedOutputVcf.get).build))
-    else None
-    if (invertedWriter.isDefined) invertedWriter.get.writeHeader(header)
+    val invertedWriter = commandArgs.invertedOutputVcf.collect { case x => new VariantContextWriterBuilder().setOutputFile(x).build }
+    invertedWriter.foreach(_.writeHeader(header))
 
     var counterTotal = 0
     var counterLeft = 0
@@ -167,16 +165,15 @@ object VcfFilter extends ToolCommand {
         inIdSet(record)) {
         writer.add(record)
         counterLeft += 1
-      } else {
-        if (invertedWriter.isDefined) invertedWriter.get.add(record)
-      }
+      } else
+        invertedWriter.foreach(_.add(record))
       counterTotal += 1
       if (counterTotal % 100000 == 0) logger.info(counterTotal + " variants processed, " + counterLeft + " left")
     }
     logger.info(counterTotal + " variants processed, " + counterLeft + " left")
     reader.close
     writer.close
-    if (invertedWriter.isDefined) invertedWriter.get.close()
+    invertedWriter.foreach(_.close())
     logger.info("Done")
   }
 
-- 
GitLab