* This could be implemented more generally but also more complicated with reflection.
* @param user source user object
* @return cloned user object
*/
public static User clone(User user) {
User newUser = new User();
newUser.setUsername(user.getUsername());
newUser.setPassword(user.getPassword());
newUser.setTitle(user.getTitle());
newUser.setFirstName(user.getFirstName());
newUser.setLastName(user.getLastName());
newUser.setPersonalNumber(user.getPersonalNumber());
newUser.setCompany(user.getCompany());
newUser.setAddress(user.getAddress());
newUser.setPostalCode(user.getPostalCode());
newUser.setCity(user.getCity());
newUser.setState(user.getState());
newUser.setEmail(user.getEmail());
newUser.setFixedPhone(user.getFixedPhone());
newUser.setMsisdn(user.getMsisdn());
newUser.setOperator(user.getOperator());
newUser.setMobilePhoneProducer(user.getMobilePhoneProducer());
newUser.setBirthdate(user.getBirthdate());
newUser.setLocale(user.getLocale());
newUser.setUnlimitedRedemptions(user.getUnlimitedRedemptions());
newUser.setGroup(user.getGroup());
newUser.setCreationdate(user.getCreationdate());
newUser.setEditedAt(user.getEditedAt());
newUser.setGender(user.getGender());
newUser.setSalutation(user.getSalutation());
newUser.setCustomerNumber(user.getCustomerNumber());
newUser.setConsultantName(user.getConsultantName());
newUser.setConsultantOrganization(user.getConsultantOrganization());
return newUser;
}