private static class DeleteBlobsStartingWith
extends Job2<Void, Predicate<BlobInfo>, BlobKey> {
private static final long serialVersionUID = 832681572879957125L;
@Override public Value<Void> run(Predicate<BlobInfo> predicate, BlobKey startKey) {
Iterator<BlobInfo> infos = new BlobInfoFactory().queryBlobInfosAfter(startKey);
ImmutableList.Builder<BlobKey> toDelete = ImmutableList.builder();
for (int i = 0; i < MAX_BLOBINFOS_SCANNED_PER_TASK && infos.hasNext(); i++) {
BlobInfo info = infos.next();
if (predicate.apply(info)) {
toDelete.add(info.getBlobKey());