diff options
Diffstat (limited to 'filedistribution')
3 files changed, 19 insertions, 0 deletions
diff --git a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReferenceData.java b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReferenceData.java index dabdba2bfc0..ceb43ab3d51 100644 --- a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReferenceData.java +++ b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReferenceData.java @@ -64,4 +64,10 @@ public abstract class FileReferenceData { * @return number of bytes */ public abstract long size(); + + /** + * Close underlying files + * + */ + public abstract void close(); } diff --git a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReferenceDataBlob.java b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReferenceDataBlob.java index 3759cbe2ef7..94f3a28790e 100644 --- a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReferenceDataBlob.java +++ b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReferenceDataBlob.java @@ -41,4 +41,9 @@ public class FileReferenceDataBlob extends FileReferenceData { public long size() { return content.length; } + + @Override + public void close() { + // no-op + } } diff --git a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/LazyFileReferenceData.java b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/LazyFileReferenceData.java index 1681843a818..397ec48c4b8 100644 --- a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/LazyFileReferenceData.java +++ b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/LazyFileReferenceData.java @@ -49,4 +49,12 @@ public class LazyFileReferenceData extends FileReferenceData { throw new RuntimeException(e); } } + + public void close() { + try { + channel.close(); + } catch (IOException e) { + throw new RuntimeException(e); + } + } } |