From be9f94f921957835e36578e31b5905a91de24cd3 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Thu, 18 Dec 2014 17:04:27 +0000
Subject: [PATCH] OPENDJ-1602 New pluggable storage based backend
---
opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java | 37 +++++++++++++++++++++++++++++++++++++
1 files changed, 37 insertions(+), 0 deletions(-)
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java b/opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java
index fa12c03..01a5b2e 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/persistit/PersistItStorage.java
@@ -235,6 +235,33 @@
db.releaseExchange(ex);
}
}
+
+ @Override
+ public void truncateTree(TreeName treeName) {
+ try {
+ getVolume(treeName).truncate();
+ } catch (PersistitException e) {
+ throw new StorageRuntimeException(e);
+ }
+ }
+
+ @Override
+ public void renameTree(TreeName oldTreeName, TreeName newTreeName) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public void deleteTree(TreeName treeName) {
+ Exchange ex = null;
+ try {
+ ex = getExchange(treeName);
+ ex.removeTree();
+ } catch (PersistitException e) {
+ throw new StorageRuntimeException(e);
+ } finally {
+ db.releaseExchange(ex);
+ }
+ }
}
private final class CursorImpl implements Cursor {
@@ -472,4 +499,14 @@
private Exchange getExchange0(TreeName treeName, boolean create) throws PersistitException {
return db.getExchange(getVolume(treeName), treeName.toString(), create);
}
+
+ @Override
+ public void closeTree(TreeName treeName) {
+ // nothing to do, in persistit you close the volume itself
+ }
+
+ @Override
+ public boolean isValid() {
+ return !db.isFatal();
+ }
}
--
Gitblit v1.10.0