package edu.asu.spring.quadriga.domain.factories.impl; import java.util.ArrayList; import java.util.List; import org.springframework.stereotype.Service; import edu.asu.spring.quadriga.domain.IQuadrigaRole; import edu.asu.spring.quadriga.domain.IUser; import edu.asu.spring.quadriga.domain.factories.IUserFactory; import edu.asu.spring.quadriga.domain.impl.User; /** * Factory class for creating {@link User}. * * @author jdamerow * */ @Service public class UserFactory implements IUserFactory { /** * {@inheritDoc} */ @Override public IUser createUserObject() { return new User(); } /** * {@inheritDoc} */ @Override public IUser cloneUserObject(IUser user) { IUser clone = createUserObject(); clone.setEmail(user.getEmail()); clone.setName(user.getName()); clone.setPassword(user.getPassword()); clone.setUserName(user.getUserName()); List<IQuadrigaRole> roles = new ArrayList<IQuadrigaRole>(); for (IQuadrigaRole role : user.getQuadrigaRoles()) { roles.add(role); } clone.setQuadrigaRoles(roles); return clone; } }