Search in sources :

Example 1 with GroupComparator

use of com.google.gerrit.server.account.GroupComparator in project gerrit by GerritCodeReview.

the class ListGroups method filterGroups.

private List<AccountGroup> filterGroups(Collection<AccountGroup> groups) {
    List<AccountGroup> filteredGroups = new ArrayList<>(groups.size());
    for (AccountGroup group : groups) {
        if (!Strings.isNullOrEmpty(matchSubstring)) {
            if (!group.getName().toLowerCase(Locale.US).contains(matchSubstring.toLowerCase(Locale.US))) {
                continue;
            }
        }
        if (visibleToAll && !group.isVisibleToAll()) {
            continue;
        }
        if (!groupsToInspect.isEmpty() && !groupsToInspect.contains(group.getGroupUUID())) {
            continue;
        }
        GroupControl c = groupControlFactory.controlFor(group);
        if (c.isVisible()) {
            filteredGroups.add(group);
        }
    }
    Collections.sort(filteredGroups, new GroupComparator());
    return filteredGroups;
}
Also used : GroupControl(com.google.gerrit.server.account.GroupControl) GroupComparator(com.google.gerrit.server.account.GroupComparator) AccountGroup(com.google.gerrit.reviewdb.client.AccountGroup) ArrayList(java.util.ArrayList)

Aggregations

AccountGroup (com.google.gerrit.reviewdb.client.AccountGroup)1 GroupComparator (com.google.gerrit.server.account.GroupComparator)1 GroupControl (com.google.gerrit.server.account.GroupControl)1 ArrayList (java.util.ArrayList)1