From ae6b4362fce94c2d5c81f64d612a604971239d31 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Thu, 12 Mar 2015 08:19:57 +0000
Subject: [PATCH] Code cleanup
---
opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Importer.java | 23 +++----
opendj-server-legacy/src/main/java/org/opends/server/tools/DBTest.java | 24 +++++++-
opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/VerifyJob.java | 2
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VerifyJob.java | 2
opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Index.java | 22 +++----
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Importer.java | 17 ++---
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexOutputBuffer.java | 29 ++-------
opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/IndexOutputBuffer.java | 29 ++-------
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Index.java | 8 ++
9 files changed, 68 insertions(+), 88 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Importer.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Importer.java
index 13a3901..2edf7b2 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Importer.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Importer.java
@@ -1512,17 +1512,17 @@
if (oldEntry != null)
{
deleteKeySet.clear();
- index.indexer.indexEntry(oldEntry, deleteKeySet, options);
+ index.indexEntry(oldEntry, deleteKeySet, options);
for (ByteString delKey : deleteKeySet)
{
- processKey(index, delKey.toByteArray(), entryID, indexComparator, indexKey, false);
+ processKey(index, delKey.toByteArray(), entryID, indexKey, false);
}
}
insertKeySet.clear();
- index.indexer.indexEntry(entry, insertKeySet, options);
+ index.indexEntry(entry, insertKeySet, options);
for (ByteString key : insertKeySet)
{
- processKey(index, key.toByteArray(), entryID, indexComparator, indexKey, true);
+ processKey(index, key.toByteArray(), entryID, indexKey, true);
}
}
}
@@ -1687,10 +1687,10 @@
IndexKey indexKey) throws DatabaseException, InterruptedException
{
insertKeySet.clear();
- index.indexer.indexEntry(entry, insertKeySet, options);
+ index.indexEntry(entry, insertKeySet, options);
for (ByteString key : insertKeySet)
{
- processKey(index, key.toByteArray(), entryID, indexComparator, indexKey, true);
+ processKey(index, key.toByteArray(), entryID, indexKey, true);
}
}
@@ -1704,7 +1704,6 @@
IndexKey indexKey = e.getKey();
IndexOutputBuffer indexBuffer = e.getValue();
it.remove();
- indexBuffer.setComparator(indexComparator);
indexBuffer.setIndexKey(indexKey);
indexBuffer.discard();
futures.add(bufferSortService.submit(new SortTask(indexBuffer)));
@@ -1713,7 +1712,6 @@
}
int processKey(DatabaseContainer container, byte[] key, EntryID entryID,
- IndexOutputBuffer.ComparatorBuffer<byte[]> comparator,
IndexKey indexKey, boolean insert) throws InterruptedException
{
int sizeNeeded = IndexOutputBuffer.getRequiredSize(key.length, entryID.longValue());
@@ -1726,7 +1724,6 @@
else if (!indexBuffer.isSpaceAvailable(key, entryID.longValue()))
{
// complete the current buffer...
- indexBuffer.setComparator(comparator);
indexBuffer.setIndexKey(indexKey);
bufferSortService.submit(new SortTask(indexBuffer));
// ... and get a new one
@@ -1761,17 +1758,15 @@
return indexBuffer;
}
- void processDN2ID(Suffix suffix, DN dn, EntryID entryID)
- throws InterruptedException
+ void processDN2ID(Suffix suffix, DN dn, EntryID entryID) throws InterruptedException
{
DN2ID dn2id = suffix.getDN2ID();
byte[] dnBytes = JebFormat.dnToDNKey(dn, suffix.getBaseDN().size());
- int id = processKey(dn2id, dnBytes, entryID, indexComparator, dnIndexKey, true);
+ int id = processKey(dn2id, dnBytes, entryID, dnIndexKey, true);
idECMap.putIfAbsent(id, suffix.getEntryContainer());
}
- void processDN2URI(Suffix suffix, Entry oldEntry, Entry newEntry)
- throws DatabaseException
+ void processDN2URI(Suffix suffix, Entry oldEntry, Entry newEntry) throws DatabaseException
{
DN2URI dn2uri = suffix.getDN2URI();
if (oldEntry != null)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Index.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Index.java
index 6aafb58..95cf4d7 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Index.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/Index.java
@@ -33,7 +33,6 @@
import java.util.*;
import org.forgerock.i18n.slf4j.LocalizedLogger;
-import org.forgerock.opendj.ldap.ByteSequence;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.ConditionResult;
import org.forgerock.opendj.ldap.spi.IndexingOptions;
@@ -56,12 +55,7 @@
private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
/** The indexer object to construct index keys from LDAP attribute values. */
- public Indexer indexer;
-
- /** The comparator for index keys. */
- private final Comparator<byte[]> comparator;
- /** The comparator for index keys. */
- private final Comparator<ByteSequence> bsComparator;
+ private Indexer indexer;
/** The limit on the number of entry IDs that may be indexed by one key. */
private int indexEntryLimit;
@@ -133,8 +127,6 @@
{
super(name, env, entryContainer);
this.indexer = indexer;
- this.comparator = indexer.getComparator();
- this.bsComparator = indexer.getBSComparator();
this.indexEntryLimit = indexEntryLimit;
this.cursorEntryLimit = cursorEntryLimit;
this.maintainCount = maintainCount;
@@ -144,7 +136,7 @@
this.dbConfig = JEBUtils.toDatabaseConfigNoDuplicates(env);
this.dbConfig.setOverrideBtreeComparator(true);
this.dbConfig.setBtreeComparator((Class<? extends Comparator<byte[]>>)
- comparator.getClass());
+ indexer.getComparator().getClass());
this.state = state;
@@ -157,6 +149,11 @@
}
}
+ void indexEntry(Entry entry, Set<ByteString> keys, IndexingOptions options)
+ {
+ indexer.indexEntry(entry, keys, options);
+ }
+
/**
* Add an add entry ID operation into a index buffer.
*
@@ -460,7 +457,7 @@
private BufferedIndexValues getBufferedIndexValues(IndexBuffer buffer, ByteString keyBytes)
{
- return buffer.getBufferedIndexValues(this, keyBytes, bsComparator);
+ return buffer.getBufferedIndexValues(this, keyBytes, indexer.getBSComparator());
}
/**
@@ -619,6 +616,7 @@
Cursor cursor = openCursor(null, CursorConfig.READ_COMMITTED);
try
{
+ final Comparator<byte[]> comparator = indexer.getComparator();
OperationStatus status;
// Set the lower bound if necessary.
if(lower.length > 0)
@@ -874,6 +872,6 @@
*/
public Comparator<byte[]> getComparator()
{
- return this.comparator;
+ return indexer.getComparator();
}
}
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/IndexOutputBuffer.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/IndexOutputBuffer.java
index c1a7c0a..807f7eb 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/IndexOutputBuffer.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/IndexOutputBuffer.java
@@ -26,6 +26,8 @@
*/
package org.opends.server.backends.jeb;
+import static org.opends.server.backends.jeb.Importer.indexComparator;
+
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
@@ -100,9 +102,6 @@
/** Used to iterate over the buffer when writing to a scratch file. */
private int position;
- /** The comparator to use sort the keys. */
- private ComparatorBuffer<byte[]> comparator;
-
/**
* Used to make sure that an instance of this class is put on the
* correct scratch file writer work queue for processing.
@@ -148,7 +147,6 @@
recordOffset = size - 1;
keys = 0;
position = 0;
- comparator = null;
indexKey = null;
}
@@ -228,18 +226,6 @@
}
/**
- * Set the comparator to be used in the buffer processing to the specified
- * comparator.
- *
- * @param comparator The comparator to set the buffer's comparator to.
- */
- public void setComparator(ComparatorBuffer<byte[]> comparator)
- {
- this.comparator = comparator;
- }
-
-
- /**
* Return a buffer's current position value.
*
* @return The buffer's current position value.
@@ -249,7 +235,6 @@
return position;
}
-
/**
* Set a buffer's position value to the specified position.
*
@@ -260,7 +245,6 @@
this.position = position;
}
-
/**
* Sort the buffer.
*/
@@ -268,7 +252,6 @@
sort(0, keys);
}
-
/**
* Add the specified key byte array and EntryID to the buffer.
*
@@ -461,7 +444,7 @@
int yKeyLen = PackedInteger.readInt(buffer, yoffSet);
int yKey = PackedInteger.getReadIntLength(buffer, yoffSet) + yoffSet;
- int cmp = comparator.compare(buffer, xKey, xKeyLen, xIndexID, yKey, yKeyLen, yIndexID);
+ int cmp = indexComparator.compare(buffer, xKey, xKeyLen, xIndexID, yKey, yKeyLen, yIndexID);
return evaluateReturnCode(cmp, op);
}
@@ -474,7 +457,7 @@
int xKeyLen = PackedInteger.readInt(buffer, xoffSet);
int xKey = PackedInteger.getReadIntLength(buffer, xoffSet) + xoffSet;
- int cmp = comparator.compare(buffer, xKey, xKeyLen, xIndexID, yKey, yKey.length, yIndexID);
+ int cmp = indexComparator.compare(buffer, xKey, xKeyLen, xIndexID, yKey, yKey.length, yIndexID);
return evaluateReturnCode(cmp, op);
}
@@ -497,7 +480,7 @@
offset += PackedInteger.getReadLongLength(buffer, offset);
int keyLen = PackedInteger.readInt(buffer, offset);
int key = PackedInteger.getReadIntLength(buffer, offset) + offset;
- return comparator.compare(buffer, key, keyLen, b, b.length) == 0
+ return indexComparator.compare(buffer, key, keyLen, b, b.length) == 0
&& indexID == bIndexID;
}
@@ -523,7 +506,7 @@
int keyLen = PackedInteger.readInt(buffer, offset);
int key = PackedInteger.getReadIntLength(buffer, offset) + offset;
- final int cmp = comparator.compare(buffer, key, keyLen, keyBuf.array(), keyBuf.limit());
+ final int cmp = indexComparator.compare(buffer, key, keyLen, keyBuf.array(), keyBuf.limit());
if (cmp != 0)
{
return cmp;
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/VerifyJob.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/VerifyJob.java
index 506941c..4629d31 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/VerifyJob.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/jeb/VerifyJob.java
@@ -1082,7 +1082,7 @@
};
- index.indexer.indexEntry(entry, dummySet, options);
+ index.indexEntry(entry, dummySet, options);
if (!foundMatchingKey.get())
{
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Importer.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Importer.java
index 6ded735..b2dad1a 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Importer.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Importer.java
@@ -1477,17 +1477,17 @@
if (oldEntry != null)
{
deleteKeySet.clear();
- index.indexer.indexEntry(oldEntry, deleteKeySet, options);
+ index.indexEntry(oldEntry, deleteKeySet, options);
for (ByteString delKey : deleteKeySet)
{
- processKey(index, delKey, entryID, indexComparator, indexKey, false);
+ processKey(index, delKey, entryID, indexKey, false);
}
}
insertKeySet.clear();
- index.indexer.indexEntry(entry, insertKeySet, options);
+ index.indexEntry(entry, insertKeySet, options);
for (ByteString key : insertKeySet)
{
- processKey(index, key, entryID, indexComparator, indexKey, true);
+ processKey(index, key, entryID, indexKey, true);
}
}
}
@@ -1659,10 +1659,10 @@
IndexKey indexKey) throws StorageRuntimeException, InterruptedException
{
insertKeySet.clear();
- index.indexer.indexEntry(entry, insertKeySet, options);
+ index.indexEntry(entry, insertKeySet, options);
for (ByteString key : insertKeySet)
{
- processKey(index, key, entryID, indexComparator, indexKey, true);
+ processKey(index, key, entryID, indexKey, true);
}
}
@@ -1676,7 +1676,6 @@
IndexKey indexKey = e.getKey();
IndexOutputBuffer indexBuffer = e.getValue();
it.remove();
- indexBuffer.setComparator(indexComparator);
indexBuffer.setIndexKey(indexKey);
indexBuffer.discard();
futures.add(bufferSortService.submit(new SortTask(indexBuffer)));
@@ -1685,7 +1684,6 @@
}
int processKey(DatabaseContainer container, ByteString key, EntryID entryID,
- IndexOutputBuffer.ComparatorBuffer<byte[]> comparator,
IndexKey indexKey, boolean insert) throws InterruptedException
{
int sizeNeeded = IndexOutputBuffer.getRequiredSize(key.length(), entryID.longValue());
@@ -1698,7 +1696,6 @@
else if (!indexBuffer.isSpaceAvailable(key, entryID.longValue()))
{
// complete the current buffer...
- indexBuffer.setComparator(comparator);
indexBuffer.setIndexKey(indexKey);
bufferSortService.submit(new SortTask(indexBuffer));
// ... and get a new one
@@ -1738,7 +1735,7 @@
{
DN2ID dn2id = suffix.getDN2ID();
ByteString dnBytes = JebFormat.dnToDNKey(dn, suffix.getBaseDN().size());
- int id = processKey(dn2id, dnBytes, entryID, indexComparator, dnIndexKey, true);
+ int id = processKey(dn2id, dnBytes, entryID, dnIndexKey, true);
idECMap.putIfAbsent(id, suffix.getEntryContainer());
}
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Index.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Index.java
index 2eca8cb..2968293 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Index.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/Index.java
@@ -32,6 +32,7 @@
import java.util.HashSet;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import java.util.TreeMap;
import org.forgerock.i18n.slf4j.LocalizedLogger;
@@ -61,7 +62,7 @@
private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
/** The indexer object to construct index keys from LDAP attribute values. */
- Indexer indexer;
+ private Indexer indexer;
/** The limit on the number of entry IDs that may be indexed by one key. */
private int indexEntryLimit;
@@ -145,6 +146,11 @@
}
}
+ void indexEntry(Entry entry, Set<ByteString> keys, IndexingOptions options)
+ {
+ indexer.indexEntry(entry, keys, options);
+ }
+
final void insertID(IndexBuffer buffer, ByteString keyBytes, EntryID entryID)
{
getBufferedIndexValues(buffer, keyBytes).addEntryID(keyBytes, entryID);
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexOutputBuffer.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexOutputBuffer.java
index d746127..c5640ce 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexOutputBuffer.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexOutputBuffer.java
@@ -26,6 +26,8 @@
*/
package org.opends.server.backends.pluggable;
+import static org.opends.server.backends.pluggable.Importer.indexComparator;
+
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
@@ -104,9 +106,6 @@
/** Used to iterate over the buffer when writing to a scratch file. */
private int position;
- /** The comparator to use sort the keys. */
- private ComparatorBuffer<byte[]> comparator;
-
/**
* Used to make sure that an instance of this class is put on the
* correct scratch file writer work queue for processing.
@@ -152,7 +151,6 @@
recordOffset = size - 1;
keys = 0;
position = 0;
- comparator = null;
indexKey = null;
}
@@ -231,18 +229,6 @@
}
/**
- * Set the comparator to be used in the buffer processing to the specified
- * comparator.
- *
- * @param comparator The comparator to set the buffer's comparator to.
- */
- public void setComparator(ComparatorBuffer<byte[]> comparator)
- {
- this.comparator = comparator;
- }
-
-
- /**
* Return a buffer's current position value.
*
* @return The buffer's current position value.
@@ -252,7 +238,6 @@
return position;
}
-
/**
* Set a buffer's position value to the specified position.
*
@@ -263,7 +248,6 @@
this.position = position;
}
-
/**
* Sort the buffer.
*/
@@ -271,7 +255,6 @@
sort(0, keys);
}
-
/**
* Add the specified key byte array and EntryID to the buffer.
*
@@ -455,7 +438,7 @@
int yKeyLen = readInt(buffer, yoffSet);
int yKey = INT_SIZE + yoffSet;
- int cmp = comparator.compare(buffer, xKey, xKeyLen, xIndexID, yKey, yKeyLen, yIndexID);
+ int cmp = indexComparator.compare(buffer, xKey, xKeyLen, xIndexID, yKey, yKeyLen, yIndexID);
return evaluateReturnCode(cmp, op);
}
@@ -467,7 +450,7 @@
int xKeyLen = readInt(buffer, xoffSet);
int xKey = INT_SIZE + xoffSet;
- int cmp = comparator.compare(buffer, xKey, xKeyLen, xIndexID, yKey, yKey.length, yIndexID);
+ int cmp = indexComparator.compare(buffer, xKey, xKeyLen, xIndexID, yKey, yKey.length, yIndexID);
return evaluateReturnCode(cmp, op);
}
@@ -486,7 +469,7 @@
offset += REC_OVERHEAD + LONG_SIZE;
int keyLen = readInt(buffer, offset);
int key = INT_SIZE + offset;
- return comparator.compare(buffer, key, keyLen, b, b.length) == 0
+ return indexComparator.compare(buffer, key, keyLen, b, b.length) == 0
&& indexID == bIndexID;
}
@@ -510,7 +493,7 @@
int keyLen = readInt(buffer, offset);
int key = INT_SIZE + offset;
- final int cmp = comparator.compare(buffer, key, keyLen, keyBuf.array(), keyBuf.limit());
+ final int cmp = indexComparator.compare(buffer, key, keyLen, keyBuf.array(), keyBuf.limit());
if (cmp != 0)
{
return cmp;
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VerifyJob.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VerifyJob.java
index 40510ce..35e8f02 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VerifyJob.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VerifyJob.java
@@ -1088,7 +1088,7 @@
};
- index.indexer.indexEntry(entry, dummySet, options);
+ index.indexEntry(entry, dummySet, options);
if (!foundMatchingKey.get())
{
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/DBTest.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/DBTest.java
index 0733f2b..ff75312 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/DBTest.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/DBTest.java
@@ -35,7 +35,13 @@
import java.io.OutputStream;
import java.io.PrintStream;
import java.text.ParseException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.config.server.ConfigException;
@@ -45,7 +51,19 @@
import org.opends.server.admin.std.server.BackendCfg;
import org.opends.server.admin.std.server.LocalDBBackendCfg;
import org.opends.server.api.Backend;
-import org.opends.server.backends.jeb.*;
+import org.opends.server.backends.jeb.BackendImpl;
+import org.opends.server.backends.jeb.DN2ID;
+import org.opends.server.backends.jeb.DN2URI;
+import org.opends.server.backends.jeb.DatabaseContainer;
+import org.opends.server.backends.jeb.EntryContainer;
+import org.opends.server.backends.jeb.EntryID;
+import org.opends.server.backends.jeb.EntryIDSet;
+import org.opends.server.backends.jeb.ID2Entry;
+import org.opends.server.backends.jeb.Index;
+import org.opends.server.backends.jeb.JebFormat;
+import org.opends.server.backends.jeb.RootContainer;
+import org.opends.server.backends.jeb.SortValuesSet;
+import org.opends.server.backends.jeb.VLVIndex;
import org.opends.server.core.CoreConfigManager;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.DirectoryServer.DirectoryServerVersionHandler;
@@ -1517,7 +1535,7 @@
{
if(databaseContainer instanceof Index)
{
- return ((Index)databaseContainer).indexer.getComparator();
+ return ((Index) databaseContainer).getComparator();
}
else if(databaseContainer instanceof VLVIndex)
{
--
Gitblit v1.10.0