private void calcMemberOf()

in src/main/java/org/apache/sling/testing/mock/jcr/MockAuthorizable.java [113:126]


    private void calcMemberOf(Set<Group> memberOf, Authorizable authorizable, Set<Authorizable> processedAuthorizables) throws RepositoryException {
        if (!processedAuthorizables.contains(authorizable)) {
            // mark as processed
            processedAuthorizables.add(authorizable);

            @NotNull Iterator<Group> declaredIt = authorizable.declaredMemberOf();
            while(declaredIt.hasNext()) {
                Group group = declaredIt.next();
                memberOf.add(group);

                calcMemberOf(memberOf, group, processedAuthorizables);
            }
        }
    }