in src/main/java/org/apache/sling/caconfig/resource/impl/def/DefaultConfigurationResourceResolvingStrategy.java [323:346]
private boolean include(final List<CollectionInheritanceDecider> deciders,
final String bucketName,
final Resource resource,
final Set<String> blockedItems) {
boolean result = !blockedItems.contains(resource.getName());
if ( result && deciders != null && !deciders.isEmpty() ) {
for(int i=deciders.size()-1;i>=0;i--) {
final InheritanceDecision decision = deciders.get(i).decide(resource, bucketName);
if ( decision == InheritanceDecision.EXCLUDE ) {
log.trace("- Block resource collection inheritance for bucket {}, resource {} because {} retruned EXCLUDE.",
bucketName, resource.getPath(), deciders.get(i));
result = false;
break;
} else if ( decision == InheritanceDecision.BLOCK ) {
log.trace("- Block resource collection inheritance for bucket {}, resource {} because {} retruned BLOCK.",
bucketName, resource.getPath(), deciders.get(i));
result = false;
blockedItems.add(resource.getName());
break;
}
}
}
return result;
}