in src/main/java/org/apache/sling/jcr/jackrabbit/accessmanager/impl/PrivilegesHelper.java [55:67]
private static void toLongestDepth(int parentDepth, Privilege parentPrivilege, Map<Privilege, Integer> privilegeToLongestDepth) {
Privilege[] declaredAggregatePrivileges = parentPrivilege.getDeclaredAggregatePrivileges();
for (Privilege privilege : declaredAggregatePrivileges) {
Integer oldValue = privilegeToLongestDepth.get(privilege);
int candidateDepth = parentDepth + 1;
if (oldValue == null || oldValue.intValue() < candidateDepth) {
privilegeToLongestDepth.put(privilege, candidateDepth);
// continue drilling down to the leaf privileges
toLongestDepth(candidateDepth, privilege, privilegeToLongestDepth);
}
}
}