/** * 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.checker.service; import org.dspace.checker.ChecksumResultCode; import org.dspace.checker.MostRecentChecksum; import org.dspace.content.Bitstream; import org.dspace.core.Context; import java.sql.SQLException; import java.util.Date; import java.util.Map; /** * Service interface class for the ChecksumHistory object. * The implementation of this class is responsible for all business logic calls for the ChecksumHistory object and is autowired by spring * * @author kevinvandevelde at atmire.com */ public interface ChecksumHistoryService { public void updateMissingBitstreams(Context context) throws SQLException; public void addHistory(Context context, MostRecentChecksum mostRecentChecksum) throws SQLException; public int deleteByDateAndCode(Context context, Date retentionDate, ChecksumResultCode result) throws SQLException; public void deleteByBitstream(Context context, Bitstream bitstream) throws SQLException; /** * Prune the history records from the database. * * @param context context * @param interests * set of results and the duration of time before they are * removed from the database * * @return number of bitstreams deleted * @throws SQLException if database error */ public int prune(Context context, Map<ChecksumResultCode, Long> interests) throws SQLException; }