package org.podcastpedia.web.user; import org.podcastpedia.common.domain.User; import org.podcastpedia.core.user.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.Errors; import org.springframework.validation.ValidationUtils; import org.springframework.validation.Validator; /** * Contact form validator * * @author ama * */ public class UserRegistrationFormValidator implements Validator{ @Autowired UserService userService; public boolean supports(Class<?> clazz) { return User.class.isAssignableFrom(clazz); } public void validate(Object target, Errors errors) { User user = (User)target; if(userService.isExistingUser(user.getUsername())){ errors.rejectValue("username", "invalid.email.registered"); } if(!isValidEmail(user.getUsername())){ errors.rejectValue("username", "invalid.required.email"); } ValidationUtils.rejectIfEmptyOrWhitespace(errors, "password", "invalid.required.password"); if(!user.getPassword().equals(user.getMatchingPassword())){ errors.rejectValue("matchingPassword", "password.missmatch"); } } private boolean isValidEmail(String email) { // TODO Auto-generated method stub return true; } }