/** * The contents of this file are subject to the license and copyright * detailed in the LICENSE file at the root of the source * tree and available online at * * https://github.com/keeps/roda */ package org.roda.core.plugins.plugins.reindex; import java.util.Arrays; import java.util.List; import org.roda.core.data.common.RodaConstants; import org.roda.core.data.exceptions.GenericException; import org.roda.core.data.exceptions.RequestNotValidException; import org.roda.core.data.v2.index.filter.Filter; import org.roda.core.data.v2.index.filter.OneOfManyFilterParameter; import org.roda.core.data.v2.ip.DIP; import org.roda.core.data.v2.ip.DIPFile; import org.roda.core.index.IndexService; import org.roda.core.plugins.Plugin; public class ReindexDIPPlugin extends ReindexRodaEntityPlugin<DIP> { @Override public String getName() { return "Rebuild DIP index"; } @Override public String getVersionImpl() { return "1.0"; } @Override public Plugin<DIP> cloneMe() { return new ReindexDIPPlugin(); } @Override public List<Class<DIP>> getObjectClasses() { return Arrays.asList(DIP.class); } @Override public void clearSpecificIndexes(IndexService index, List<String> ids) throws GenericException, RequestNotValidException { index.delete(DIPFile.class, new Filter(new OneOfManyFilterParameter(RodaConstants.DIPFILE_DIP_ID, ids))); } }