diff --git a/leveldb-api/src/main/java/org/iq80/leveldb/Closable.java b/leveldb-api/src/main/java/org/iq80/leveldb/Closable.java
deleted file mode 100644
index 12709449..00000000
--- a/leveldb-api/src/main/java/org/iq80/leveldb/Closable.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/**
- * Copyright (C) 2011 the original author or authors.
- * See the notice.md file distributed with this work for additional
- * information regarding copyright ownership.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.iq80.leveldb;
-
-/**
- * @author Hiram Chirino
- */
-public interface Closable {
-
- public void close();
-
-}
diff --git a/leveldb-api/src/main/java/org/iq80/leveldb/DB.java b/leveldb-api/src/main/java/org/iq80/leveldb/DB.java
index 0104f75f..9c3fbe8c 100644
--- a/leveldb-api/src/main/java/org/iq80/leveldb/DB.java
+++ b/leveldb-api/src/main/java/org/iq80/leveldb/DB.java
@@ -17,12 +17,13 @@
*/
package org.iq80.leveldb;
+import java.io.Closeable;
import java.util.Map;
/**
* @author Hiram Chirino
*/
-public interface DB extends Iterable>, Closable {
+public interface DB extends Iterable>, Closeable {
public byte[] get(byte[] key) throws DBException;
public byte[] get(byte[] key, ReadOptions options) throws DBException;
diff --git a/leveldb-api/src/main/java/org/iq80/leveldb/DBIterator.java b/leveldb-api/src/main/java/org/iq80/leveldb/DBIterator.java
index 8870d1c1..2d40b62e 100644
--- a/leveldb-api/src/main/java/org/iq80/leveldb/DBIterator.java
+++ b/leveldb-api/src/main/java/org/iq80/leveldb/DBIterator.java
@@ -17,13 +17,14 @@
*/
package org.iq80.leveldb;
+import java.io.Closeable;
import java.util.Iterator;
import java.util.Map;
/**
* @author Hiram Chirino
*/
-public interface DBIterator extends Iterator>, Closable {
+public interface DBIterator extends Iterator>, Closeable {
/**
* Repositions the iterator so the key of the next BlockElement
diff --git a/leveldb-api/src/main/java/org/iq80/leveldb/Snapshot.java b/leveldb-api/src/main/java/org/iq80/leveldb/Snapshot.java
index 1cf32f8b..e1192856 100644
--- a/leveldb-api/src/main/java/org/iq80/leveldb/Snapshot.java
+++ b/leveldb-api/src/main/java/org/iq80/leveldb/Snapshot.java
@@ -17,6 +17,8 @@
*/
package org.iq80.leveldb;
-public interface Snapshot extends Closable {
+import java.io.Closeable;
+
+public interface Snapshot extends Closeable {
}
diff --git a/leveldb-api/src/main/java/org/iq80/leveldb/WriteBatch.java b/leveldb-api/src/main/java/org/iq80/leveldb/WriteBatch.java
index bdb25b79..960a5f95 100644
--- a/leveldb-api/src/main/java/org/iq80/leveldb/WriteBatch.java
+++ b/leveldb-api/src/main/java/org/iq80/leveldb/WriteBatch.java
@@ -17,10 +17,12 @@
*/
package org.iq80.leveldb;
+import java.io.Closeable;
+
/**
* @author Hiram Chirino
*/
-public interface WriteBatch extends Closable {
+public interface WriteBatch extends Closeable {
public WriteBatch put(byte[] key, byte[] value);
public WriteBatch delete(byte[] key);
diff --git a/leveldb/src/test/java/org/iq80/leveldb/DbBenchmark.java b/leveldb/src/test/java/org/iq80/leveldb/DbBenchmark.java
index 81b36079..90ceaa8d 100644
--- a/leveldb/src/test/java/org/iq80/leveldb/DbBenchmark.java
+++ b/leveldb/src/test/java/org/iq80/leveldb/DbBenchmark.java
@@ -22,6 +22,7 @@
import com.google.common.base.Throwables;
import com.google.common.collect.ImmutableList;
import com.google.common.io.CharStreams;
+import com.google.common.io.Closeables;
import com.google.common.io.Files;
import org.iq80.leveldb.impl.DbImpl;
import org.iq80.leveldb.util.*;
@@ -440,7 +441,7 @@ private void readSequential()
bytes_ += entry.getKey().length + entry.getValue().length;
finishedSingleOp();
}
- iterator.close();
+ Closeables.closeQuietly(iterator);
}
}
@@ -603,10 +604,8 @@ private void heapProfile()
private void destroyDb()
{
- if (db_ != null) {
- db_.close();
- db_ = null;
- }
+ Closeables.closeQuietly(db_);
+ db_ = null;
FileUtils.deleteRecursively(databaseDir);
}