From 47ad5445b84bfedcf71353d2aebe46c65bd294a7 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 09 Oct 2013 11:12:19 +0000
Subject: [PATCH] OPENDJ-1116 Introduce abstraction for the changelog DB

---
 opends/src/server/org/opends/server/replication/common/LastCookieVirtualProvider.java |   34 +++++++++++++++++-----------------
 1 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/opends/src/server/org/opends/server/replication/common/LastCookieVirtualProvider.java b/opends/src/server/org/opends/server/replication/common/LastCookieVirtualProvider.java
index bc5abe1..ce91b48 100644
--- a/opends/src/server/org/opends/server/replication/common/LastCookieVirtualProvider.java
+++ b/opends/src/server/org/opends/server/replication/common/LastCookieVirtualProvider.java
@@ -27,10 +27,7 @@
  */
 package org.opends.server.replication.common;
 
-import static org.opends.messages.ExtensionMessages.*;
-
 import java.util.Collections;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
@@ -41,12 +38,16 @@
 import org.opends.server.config.ConfigException;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.core.SearchOperation;
+import org.opends.server.loggers.debug.DebugTracer;
 import org.opends.server.replication.plugin.MultimasterReplication;
 import org.opends.server.replication.server.ReplicationServer;
 import org.opends.server.types.*;
 import org.opends.server.util.ServerConstants;
 import org.opends.server.workflowelement.externalchangelog.ECLWorkflowElement;
 
+import static org.opends.messages.ExtensionMessages.*;
+import static org.opends.server.loggers.debug.DebugLogger.*;
+
 /**
  * This class implements a virtual attribute provider in the root-dse entry
  * that contains the last (newest) cookie (cross domain state)
@@ -58,6 +59,11 @@
 {
 
   /**
+   * The tracer object for the debug logger.
+   */
+  private static final DebugTracer TRACER = getTracer();
+
+  /**
    * Creates a new instance of this member virtual attribute provider.
    */
   public LastCookieVirtualProvider()
@@ -89,7 +95,7 @@
   @Override()
   public void finalizeVirtualAttributeProvider()
   {
-    //
+    // nothing to finalize
   }
 
   /**
@@ -120,7 +126,6 @@
   @Override()
   public Set<AttributeValue> getValues(Entry entry,VirtualAttributeRule rule)
   {
-    Set<AttributeValue> values = new HashSet<AttributeValue>();
     try
     {
       ECLWorkflowElement eclwe = (ECLWorkflowElement)
@@ -132,22 +137,17 @@
           MultimasterReplication.getECLDisabledDomains();
         excludedDomains.add(ServerConstants.DN_EXTERNAL_CHANGELOG_ROOT);
 
-        ReplicationServer rs = eclwe.getReplicationServer();
-        MultiDomainServerState lastCookie =
-          rs.getLastECLCookie(excludedDomains);
-
-        AttributeValue value =
-          AttributeValues.create(
-              ByteString.valueOf(lastCookie.toString()),
-              ByteString.valueOf(lastCookie.toString()));
-        values=Collections.singleton(value);
+        final ReplicationServer rs = eclwe.getReplicationServer();
+        String newestCookie = rs.getNewestECLCookie(excludedDomains).toString();
+        final ByteString cookie = ByteString.valueOf(newestCookie);
+        return Collections.singleton(AttributeValues.create(cookie, cookie));
       }
-      return values;
     }
-    catch(Exception e)
+    catch (Exception e)
     {
-      return values;
+      TRACER.debugCaught(DebugLogLevel.ERROR, e);
     }
+    return Collections.emptySet();
   }
 
   /**

--
Gitblit v1.10.0