From eeca03c904407d856739e8c8c3d1b0c22ed41c21 Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Wed, 17 Dec 2014 10:33:34 +0000
Subject: [PATCH] Move SPI interfaces to separate package.

---
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2URI.java              |   12 +-
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DbPreloadComparator.java |    2 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryCachePreloader.java |    2 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/NullIndex.java           |   10 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/JECompressedSchema.java  |    6 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVIndex.java            |   12 +-
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/Index.java               |   12 +-
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/State.java               |   10 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VerifyJob.java           |    8 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/SortValuesSet.java       |    2 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DatabaseContainer.java   |   12 +-
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/AttributeIndex.java      |    8 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ID2Entry.java            |   10 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2ID.java               |   10 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/RootContainer.java       |   12 +-
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EnvManager.java          |    2 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ExportJob.java           |    6 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/IndexBuffer.java         |    4 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryContainer.java      |   16 +-
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVKeyComparator.java    |    2 
 opendj3-server-dev/src/server/org/opends/server/backends/pluggable/BackendImpl.java         |  198 --------------------------------
 21 files changed, 82 insertions(+), 274 deletions(-)

diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/AttributeIndex.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/AttributeIndex.java
index 014d9f7..fd075c2 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/AttributeIndex.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/AttributeIndex.java
@@ -44,10 +44,10 @@
 import org.opends.server.admin.server.ConfigurationChangeListener;
 import org.opends.server.admin.std.meta.LocalDBIndexCfgDefn.IndexType;
 import org.opends.server.admin.std.server.LocalDBIndexCfg;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteOperation;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteOperation;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.*;
 import org.opends.server.util.StaticUtils;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/BackendImpl.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/BackendImpl.java
index 2334b57..db78443 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/BackendImpl.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/BackendImpl.java
@@ -26,7 +26,6 @@
  */
 package org.opends.server.backends.pluggable;
 
-import java.io.Closeable;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FilenameFilter;
@@ -42,8 +41,6 @@
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.config.server.ConfigException;
-import org.forgerock.opendj.ldap.ByteSequence;
-import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ConditionResult;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.util.Reject;
@@ -54,7 +51,9 @@
 import org.opends.server.api.Backend;
 import org.opends.server.api.DiskSpaceMonitorHandler;
 import org.opends.server.api.MonitorProvider;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.WriteOperation;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.core.*;
 import org.opends.server.extensions.DiskSpaceMonitor;
 import org.opends.server.types.*;
