diff --git a/metamorph-api/src/main/java/org/metafacture/metamorph/api/helpers/AbstractReadOnlyMap.java b/metamorph-api/src/main/java/org/metafacture/metamorph/api/helpers/AbstractReadOnlyMap.java index a43ce5054..e3b1ff5d3 100644 --- a/metamorph-api/src/main/java/org/metafacture/metamorph/api/helpers/AbstractReadOnlyMap.java +++ b/metamorph-api/src/main/java/org/metafacture/metamorph/api/helpers/AbstractReadOnlyMap.java @@ -29,7 +29,7 @@ * @param type of values * @author Markus Michael Geipel */ -public abstract class AbstractReadOnlyMap implements Map { +public abstract class AbstractReadOnlyMap implements Map, AutoCloseable { @Override public final int size() { diff --git a/metamorph/src/main/java/org/metafacture/metamorph/maps/FileMap.java b/metamorph/src/main/java/org/metafacture/metamorph/maps/FileMap.java index 8462007ee..26d6c716e 100644 --- a/metamorph/src/main/java/org/metafacture/metamorph/maps/FileMap.java +++ b/metamorph/src/main/java/org/metafacture/metamorph/maps/FileMap.java @@ -290,4 +290,9 @@ public Set keySet() { return Collections.unmodifiableSet(map.keySet()); } + @Override + public void close() throws IOException { + map.clear(); + fileOpener.closeStream(); + } } diff --git a/metamorph/src/main/java/org/metafacture/metamorph/maps/RestMap.java b/metamorph/src/main/java/org/metafacture/metamorph/maps/RestMap.java index 1a1921947..64692ab10 100644 --- a/metamorph/src/main/java/org/metafacture/metamorph/maps/RestMap.java +++ b/metamorph/src/main/java/org/metafacture/metamorph/maps/RestMap.java @@ -107,4 +107,8 @@ public void setCharsetName(final String name) { charsetName = name; } + @Override + public void close() throws IOException { + + } }