private List findBy()

in src/main/java/org/apache/sling/testing/clients/osgi/ServicesInfo.java [100:119]


    private List<JsonNode> findBy(String key, String value, boolean onlyReturnFirstMatch, boolean arrayContainingMatch) {
        Iterator<JsonNode> nodes = root.get("data").elements();
        List<JsonNode> results = new LinkedList<>();
        while (nodes.hasNext()) {
            JsonNode node = nodes.next();
            if ((null != node.get(key)) && (node.get(key).isValueNode())) {
                final String valueNode = node.get(key).textValue();
                if (arrayContainingMatch) {
                    if (splitPseudoJsonValueArray(valueNode).contains(value)) {
                        results.add(node);
                    }
                } else {
                    if (valueNode.equals(value)) {
                        results.add(node);
                    }
                }
            }
        }
        return results;
    }