@Override
    public boolean validate(MessageCollector collector, User target) {
        boolean result = true;        
        
        if (!isEmpty(target.getLogin())) {
            if (usersRepository.findByLogin(target.getLogin()) != null) {
                collector.addMessage(Severity.error, "Такой пользователь уже существует");
                result = false;
            }
        } else {
            collector.addMessage(Severity.error, "Поле 'логин' не может быть пустым");
            result = false;
        }
        
        if (isEmpty(target.getFirstName())) {
            collector.addMessage(Severity.error, "Поле 'имя' не может быть пустым");
            result = false;            
        }
        
        if (isEmpty(target.getLastName())) {
            collector.addMessage(Severity.error, "Поле 'фамилия' не может быть пустым");
            result = false;            
        }
        
        if (isEmpty(target.getEmail())) {
            collector.addMessage(Severity.error, "Поле 'почта' не может быть пустым");
            result = false;            
        }        
        
        if (isEmpty(target.getPassword())) {
            collector.addMessage(Severity.error, "Поле 'пароль' не может быть пустым");
            result = false;
        }            
        
        return result;
    }