AbstractExpressionEvaluator implements ExpressionEvaluator { protected boolean isListEmpty(ArrayNode json) { for (JsonNode node : json) { if (!isNodeEmpty(node)) { return false; } } return true; }  @Override Object evaluateLiteralExpression(String rawExpression, String className, List<String> genericClasses); @Override boolean evaluateUnaryExpression(String rawExpression, Object resultValue, Class<?> resultClass);  }
@Test public void isListEmpty() { ArrayNode json = new ArrayNode(factory); assertTrue(expressionEvaluatorLocal.isListEmpty(json)); ObjectNode nestedNode = new ObjectNode(factory); json.add(nestedNode); assertTrue(expressionEvaluatorLocal.isListEmpty(json)); nestedNode.set("emptyField", new TextNode("")); assertTrue(expressionEvaluatorLocal.isListEmpty(json)); nestedNode.set("notEmptyField", new TextNode("text")); assertFalse(expressionEvaluatorLocal.isListEmpty(json)); }