/** * 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.harvest; import org.dspace.content.Collection; import org.dspace.content.Item; import org.dspace.core.Context; import org.dspace.harvest.dao.HarvestedItemDAO; import org.dspace.harvest.service.HarvestedItemService; import org.springframework.beans.factory.annotation.Autowired; import java.sql.SQLException; /** * Service implementation for the HarvestedItem object. * This class is responsible for all business logic calls for the HarvestedItem object and is autowired by spring. * This class should never be accessed directly. * * @author kevinvandevelde at atmire.com */ public class HarvestedItemServiceImpl implements HarvestedItemService { @Autowired(required = true) protected HarvestedItemDAO harvestedItemDAO; protected HarvestedItemServiceImpl() { } @Override public HarvestedItem find(Context context, Item item) throws SQLException { return harvestedItemDAO.findByItem(context, item); } @Override public Item getItemByOAIId(Context context, String itemOaiID, Collection collection) throws SQLException { HarvestedItem harvestedItem = harvestedItemDAO.findByOAIId(context, itemOaiID, collection); if(harvestedItem != null) { return harvestedItem.getItem(); } else { return null; } } @Override public HarvestedItem create(Context context, Item item, String itemOAIid) throws SQLException { HarvestedItem harvestedItem = harvestedItemDAO.create(context, new HarvestedItem()); harvestedItem.setItem(item); harvestedItem.setOaiId(itemOAIid); update(context, harvestedItem); return harvestedItem; } @Override public void update(Context context, HarvestedItem harvestedItem) throws SQLException { harvestedItemDAO.save(context, harvestedItem); } @Override public void delete(Context context, HarvestedItem harvestedItem) throws SQLException { harvestedItemDAO.delete(context, harvestedItem); } }