From 02bbeacbfb05101989dac510cbef7815fdf28a2e Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Mon, 01 Sep 2014 12:51:46 +0000
Subject: [PATCH] OPENDJ-1206 (CR-4393) Create a new ReplicationBackend/ChangelogBackend to support cn=changelog

---
 opends/src/server/org/opends/server/workflowelement/externalchangelog/ECLWorkflowElement.java |   84 +++--------------------------------------
 1 files changed, 7 insertions(+), 77 deletions(-)

diff --git a/opends/src/server/org/opends/server/workflowelement/externalchangelog/ECLWorkflowElement.java b/opends/src/server/org/opends/server/workflowelement/externalchangelog/ECLWorkflowElement.java
index 1f091e1..70206ad 100644
--- a/opends/src/server/org/opends/server/workflowelement/externalchangelog/ECLWorkflowElement.java
+++ b/opends/src/server/org/opends/server/workflowelement/externalchangelog/ECLWorkflowElement.java
@@ -22,49 +22,28 @@
  *
  *
  *      Copyright 2009 Sun Microsystems, Inc.
- *      Portions Copyright 2012 ForgeRock AS
+ *      Portions Copyright 2012-2014 ForgeRock AS
  */
 package org.opends.server.workflowelement.externalchangelog;
 
-
-
-import static org.opends.server.loggers.debug.DebugLogger.getTracer;
-
 import java.util.ArrayList;
 import java.util.List;
-import java.util.concurrent.CopyOnWriteArrayList;
 
 import org.opends.server.admin.std.server.WorkflowElementCfg;
 import org.opends.server.core.DirectoryServer;
-import org.opends.server.core.PersistentSearch;
 import org.opends.server.core.SearchOperation;
-import org.opends.server.loggers.debug.DebugTracer;
 import org.opends.server.replication.server.ReplicationServer;
 import org.opends.server.types.CanceledOperationException;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Operation;
 import org.opends.server.workflowelement.LeafWorkflowElement;
 
-
-
-
 /**
  * This class defines a workflow element for the external changelog (ECL);
  * e-g an entity that handles the processing of an operation against the ECL.
  */
-public class ECLWorkflowElement extends
-    LeafWorkflowElement<WorkflowElementCfg>
+public class ECLWorkflowElement extends LeafWorkflowElement<WorkflowElementCfg>
 {
-  /**
-   * The tracer object for the debug logger.
-   */
-  private static final DebugTracer TRACER = getTracer();
-
-  /**
-   *The set of persistent searches registered with this work flow element.
-   */
-  private final List<PersistentSearch> persistentSearches =
-    new CopyOnWriteArrayList<PersistentSearch>();
 
   /**
    * A string indicating the type of the workflow element.
@@ -75,7 +54,7 @@
    * The replication server object to which we will submits request
    * on the ECL. Retrieved from the local DirectoryServer.
    */
-  private ReplicationServer replicationServer;
+  private final ReplicationServer replicationServer;
 
   /**
    * Creates a new instance of the External Change Log workflow element.
@@ -91,26 +70,16 @@
     DirectoryServer.registerWorkflowElement(this);
   }
 
-  /**
-   * {@inheritDoc}
-   */
+  /** {@inheritDoc} */
   @Override
   public void finalizeWorkflowElement()
   {
-    // null all fields so that any use of the finalized object will raise
-    // an NPE
+    // null all fields so that any use of the finalized object will raise a NPE
     super.initialize(ECL_WORKFLOW_ELEMENT, null);
-
-    // Cancel all persistent searches.
-    for (PersistentSearch psearch : persistentSearches) {
-      psearch.cancel();
-    }
-    persistentSearches.clear();
   }
 
-  /**
-   * {@inheritDoc}
-   */
+  /** {@inheritDoc} */
+  @Override
   public void execute(Operation operation) throws CanceledOperationException {
     switch (operation.getOperationType())
     {
@@ -171,45 +140,6 @@
   }
 
   /**
-   * Registers the provided persistent search operation with this
-   * workflow element so that it will be notified of any
-   * add, delete, modify, or modify DN operations that are performed.
-   *
-   * @param persistentSearch
-   *          The persistent search operation to register with this
-   *          workflow element.
-   */
-  void registerPersistentSearch(PersistentSearch persistentSearch)
-  {
-    PersistentSearch.CancellationCallback callback =
-      new PersistentSearch.CancellationCallback()
-    {
-      public void persistentSearchCancelled(PersistentSearch psearch)
-      {
-        psearch.getSearchOperation().cancel(null);
-        persistentSearches.remove(psearch);
-      }
-    };
-
-    persistentSearches.add(persistentSearch);
-    persistentSearch.registerCancellationCallback(callback);
-  }
-
-
-
-  /**
-   * Gets the list of persistent searches currently active against
-   * this workflow element.
-   *
-   * @return The list of persistent searches currently active against
-   *         this workflow element.
-   */
-  public List<PersistentSearch> getPersistentSearches()
-  {
-    return persistentSearches;
-  }
-
-  /**
    * Returns the associated replication server.
    * @return the rs.
    */

--
Gitblit v1.10.0