in src/main/java/org/apache/sling/caconfig/impl/def/DefaultConfigurationPersistenceStrategy.java [221:240]
private void deleteChildrenNotInCollection(Resource resource, ConfigurationCollectionPersistData data) {
ResourceResolver resourceResolver = resource.getResourceResolver();
Set<String> collectionItemNames = new HashSet<>();
for (ConfigurationPersistData item : data.getItems()) {
collectionItemNames.add(item.getCollectionItemName());
}
try {
for (Resource child : resource.getChildren()) {
if (!collectionItemNames.contains(child.getName())) {
log.trace("! Delete resource {}", child.getPath());
resourceResolver.delete(child);
}
}
}
catch (PersistenceException ex) {
throw convertPersistenceException("Unable to remove children from " + resource.getPath(), ex);
}
}