From 9ff093de3e9f067d08bcc6d3134121128974a681 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Fri, 11 Apr 2014 13:47:56 +0000
Subject: [PATCH] OPENDJ-1308 Migrate schema support
---
opendj3-server-dev/src/server/org/opends/server/backends/jeb/JEExtensibleIndexer.java | 58 +++++++++++++++++++++-------------------------------------
1 files changed, 21 insertions(+), 37 deletions(-)
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/jeb/JEExtensibleIndexer.java b/opendj3-server-dev/src/server/org/opends/server/backends/jeb/JEExtensibleIndexer.java
index 88d0d34..b344668 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/jeb/JEExtensibleIndexer.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/jeb/JEExtensibleIndexer.java
@@ -34,6 +34,7 @@
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.DecodeException;
+import org.forgerock.opendj.ldap.spi.IndexingOptions;
import org.opends.server.api.ExtensibleIndexer;
import org.opends.server.types.Attribute;
import org.opends.server.types.AttributeType;
@@ -77,11 +78,7 @@
this.extensibleIndexer = extensibleIndexer;
}
- /**
- * Gets a string representation of this object. The returned value is
- * used to name an index created using this object.
- * @return A string representation of this object.
- */
+ /** {@inheritDoc} */
@Override
public String toString()
{
@@ -89,53 +86,40 @@
+ extensibleIndexer.getExtensibleIndexID();
}
-
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
- public void indexEntry(Entry entry, Set<ByteString> keys)
+ public void indexEntry(Entry entry, Set<ByteString> keys, IndexingOptions options)
{
- List<Attribute> attrList =
- entry.getAttribute(attributeType);
+ List<Attribute> attrList = entry.getAttribute(attributeType);
if (attrList != null)
{
- indexAttribute(attrList, keys);
+ indexAttribute(attrList, keys, options);
}
}
-
-
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public void replaceEntry(Entry oldEntry, Entry newEntry,
- Map<ByteString, Boolean> modifiedKeys)
+ Map<ByteString, Boolean> modifiedKeys, IndexingOptions options)
{
List<Attribute> newAttributes = newEntry.getAttribute(attributeType, true);
List<Attribute> oldAttributes = oldEntry.getAttribute(attributeType, true);
- indexAttribute(oldAttributes, modifiedKeys, false);
- indexAttribute(newAttributes, modifiedKeys, true);
+ indexAttribute(oldAttributes, modifiedKeys, false, options);
+ indexAttribute(newAttributes, modifiedKeys, true, options);
}
-
-
-
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public void modifyEntry(Entry oldEntry, Entry newEntry,
- List<Modification> mods,
- Map<ByteString, Boolean> modifiedKeys)
+ List<Modification> mods, Map<ByteString, Boolean> modifiedKeys,
+ IndexingOptions options)
{
List<Attribute> newAttributes = newEntry.getAttribute(attributeType, true);
List<Attribute> oldAttributes = oldEntry.getAttribute(attributeType, true);
- indexAttribute(oldAttributes, modifiedKeys, false);
- indexAttribute(newAttributes, modifiedKeys, true);
+ indexAttribute(oldAttributes, modifiedKeys, false, options);
+ indexAttribute(newAttributes, modifiedKeys, true, options);
}
@@ -145,8 +129,8 @@
* @param attrList The attribute for which substring keys are required.
* @param keys The set into which the generated keys will be inserted.
*/
- private void indexAttribute(List<Attribute> attrList,
- Set<ByteString> keys)
+ private void indexAttribute(List<Attribute> attrList, Set<ByteString> keys,
+ IndexingOptions options)
{
if (attrList == null) return;
@@ -158,7 +142,7 @@
{
try
{
- extensibleIndexer.createKeys(null, value, null, keys);
+ extensibleIndexer.createKeys(null, value, options, keys);
}
catch (DecodeException e)
{
@@ -180,13 +164,13 @@
* be inserted or <code>false</code> otherwise.
*/
private void indexAttribute(List<Attribute> attrList,
- Map<ByteString, Boolean> modifiedKeys,
- Boolean insert)
+ Map<ByteString, Boolean> modifiedKeys, Boolean insert,
+ IndexingOptions options)
{
if (attrList == null) return;
final Set<ByteString> keys = new HashSet<ByteString>();
- indexAttribute(attrList, keys);
+ indexAttribute(attrList, keys, options);
computeModifiedKeys(modifiedKeys, insert, keys);
}
--
Gitblit v1.10.0