while(hasher.read(buf) > 0);
hasher.close();
is = null;
HashResult[] results = hasher.getResults();
if(!HashResult.strictEquals(results, hashes)) {
onFailure(new FetchException(FetchExceptionMode.CONTENT_HASH_FAILED), SingleFileFetcher.this, context);
return;
}
} catch (InsufficientDiskSpaceException e) {
onFailure(new FetchException(FetchExceptionMode.NOT_ENOUGH_DISK_SPACE), SingleFileFetcher.this, context);
} catch (IOException e) {
onFailure(new FetchException(FetchExceptionMode.BUCKET_ERROR, e), SingleFileFetcher.this, context);
return;
} finally {
Closer.close(is);
}
}
ah.extractToCache(data, actx, element, callback, context.archiveManager, context);
} catch (ArchiveFailureException e) {
SingleFileFetcher.this.onFailure(new FetchException(e), false, context);
return;
} catch (ArchiveRestartException e) {
SingleFileFetcher.this.onFailure(new FetchException(e), false, context);
return;
} finally {
data.free();
}
if(callback != null) return;