throws Exception
{
final File repoLocation = this.addRepository("active-repo");
final DefaultWastebasket wastebasket = (DefaultWastebasket) this.lookup(Wastebasket.class);
final Walker walker = wastebasket.getWalker();
wastebasket.setWalker(
new Walker()
{
@Override
public void walk(final WalkerContext context)
throws WalkerException
{
context.getProcessors().add(0, new AbstractWalkerProcessor()
{
@Override
public void processItem(final WalkerContext context, final StorageItem item)
throws Exception
{
// do noting
}
@Override
public void onCollectionExit(final WalkerContext context, final StorageCollectionItem coll)
throws Exception
{
FileUtils.deleteDirectory(new File(repoLocation, coll.getPath()));
}
});
walker.walk(context);
}
}
);
wastebasket.purgeAll(DefaultWastebasket.ALL);
}