From d93627ee43ca3e694a7c4275d63c0571c4ec83dd Mon Sep 17 00:00:00 2001
From: mmarie <mmarie@localhost>
Date: Thu, 18 Dec 2008 09:35:55 +0000
Subject: [PATCH] issue 3640 : Refactor Replication code to make it more generic

---
 opends/src/server/org/opends/server/replication/common/ServerState.java |   25 +++++++++++++++++++++++++
 1 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/common/ServerState.java b/opends/src/server/org/opends/server/replication/common/ServerState.java
index 559ae24..e6f1b7c 100644
--- a/opends/src/server/org/opends/server/replication/common/ServerState.java
+++ b/opends/src/server/org/opends/server/replication/common/ServerState.java
@@ -172,6 +172,31 @@
   }
 
   /**
+   * Replace the Server State with another ServerState.
+   *
+   * @param serverState The ServerState.
+   *
+   * @return a boolean indicating if the update was meaningful.
+   */
+  public boolean reload(ServerState serverState) {
+    if (serverState == null) {
+      return false;
+    }
+
+    boolean result = false;
+
+    clear();
+    for (Short id : serverState) {
+      ChangeNumber maxChangeNumber = getMaxChangeNumber(id);
+      if (update(maxChangeNumber)) {
+        result = true;
+      }
+    }
+
+    return (result);
+  }
+
+  /**
    * return a Set of String usable as a textual representation of
    * a Server state.
    * format : time seqnum id

--
Gitblit v1.10.0