boolean isValidUser()

in src/main/java/org/apache/sling/serviceusermapping/impl/ServiceUserMapperImpl.java [497:521]


    boolean isValidUser(final String userId, final String serviceName, final String subServiceName, boolean require) {
        if (userId == null) {
            log.debug("isValidUser: userId is null -> invalid");
            return false;
        }
        List<ServiceUserValidator> validators = getUserValidators();
        if (validators.isEmpty()) {
            if (require) {
                log.debug("isValidUser: No active validators for userId '{}' and require -> invalid", userId);
                return false;
            } else {
                log.debug("isValidUser: No active validators for userId '{}' -> valid", userId);
                return true;
            }
        } else {
            for (final ServiceUserValidator validator : validators) {
                if (!validator.isValid(userId, serviceName, subServiceName)) {
                    log.debug("isValidUser: Validator {} doesn't accept userId '{}' -> invalid", validator, userId);
                    return false;
                }
            }
            log.debug("isValidUser: All validators accepted userId '{}' -> valid", userId);
            return true;
        }
    }