public boolean canUpdateGroupMembers()

in src/main/java/org/apache/sling/jackrabbit/usermanager/impl/AuthorizablePrivilegesInfoImpl.java [248:265]


    public boolean canUpdateGroupMembers(Session jcrSession, String groupId) {
        boolean hasRights = false;
        try {
            hasRights = checkAuthorizablePath(jcrSession, groupId,
                Group.class::isInstance,
                path -> {
                    //check if the non-admin user has sufficient rights on the home folder
                    AccessControlManager acm = jcrSession.getAccessControlManager();
                    return acm.hasPrivileges(path, new Privilege[] {
                                            acm.privilegeFromName(Privilege.JCR_READ),
                                            acm.privilegeFromName(PrivilegeConstants.REP_USER_MANAGEMENT)
                                    });
                });
        } catch (RepositoryException e) {
            log.warn("Failed to determine if {} can remove authorizable {}", jcrSession.getUserID(), groupId);
        }
        return hasRights;
    }