diff options
author | Harald Musum <musum@yahooinc.com> | 2021-10-17 22:10:26 +0200 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2021-10-17 22:10:26 +0200 |
commit | e84ae35d562365a2daa05f95e145435a50431c6d (patch) | |
tree | 9deadf42bf046cae630c2aeaaf1ace3da3f457ce /filedistribution/src | |
parent | 4d60d2845dba1fcfb2b68bd64a616d50578bf88c (diff) |
Add convenience method for checking if file reference already exists
Diffstat (limited to 'filedistribution/src')
-rw-r--r-- | filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileDownloader.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileDownloader.java b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileDownloader.java index 1d638a427f9..e5cff0eb2e1 100644 --- a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileDownloader.java +++ b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileDownloader.java @@ -119,13 +119,19 @@ public class FileDownloader implements AutoCloseable { } } + boolean fileReferenceExists(FileReference fileReference) { + return getFileFromFileSystem(fileReference).isPresent(); + } + boolean isDownloading(FileReference fileReference) { return downloads.get(fileReference).isPresent(); } /** Start a download, don't wait for result */ public void downloadIfNeeded(FileReferenceDownload fileReferenceDownload) { - getFutureFile(fileReferenceDownload); + if (fileReferenceExists(fileReferenceDownload.fileReference())) return; + + download(fileReferenceDownload); } /** Download, the future returned will be complete()d by receiving method in {@link FileReceiver} */ |