diff --git a/src/main/java/mServer/crawler/sender/base/JsonUtils.java b/src/main/java/mServer/crawler/sender/base/JsonUtils.java index 16ffdc0c8..b21495e37 100644 --- a/src/main/java/mServer/crawler/sender/base/JsonUtils.java +++ b/src/main/java/mServer/crawler/sender/base/JsonUtils.java @@ -133,7 +133,18 @@ public static boolean hasStringElements( } public static Optional getElementValueAsString(final JsonElement aJsonElement, final String... aElementIds) { - Optional rs = Optional.empty(); + Optional rs = JsonUtils.getElement(aJsonElement, aElementIds); + if (rs.isPresent()) { + return Optional.of(rs.get().getAsString()); + } + return Optional.empty(); + } + + public static Optional getElement(final JsonElement aJsonElement, final String... aElementIds) { + Optional rs = Optional.empty(); + if (aElementIds == null || aElementIds.length == 0) { + return rs; + } JsonObject aJsonObject = aJsonElement.getAsJsonObject(); for (int i = 0; i < aElementIds.length-1; i++) { String elementId = aElementIds[i]; @@ -147,7 +158,7 @@ public static Optional getElementValueAsString(final JsonElement aJsonEl // String elementId = aElementIds[aElementIds.length-1]; if (aJsonObject != null && aJsonObject.has(elementId) && !aJsonObject.get(elementId).isJsonNull()) { - rs = Optional.of(aJsonObject.get(elementId).getAsString()); + rs = Optional.of(aJsonObject.get(elementId)); } // return rs;