* @see net.sf.pmr.core.service.UserService#update(int, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)
*/
public Errors addOrUpdate(final int persistanceId, final String firstName, final String lastName,
final String login, final String password, final String email, final long persistanceVersion) {
User user = null;
Errors errors = null;
if (persistanceId == 0) {
// get a user instance from the factory
user = CoreObjectFactory.getUser();
} else {
user = userRepository.findUserByPersistanceId(persistanceId);
}
if (user != null) {
// populate user
user.setPersistanceId(persistanceId);
user.setFirstName(firstName);
user.setLastName(lastName);
user.setLogin(login);
user.setPassword(password);
user.setEmail(email);
user.setPersistanceVersion(persistanceVersion);
// validate user
errors = userValidator.validate(user);
if (!errors.hasErrors()) {