@Override
    public Collection<String> getVisibleGroupNames(String userGroup)
    {
        return getGroupProviders().parallelStream()
            .map(groupProvider -> groupProvider.getVisibleGroupNames(userGroup))
            .flatMap(Collection::stream)
            .collect(Collectors.toSet());
    }
Returns an unmodifiable Collection of groups that are visible to the members of the given group.

@param userGroup The given group
@return unmodifiable Collection of group names that are visible to the given group.
xmppserver/src/main/java/org/jivesoftware/openfire/group/GroupMultiProvider.java