diff --git a/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/utils/CollectionUtils.java b/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/utils/CollectionUtils.java index 80b2e3f8..f817b6b3 100755 --- a/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/utils/CollectionUtils.java +++ b/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/utils/CollectionUtils.java @@ -570,6 +570,11 @@ public class CollectionUtils { try { + if(collection == null) + { + return (null); + } + Class targetClass = (Class) typeToken.getRawType(); if(targetClass.isInstance(collection)) { @@ -602,6 +607,11 @@ public class CollectionUtils { try { + if(collection == null) + { + return (null); + } + Class targetClass = (Class) typeToken.getRawType(); if(targetClass.isInstance(collection)) { diff --git a/qqq-backend-core/src/test/java/com/kingsrook/qqq/backend/core/utils/CollectionUtilsTest.java b/qqq-backend-core/src/test/java/com/kingsrook/qqq/backend/core/utils/CollectionUtilsTest.java index 0f4a5dfa..80425535 100644 --- a/qqq-backend-core/src/test/java/com/kingsrook/qqq/backend/core/utils/CollectionUtilsTest.java +++ b/qqq-backend-core/src/test/java/com/kingsrook/qqq/backend/core/utils/CollectionUtilsTest.java @@ -23,6 +23,7 @@ package com.kingsrook.qqq.backend.core.utils; import java.util.ArrayList; +import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Hashtable; @@ -558,6 +559,9 @@ class CollectionUtilsTest extends BaseTest @Test void testUseOrWrap() { + assertNull(CollectionUtils.useOrWrap((Collection) null, TypeToken.get(ArrayList.class))); + assertNull(CollectionUtils.useOrWrap((Map) null, TypeToken.get(HashMap.class))); + { List originalList = new ArrayList<>(List.of("A", "B", "C")); ArrayList reallyArrayList = CollectionUtils.useOrWrap(originalList, new TypeToken<>() {});