in src/main/java/org/apache/sling/pipes/internal/PlumberImpl.java [621:641]
void purge(ResourceResolver resolver, Instant now, int maxDays) throws PersistenceException {
final Collection<String> pipesToRemove = new ArrayList<>();
AbstractResourceVisitor visitor = new AbstractResourceVisitor() {
@Override
protected void visit(Resource res) {
Calendar cal = res.getValueMap().get(PN_STATUS_MODIFIED, Calendar.class);
if (cal != null && ChronoUnit.DAYS.between(cal.toInstant(), now) > maxDays) {
pipesToRemove.add(res.getPath());
}
}
};
visitor.accept(resolver.getResource(PIPES_REPOSITORY_PATH));
if (!pipesToRemove.isEmpty()) {
log.info("about to remove {} pipe instances", pipesToRemove.size());
for (String path : pipesToRemove) {
cleanResourceAndEmptyParents(resolver.getResource(path));
}
resolver.commit();
log.info("purge done.");
}
}