@@ -76,197 +75,6 @@
 {
   private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
 
-  public interface Importer extends Closeable
-  {
-    void createTree(TreeName name);
-
-    void put(TreeName name, ByteSequence key, ByteSequence value);
-
-    @Override
-    void close();
-  }
-
-  public interface ReadOperation<T>
-  {
-    T run(ReadableStorage txn) throws Exception;
-  }
-
-  public interface ReadableStorage
-  {
-    ByteString get(TreeName name, ByteSequence key);
-
-    ByteString getRMW(TreeName name, ByteSequence key);
-
-    Cursor openCursor(TreeName name);
-
-    // TODO: contains, etc.
-  }
-
-  public interface Cursor extends Closeable
-  {
-    boolean positionToKey(ByteSequence key);
-
-    boolean positionToKeyOrNext(ByteSequence key);
-
-    boolean positionToLastKey();
-
-    boolean next();
-
-    boolean previous();
-
-    ByteString getKey();
-
-    ByteString getValue();
-
-    @Override
-    public void close();
-  }
-
-  public interface Storage extends Closeable
-  {
-    void initialize(Map<String, String> options) throws Exception;
-
-    Importer startImport() throws Exception;
-
-    void open() throws Exception;
-
-    <T> T read(ReadOperation<T> readTransaction) throws Exception;
-
-    void write(WriteOperation updateTransaction) throws Exception;
-
-    Cursor openCursor(TreeName name);
-
-    @Override
-    void close();
-  }
-
-  @SuppressWarnings("serial")
-  public static final class StorageRuntimeException extends RuntimeException
-  {
-
-    public StorageRuntimeException(final String message)
-    {
-      super(message);
-    }
-
-    public StorageRuntimeException(final String message, final Throwable cause)
-    {
-      super(message, cause);
-    }
-
-    public StorageRuntimeException(final Throwable cause)
-    {
-      super(cause);
-    }
-  }
-
-  /** Assumes name components don't contain a '/'. */
-  public static final class TreeName
-  {
-    public static TreeName of(final String... names)
-    {
-      return new TreeName(Arrays.asList(names));
-    }
-
-    private final List<String> names;
-    private final String s;
-
-    public TreeName(final List<String> names)
-    {
-      this.names = names;
-      final StringBuilder builder = new StringBuilder();
-      for (final String name : names)
-      {
-        builder.append('/');
-        builder.append(name);
-      }
-      this.s = builder.toString();
-    }
-
-    public List<String> getNames()
-    {
-      return names;
-    }
-
-    public TreeName child(final String name)
-    {
-      final List<String> newNames = new ArrayList<String>(names.size() + 1);
-      newNames.addAll(names);
-      newNames.add(name);
-      return new TreeName(newNames);
-    }
-
-    public TreeName getSuffix()
-    {
-      if (names.size() == 0)
-      {
-        throw new IllegalStateException();
-      }
-      return new TreeName(Collections.singletonList(names.get(0)));
-    }
-
-    public boolean isSuffixOf(TreeName tree)
-    {
-      if (names.size() > tree.names.size())
-      {
-        return false;
-      }
-      for (int i = 0; i < names.size(); i++)
-      {
-        if (!tree.names.get(i).equals(names.get(i)))
-        {
-          return false;
-        }
-      }
-      return true;
-    }
-
-    @Override
-    public boolean equals(final Object obj)
-    {
-      if (this == obj)
-      {
-        return true;
-      }
-      else if (obj instanceof TreeName)
-      {
-        return s.equals(((TreeName) obj).s);
-      }
-      else
-      {
-        return false;
-      }
-    }
-
-    @Override
-    public int hashCode()
-    {
-      return s.hashCode();
-    }
-
-    @Override
-    public String toString()
-    {
-      return s;
-    }
-  }
-
-  public interface WriteOperation
-  {
-    void run(WriteableStorage txn) throws Exception;
-  }
-
-  public interface WriteableStorage extends ReadableStorage
-  {
-    void openTree(TreeName name);
-
-    void put(TreeName name, ByteSequence key, ByteSequence value);
-
-    boolean putIfAbsent(TreeName treeName, ByteSequence key, ByteSequence value);
-
-    boolean remove(TreeName name, ByteSequence key);
-  }
-
   /** The configuration of this JE backend. */
   private LocalDBBackendCfg cfg;
   /** The root JE container to use for this backend. */
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2ID.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2ID.java
index 0435930..9879ae7 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2ID.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2ID.java
@@ -28,11 +28,11 @@
 
 import org.forgerock.opendj.ldap.ByteSequence;
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.types.DN;
 
 import static org.opends.server.backends.pluggable.JebFormat.*;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2URI.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2URI.java
index 569fa89..1019fd9 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2URI.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DN2URI.java
@@ -40,12 +40,12 @@
 import org.forgerock.opendj.ldap.ConditionResult;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
-import org.opends.server.backends.pluggable.BackendImpl.Cursor;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.Cursor;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.core.SearchOperation;
 import org.opends.server.types.Attribute;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DatabaseContainer.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DatabaseContainer.java
index 0043a69..ec1647e 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DatabaseContainer.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DatabaseContainer.java
@@ -31,12 +31,12 @@
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteSequence;
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.backends.pluggable.BackendImpl.Cursor;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.Cursor;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.util.ServerConstants;
 import org.opends.server.util.StaticUtils;
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DbPreloadComparator.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DbPreloadComparator.java
index 676472e..08f05d8 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DbPreloadComparator.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/DbPreloadComparator.java
@@ -28,7 +28,7 @@
 
 import java.util.Comparator;
 
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
+import org.opends.server.backends.pluggable.spi.TreeName;
 
 /**
  * This comparator is used to sort databases in order of priority
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryCachePreloader.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryCachePreloader.java
index a28e37b..00c3c60 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryCachePreloader.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryCachePreloader.java
@@ -41,7 +41,7 @@
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
 import org.opends.server.api.DirectoryThread;
-import org.opends.server.backends.pluggable.BackendImpl.Cursor;
+import org.opends.server.backends.pluggable.spi.Cursor;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.Entry;
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryContainer.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryContainer.java
index 8ad27f7..95e4ddf 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryContainer.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EntryContainer.java
@@ -58,14 +58,14 @@
 import org.opends.server.api.EntryCache;
 import org.opends.server.api.plugin.PluginResult.SubordinateDelete;
 import org.opends.server.api.plugin.PluginResult.SubordinateModifyDN;
-import org.opends.server.backends.pluggable.BackendImpl.Cursor;
-import org.opends.server.backends.pluggable.BackendImpl.ReadOperation;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteOperation;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.Cursor;
+import org.opends.server.backends.pluggable.spi.ReadOperation;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteOperation;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.controls.PagedResultsControl;
 import org.opends.server.controls.ServerSideSortRequestControl;
 import org.opends.server.controls.ServerSideSortResponseControl;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EnvManager.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EnvManager.java
index caae758..32cfca4 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EnvManager.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/EnvManager.java
@@ -31,7 +31,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
 
 import static org.opends.messages.JebMessages.*;
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ExportJob.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ExportJob.java
index b7f03e3..36585c6 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ExportJob.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ExportJob.java
@@ -34,9 +34,9 @@
 
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.backends.pluggable.BackendImpl.Cursor;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.Cursor;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
 import org.opends.server.types.DN;
 import org.opends.server.types.Entry;
 import org.opends.server.types.LDIFExportConfig;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ID2Entry.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ID2Entry.java
index 5171e77..f2a7fba 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ID2Entry.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/ID2Entry.java
@@ -41,11 +41,11 @@
 import org.forgerock.opendj.ldap.ByteStringBuilder;
 import org.forgerock.opendj.ldap.DecodeException;
 import org.opends.server.api.CompressedSchema;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Entry;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/Index.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/Index.java
index f26d573..7306449 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/Index.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/Index.java
@@ -37,13 +37,13 @@
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ConditionResult;
 import org.forgerock.opendj.ldap.spi.IndexingOptions;
-import org.opends.server.backends.pluggable.BackendImpl.Cursor;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
 import org.opends.server.backends.pluggable.IndexBuffer.BufferedIndexValues;
+import org.opends.server.backends.pluggable.spi.Cursor;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Entry;
 import org.opends.server.types.Modification;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/IndexBuffer.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/IndexBuffer.java
index 86ad3c2..4f93ac0 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/IndexBuffer.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/IndexBuffer.java
@@ -34,8 +34,8 @@
 
 import org.forgerock.opendj.ldap.ByteSequence;
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.types.DirectoryException;
 
 /**
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/JECompressedSchema.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/JECompressedSchema.java
index 12d458d..d985a13 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/JECompressedSchema.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/JECompressedSchema.java
@@ -39,9 +39,9 @@
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ByteStringBuilder;
 import org.opends.server.api.CompressedSchema;
-import org.opends.server.backends.pluggable.BackendImpl.Cursor;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.Cursor;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.InitializationException;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/NullIndex.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/NullIndex.java
index fd13bb9..f05aed2 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/NullIndex.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/NullIndex.java
@@ -30,11 +30,11 @@
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ConditionResult;
 import org.forgerock.opendj.ldap.spi.IndexingOptions;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Entry;
 import org.opends.server.types.Modification;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/RootContainer.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/RootContainer.java
index 804c101..a314d48 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/RootContainer.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/RootContainer.java
@@ -39,12 +39,12 @@
 import org.opends.server.api.Backend;
 import org.opends.server.api.CompressedSchema;
 import org.opends.server.backends.persistit.PersistItStorage;
-import org.opends.server.backends.pluggable.BackendImpl.ReadOperation;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteOperation;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.ReadOperation;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteOperation;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.core.DefaultCompressedSchema;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.ConfigChangeResult;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/SortValuesSet.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/SortValuesSet.java
index 30c55a8..75027d8 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/SortValuesSet.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/SortValuesSet.java
@@ -31,7 +31,7 @@
 import org.forgerock.opendj.ldap.DecodeException;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.schema.MatchingRule;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
 import org.opends.server.types.AttributeType;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.SortKey;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/State.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/State.java
index bfd1e0e..4050cb6 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/State.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/State.java
@@ -27,11 +27,11 @@
 package org.opends.server.backends.pluggable;
 
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.TreeName;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.TreeName;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.util.StaticUtils;
 
 /**
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVIndex.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVIndex.java
index daf6557..7e2d7cb 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVIndex.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVIndex.java
@@ -46,12 +46,12 @@
 import org.opends.server.admin.server.ConfigurationChangeListener;
 import org.opends.server.admin.std.meta.LocalDBVLVIndexCfgDefn.Scope;
 import org.opends.server.admin.std.server.LocalDBVLVIndexCfg;
-import org.opends.server.backends.pluggable.BackendImpl.Cursor;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.Storage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
-import org.opends.server.backends.pluggable.BackendImpl.WriteOperation;
-import org.opends.server.backends.pluggable.BackendImpl.WriteableStorage;
+import org.opends.server.backends.pluggable.spi.Cursor;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.Storage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.WriteOperation;
+import org.opends.server.backends.pluggable.spi.WriteableStorage;
 import org.opends.server.controls.ServerSideSortRequestControl;
 import org.opends.server.controls.VLVRequestControl;
 import org.opends.server.controls.VLVResponseControl;
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVKeyComparator.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVKeyComparator.java
index 0c3f86b..6481b2a 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVKeyComparator.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VLVKeyComparator.java
@@ -33,7 +33,7 @@
 import org.forgerock.opendj.ldap.DecodeException;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.schema.MatchingRule;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.DirectoryException;
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VerifyJob.java b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VerifyJob.java
index 25bd6a1..34fde3b 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VerifyJob.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/pluggable/VerifyJob.java
@@ -48,10 +48,10 @@
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.schema.MatchingRule;
 import org.forgerock.opendj.ldap.spi.IndexingOptions;
-import org.opends.server.backends.pluggable.BackendImpl.Cursor;
-import org.opends.server.backends.pluggable.BackendImpl.ReadOperation;
-import org.opends.server.backends.pluggable.BackendImpl.ReadableStorage;
-import org.opends.server.backends.pluggable.BackendImpl.StorageRuntimeException;
+import org.opends.server.backends.pluggable.spi.Cursor;
+import org.opends.server.backends.pluggable.spi.ReadOperation;
+import org.opends.server.backends.pluggable.spi.ReadableStorage;
+import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.Attribute;
 import org.opends.server.types.AttributeType;

--
Gitblit v1.10.0