From 5e495b3c867de5b83117834386859da67cbbedc5 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Tue, 13 Aug 2013 13:32:13 +0000
Subject: [PATCH] OPENDJ-1116 Introduce abstraction for the changelog DB
---
opends/src/server/org/opends/server/replication/server/JEReplicationIterator.java | 28 ++++++++++------------------
1 files changed, 10 insertions(+), 18 deletions(-)
diff --git a/opends/src/server/org/opends/server/replication/server/ReplicationIterator.java b/opends/src/server/org/opends/server/replication/server/JEReplicationIterator.java
similarity index 84%
rename from opends/src/server/org/opends/server/replication/server/ReplicationIterator.java
rename to opends/src/server/org/opends/server/replication/server/JEReplicationIterator.java
index 82b201f..16e6243 100644
--- a/opends/src/server/org/opends/server/replication/server/ReplicationIterator.java
+++ b/opends/src/server/org/opends/server/replication/server/JEReplicationIterator.java
@@ -32,12 +32,12 @@
import org.opends.server.replication.protocol.UpdateMsg;
import org.opends.server.replication.server.ReplicationDB.ReplServerDBCursor;
import org.opends.server.replication.server.changelog.api.ChangelogException;
+import org.opends.server.replication.server.changelog.api.ReplicationIterator;
/**
- * This class allows to iterate through the changes received from a given
- * LDAP Server Identifier.
+ * Berkeley DB JE implementation of IReplicationIterator.
*/
-public class ReplicationIterator
+public class JEReplicationIterator implements ReplicationIterator
{
private UpdateMsg currentChange = null;
private ReplServerDBCursor cursor = null;
@@ -55,7 +55,7 @@
* @param dbHandler The associated DbHandler.
* @throws ChangelogException if a database problem happened.
*/
- public ReplicationIterator(ReplicationDB db, ChangeNumber changeNumber,
+ public JEReplicationIterator(ReplicationDB db, ChangeNumber changeNumber,
DbHandler dbHandler) throws ChangelogException
{
this.db = db;
@@ -86,20 +86,15 @@
}
}
- /**
- * Get the UpdateMsg where the iterator is currently set.
- * @return The UpdateMsg where the iterator is currently set.
- */
+ /** {@inheritDoc} */
+ @Override
public UpdateMsg getChange()
{
return currentChange;
}
- /**
- * Go to the next change in the ReplicationDB or in the server Queue.
- * @return false if the iterator is already on the last change before
- * this call.
- */
+ /** {@inheritDoc} */
+ @Override
public boolean next()
{
currentChange = cursor.next();
@@ -136,11 +131,8 @@
return currentChange != null;
}
- /**
- * Release the resources and locks used by this Iterator.
- * This method must be called when the iterator is no longer used.
- * Failure to do it could cause DB deadlock.
- */
+ /** {@inheritDoc} */
+ @Override
public void releaseCursor()
{
synchronized (this)
--
Gitblit v1.10.0