in src/main/java/org/apache/sling/testing/mock/jcr/MockGroup.java [66:82]
private void calcMembers(Set<Authorizable> members, Group group, Set<Group> processedGroups) throws RepositoryException {
if (!processedGroups.contains(group)) {
// mark as processed
processedGroups.add(group);
@NotNull Iterator<Authorizable> declaredIt = group.getDeclaredMembers();
while(declaredIt.hasNext()) {
Authorizable authorizable = declaredIt.next();
members.add(authorizable);
if (authorizable instanceof Group) {
Group subgroup = (Group)authorizable;
calcMembers(members, subgroup, processedGroups);
}
}
}
}