diff --git a/dspace-spring-rest/src/main/java/org/dspace/app/rest/repository/WorkspaceItemRestRepository.java b/dspace-spring-rest/src/main/java/org/dspace/app/rest/repository/WorkspaceItemRestRepository.java index 00284acc2e..e4321785d2 100644 --- a/dspace-spring-rest/src/main/java/org/dspace/app/rest/repository/WorkspaceItemRestRepository.java +++ b/dspace-spring-rest/src/main/java/org/dspace/app/rest/repository/WorkspaceItemRestRepository.java @@ -18,6 +18,8 @@ import org.dspace.app.rest.model.hateoas.WorkspaceItemResource; import org.dspace.content.WorkspaceItem; import org.dspace.content.service.WorkspaceItemService; import org.dspace.core.Context; +import org.dspace.eperson.EPerson; +import org.dspace.eperson.EPersonServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageImpl; @@ -41,6 +43,8 @@ public class WorkspaceItemRestRepository extends DSpaceRestRepository findBySubmitter(Context context,@Param(value="uuid") UUID submitterID, Pageable pageable) { - //TODO - return null; + public Page findBySubmitter(@Param(value="uuid") UUID submitterID, Pageable pageable) { + List witems = null; + int total = 0; + try { + Context context = obtainContext(); + EPerson ep = epersonService.find(context, submitterID); + witems = wis.findByEPerson(context, ep); + total = witems.size(); + } catch (SQLException e) { + throw new RuntimeException(e.getMessage(), e); + } + Page page = new PageImpl(witems, pageable, total).map(converter); + return page; } @Override