in src/main/java/org/apache/sling/nosql/generic/resource/impl/NoSqlResourceProvider.java [100:123]
public Iterator<Resource> listChildren(Resource parent) {
// use map to consolidate data from adapter minus deleted plus changed resources
// always sorty result alphabetically to have a consistent ordering - the nosql data source does not support ordering
SortedMap<String, Resource> children = new TreeMap<String, Resource>();
Iterator<NoSqlData> fromAdapter = adapter.getChildren(parent.getPath());
while (fromAdapter.hasNext()) {
NoSqlData item = fromAdapter.next();
if (isDeleted(item.getPath()) || changedResources.containsKey(item.getPath())) {
continue;
}
children.put(item.getPath(), new NoSqlResource(item, parent.getResourceResolver(), this));
}
Pattern childPathPattern = PathUtil.getChildPathPattern(parent.getPath());
for (NoSqlData item : changedResources.values()) {
if (childPathPattern.matcher(item.getPath()).matches()) {
children.put(item.getPath(), new NoSqlResource(item, parent.getResourceResolver(), this));
}
}
return children.values().iterator();
}