mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Jean-Noel Rouvignac
18.04.2014 be9f94f921957835e36578e31b5905a91de24cd3
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();
    }
}