From 285e2e4d01c3eede401a0e034b3a8adef16bbd9d Mon Sep 17 00:00:00 2001
From: Peter van 't Hof <p.j.van_t_hof@lumc.nl>
Date: Thu, 26 Feb 2015 14:11:25 +0100
Subject: [PATCH] Added implicit List[File]

---
 .../extensions/gatk/broad/GatkGeneral.scala   |  2 +-
 .../lumc/sasc/biopet/utils/ConfigUtils.scala  | 20 +++++++++++++++++++
 2 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/broad/GatkGeneral.scala b/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/broad/GatkGeneral.scala
index f390fa504..f3712fd54 100644
--- a/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/broad/GatkGeneral.scala
+++ b/protected/biopet-gatk-extensions/src/main/scala/nl/lumc/sasc/biopet/extensions/gatk/broad/GatkGeneral.scala
@@ -21,5 +21,5 @@ trait GatkGeneral extends CommandLineGATK with BiopetJavaCommandLineFunction {
   if (config.contains("exclude_intervals")) excludeIntervals = config("exclude_intervals").asFileList
   reference_sequence = config("reference")
   if (config.contains("gatk_key")) gatk_key = config("gatk_key")
-  if (config.contains("pedigree")) pedigree = config("pedigree").asFileList
+  if (config.contains("pedigree")) pedigree = config("pedigree")
 }
diff --git a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/utils/ConfigUtils.scala b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/utils/ConfigUtils.scala
index 2c9ae7e6a..eaea3ad41 100644
--- a/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/utils/ConfigUtils.scala
+++ b/public/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/utils/ConfigUtils.scala
@@ -313,6 +313,16 @@ object ConfigUtils extends Logging {
     any2list(any).map(_.toString)
   }
 
+  /**
+   * Convert Any to List[File]
+   * @param any Input Any value
+   * @return
+   */
+  def any2fileList(any: Any): List[File] = {
+    if (any == null) return null
+    any2list(any).map(x => new File(x.toString))
+  }
+
   /**
    * Convert Any to Map[String, Any]
    * @param any Input Any value
@@ -505,6 +515,16 @@ object ConfigUtils extends Logging {
       else Nil
     }
 
+    /**
+     * Convert ConfigValue to List[File]
+     * @param value Input ConfigValue
+     * @return
+     */
+    implicit def configValue2fileList(value: ConfigValue): List[File] = {
+      if (requiredValue(value)) any2fileList(value.value)
+      else Nil
+    }
+
     /**
      * Convert ConfigValue to Set[String]
      * @param value Input ConfigValue
-- 
GitLab