From 52058eb1372410d825440f85626ef9655f688380 Mon Sep 17 00:00:00 2001
From: gbellato <gbellato@localhost>
Date: Mon, 24 Jul 2006 16:49:58 +0000
Subject: [PATCH] Update the synchronization configuration to - put changelog configuration below cn=Multimaster Synchronization,cn=Synchronization Providers,cn=config - use ds-cfg-changelog-server-id and ds-cfg-directory-server-id instead of ds-cfg-server-id - don't require the ds-cfg-changelog-server attribute in changelog configuration (ds-cfg-synchronization-changelog-server-config objectclass)

---
 opends/src/server/org/opends/server/synchronization/MultimasterSynchronization.java |   21 ++++++++++++++-------
 1 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/opends/src/server/org/opends/server/synchronization/MultimasterSynchronization.java b/opends/src/server/org/opends/server/synchronization/MultimasterSynchronization.java
index 4418c19..d4067a3 100644
--- a/opends/src/server/org/opends/server/synchronization/MultimasterSynchronization.java
+++ b/opends/src/server/org/opends/server/synchronization/MultimasterSynchronization.java
@@ -54,14 +54,18 @@
 /**
  * This class is used to load the Synchronization code inside the JVM
  * and to trigger initialization of the synchronization.
+ *
+ * It also extends the SynchronizationProvider class in order to have some
+ * synchronization code running during the operation process
+ * as pre-op, conflictRsolution, and post-op.
  */
 public class MultimasterSynchronization extends SynchronizationProvider
        implements ConfigAddListener, ConfigDeleteListener, ConfigChangeListener
 {
-  static String CHANGELOG_DN = "cn=Changelog Server, cn=config";
-  static String CHANGELOG_SERVER_ATTR = "ds-cfg-changelog-server";
-  static String SERVER_ID_ATTR = "ds-cfg-server-id";
-  static String CHANGELOG_PORT_ATTR = "ds-cfg-changelog-port";
+  static String CHANGELOG_DN = "cn=Changelog Server," +
+    "cn=Multimaster Synchronization, cn=Synchronization Providers, cn=config";
+  static String SYNCHRONIZATION_CLASS =
+    "ds-cfg-synchronization-provider-config";
 
   private Changelog changelog = null;
   private static Map<DN, SynchronizationDomain> domains =
@@ -107,9 +111,12 @@
      */
     for (ConfigEntry domainEntry : configEntry.getChildren().values())
     {
-      SynchronizationDomain domain = new SynchronizationDomain(domainEntry);
-      domains.put(domain.getBaseDN(), domain);
-      domain.start();
+      if (domainEntry.hasObjectClass(SYNCHRONIZATION_CLASS))
+      {
+        SynchronizationDomain domain = new SynchronizationDomain(domainEntry);
+        domains.put(domain.getBaseDN(), domain);
+        domain.start();
+      }
     }
   }
 

--
Gitblit v1.10.0