From d04c7f03f980a261f4c52defedefffbfe75ad950 Mon Sep 17 00:00:00 2001 From: Peter van 't Hof <p.j.van_t_hof@lumc.nl> Date: Sat, 14 Feb 2015 17:03:17 +0100 Subject: [PATCH] Added resolveConflict option to mergeMaps --- .../main/scala/nl/lumc/sasc/biopet/utils/ConfigUtils.scala | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) 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 2c9165036..2c9ae7e6a 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 @@ -33,7 +33,8 @@ object ConfigUtils extends Logging { * @param map2 Backup for map1 * @return merged map */ - def mergeMaps(map1: Map[String, Any], map2: Map[String, Any]): Map[String, Any] = { + def mergeMaps(map1: Map[String, Any], map2: Map[String, Any], + resolveConflict: (Any, Any, String) => Any = (m1, m2, key) => m1): Map[String, Any] = { var newMap: Map[String, Any] = Map() for (key <- map1.keySet.++(map2.keySet)) { if (!map2.contains(key)) newMap += (key -> map1(key)) @@ -46,7 +47,7 @@ object ConfigUtils extends Logging { case _ => newMap += (key -> map1(key)) } } - case _ => newMap += (key -> map1(key)) + case _ => newMap += (key -> resolveConflict(map1(key), map2(key), key)) } } } -- GitLab