From 80b11bfc6ae7589b9176dfe4a6a2a05e19696282 Mon Sep 17 00:00:00 2001 From: libraryaddict Date: Sun, 15 Sep 2019 12:26:29 +1200 Subject: [PATCH] Default to empty if map is empty in serializer --- .../utilities/json/SerializerFlagWatcher.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/java/me/libraryaddict/disguise/utilities/json/SerializerFlagWatcher.java b/src/main/java/me/libraryaddict/disguise/utilities/json/SerializerFlagWatcher.java index a459d5ea..347399b2 100644 --- a/src/main/java/me/libraryaddict/disguise/utilities/json/SerializerFlagWatcher.java +++ b/src/main/java/me/libraryaddict/disguise/utilities/json/SerializerFlagWatcher.java @@ -105,8 +105,17 @@ public class SerializerFlagWatcher implements JsonDeserializer, Jso if (opt instanceof ParameterizedType) { Type val = ((ParameterizedType) opt).getActualTypeArguments()[0]; - entry.setValue(Optional.of( - gson.fromJson(gson.toJson(((LinkedTreeMap) entry.getValue()).get("value")), val))); + Optional value; + + if (((LinkedTreeMap) entry.getValue()).isEmpty()) { + value = Optional.empty(); + } else { + value = Optional + .of(gson.fromJson(gson.toJson(((LinkedTreeMap) entry.getValue()).get("value")), + val)); + } + + entry.setValue(value); } } }