From fea602159f7ab073ed62c18dfc73963325711d37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Prante?= Date: Mon, 6 Mar 2023 07:41:00 +0100 Subject: [PATCH] add getListMap --- .../java/org/xbib/datastructures/common/Maps.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/datastructures-common/src/main/java/org/xbib/datastructures/common/Maps.java b/datastructures-common/src/main/java/org/xbib/datastructures/common/Maps.java index 12ad6cd..30790ab 100644 --- a/datastructures-common/src/main/java/org/xbib/datastructures/common/Maps.java +++ b/datastructures-common/src/main/java/org/xbib/datastructures/common/Maps.java @@ -14,6 +14,17 @@ public class Maps { private Maps() { } + @SuppressWarnings("unchecked") + public static List> getListMap(Map map, String key) { + Object o = get(map, key); + if (o instanceof List) { + return (List>) o; + } else if (o instanceof Map) { + return List.of((Map) o); + } + return List.of(); + } + @SuppressWarnings({"unchecked"}) public static Map deepMerge(Map map, Map newMap) { for (Map.Entry e : newMap.entrySet()) { @@ -102,7 +113,7 @@ public class Maps { } } else if (oo instanceof List) { List l = (List) oo; - return (T) l.get(0); + return (T) l; } else { return (T) oo; }