From 8513213e8f8f1cd4d87a10b3218654c6988f5188 Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Tue, 31 Mar 2015 10:00:47 +0000
Subject: [PATCH] CR-6474 OPENDJ-1711 - re-implement VLV support for pluggable backends

---
 opendj-server-legacy/src/main/java/org/opends/server/backends/persistit/PersistItStorage.java |   23 +++++++++++++++++++++++
 1 files changed, 23 insertions(+), 0 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/persistit/PersistItStorage.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/persistit/PersistItStorage.java
index 4da77f6..06d8913 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/persistit/PersistItStorage.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/persistit/PersistItStorage.java
@@ -177,6 +177,29 @@
     }
 
     @Override
+    public boolean positionToIndex(int index)
+    {
+      // There doesn't seem to be a way to optimize this using Persistit.
+      try
+      {
+        clearCurrentKeyAndValue();
+        ex.getKey().to(Key.BEFORE);
+        for (int i = 0; i < index; i++)
+        {
+          if (!ex.next())
+          {
+            return false;
+          }
+        }
+        return true;
+      }
+      catch (final PersistitException e)
+      {
+        throw new StorageRuntimeException(e);
+      }
+    }
+
+    @Override
     public boolean positionToLastKey()
     {
       try

--
Gitblit v1.10.0