001/* 002 * The contents of this file are subject to the license and copyright 003 * detailed in the LICENSE and NOTICE files at the root of the source 004 * tree. 005 */ 006package org.fcrepo.kernel.api.services; 007 008import org.fcrepo.kernel.api.Transaction; 009import org.fcrepo.kernel.api.models.FedoraResource; 010 011/** 012 * Service to permanently remove a resource from the repository. 013 * 014 * @author whikloj 015 */ 016public interface PurgeResourceService { 017 /** 018 * Purges the specified resource 019 * 020 * @param tx the transaction associated with the operation. 021 * @param fedoraResource The Fedora resource to purge. 022 * @param userPrincipal the principal of the user performing the operation. 023 */ 024 void perform(final Transaction tx, final FedoraResource fedoraResource, final String userPrincipal); 025}