You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2018/02/24 22:34:01 UTC

[isis] 02/07: ISIS-1880 Internal API: null-safe getOrDefault on maps

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 53f7e3708fd2e3c9fa7cb8037392172fe0c29a8e
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sat Feb 24 23:22:34 2018 +0100

    ISIS-1880 Internal API: null-safe getOrDefault on maps
---
 .../org/apache/isis/applib/internal/base/_NullSafe.java    | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java b/core/applib/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java
index 2e54f97..08cfef1 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java
@@ -162,6 +162,20 @@ public final class _NullSafe {
 	public static boolean isEmpty(short[] array){ return array==null || array.length == 0;}
 	public static <T> boolean isEmpty(T[] array){ return array==null || array.length == 0;}
 
+	// -- MAP
 	
+	/**
+	 * Null-safe variant of {@link java.util.Map#getOrDefault(Object, Object)}
+	 * @param map
+	 * @param key
+	 * @param defaultValue
+	 * @return
+	 */
+	public final static <K,V> V getOrDefault(final Map<K, V> map, final K key, final V defaultValue) {
+		if(map==null || key==null) {
+			return defaultValue;
+		}
+		return map.getOrDefault(key, defaultValue);
+	}
 	
 }

-- 
To stop receiving notification emails like this one, please contact
ahuber@apache.org.