/** * The contents of this file are subject to the license and copyright * detailed in the LICENSE and NOTICE files at the root of the source * tree and available online at * * http://www.dspace.org/license/ */ package org.dspace.app.rest.converter; import java.util.ArrayList; import java.util.List; import org.apache.log4j.Logger; import org.dspace.app.rest.model.GroupRest; import org.dspace.app.rest.model.EPersonRest; import org.dspace.eperson.EPerson; import org.dspace.eperson.Group; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * This is the converter from/to the EPerson in the DSpace API data model and the * REST data model * * @author Andrea Bollini (andrea.bollini at 4science.it) * */ @Component public class EPersonConverter extends DSpaceObjectConverter<EPerson, org.dspace.app.rest.model.EPersonRest> { @Autowired(required = true) private GroupConverter epersonGroupConverter; private static final Logger log = Logger.getLogger(EPersonConverter.class); @Override public EPersonRest fromModel(EPerson obj) { EPersonRest eperson = super.fromModel(obj); eperson.setLastActive(obj.getLastActive()); eperson.setNetid(obj.getNetid()); eperson.setCanLogIn(obj.canLogIn()); eperson.setRequireCertificate(obj.getRequireCertificate()); eperson.setSelfRegistered(obj.getSelfRegistered()); eperson.setEmail(obj.getEmail()); List<GroupRest> groups = new ArrayList<GroupRest>(); for (Group g : obj.getGroups()) { groups.add(epersonGroupConverter.convert(g)); } eperson.setGroups(groups); return eperson; } @Override public EPerson toModel(EPersonRest obj) { // TODO Auto-generated method stub return null; } @Override protected EPersonRest newInstance() { return new EPersonRest(); } }