@Override public User updateUser(User user) { Object toUpdate = userDAO.getUserByUsername(user.getUsername()); if (toUpdate != null) { User userToUpdate = (User) toUpdate; if (!userToUpdate.getPassword().equals(user.getPassword())) userToUpdate.setPassword(user.getPassword()); if (!userToUpdate.getLastName().equals(user.getLastName())) userToUpdate.setLastName(user.getLastName()); if (!userToUpdate.getPicture().equals(user.getPicture())) userToUpdate.setPicture(user.getPicture()); if (!userToUpdate.getFirstName().equals(user.getFirstName())) userToUpdate.setFirstName(user.getFirstName()); if (!userToUpdate.getEmail().equals(user.getEmail())) userToUpdate.setEmail(user.getEmail()); Object outcome = userDAO.updateUser(userToUpdate); if (outcome != null) { return (User) outcome; } } return null; }