mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

gbellato
25.35.2007 44789f3979a2303ba8501b6b97b880bb53f321fa
opendj-sdk/opends/src/server/org/opends/server/replication/plugin/MultimasterReplication.java
File was renamed from opendj-sdk/opends/src/server/org/opends/server/replication/plugin/MultimasterSynchronization.java
@@ -59,17 +59,17 @@
import org.opends.server.types.ResultCode;
import org.opends.server.types.SynchronizationProviderResult;
import static org.opends.server.messages.SynchronizationMessages.*;
import static org.opends.server.messages.ReplicationMessages.*;
/**
 * This class is used to load the Synchronization code inside the JVM
 * and to trigger initialization of the synchronization.
 * This class is used to load the Replication code inside the JVM
 * and to trigger initialization of the replication.
 *
 * It also extends the SynchronizationProvider class in order to have some
 * synchronization code running during the operation process
 * replication code running during the operation process
 * as pre-op, conflictRsolution, and post-op.
 */
public class MultimasterSynchronization
public class MultimasterReplication
       extends SynchronizationProvider<MultimasterSynchronizationProviderCfg>
       implements ConfigurationAddListener<MultimasterDomainCfg>,
                  ConfigurationDeleteListener<MultimasterDomainCfg>,
@@ -82,8 +82,8 @@
    "ds-cfg-synchronization-provider-config";
  private ChangelogListener changelog = null;
  private static Map<DN, SynchronizationDomain> domains =
    new HashMap<DN, SynchronizationDomain>() ;
  private static Map<DN, ReplicationDomain> domains =
    new HashMap<DN, ReplicationDomain>() ;
  /**
@@ -105,7 +105,7 @@
    for (String name : configuration.listMultimasterDomains())
    {
      MultimasterDomainCfg domain = configuration.getMultimasterDomain(name);
      createNewSynchronizationDomain(domain);
      createNewDomain(domain);
    }
    /*
@@ -131,7 +131,7 @@
  public boolean isConfigurationAddAcceptable(
      MultimasterDomainCfg configuration, List<String> unacceptableReasons)
  {
    return SynchronizationDomain.isConfigurationAcceptable(
    return ReplicationDomain.isConfigurationAcceptable(
      configuration, unacceptableReasons);
  }
@@ -143,7 +143,7 @@
  {
    try
    {
      createNewSynchronizationDomain(configuration);
      createNewDomain(configuration);
      return new ConfigChangeResult(ResultCode.SUCCESS, false);
    } catch (ConfigException e)
    {
@@ -154,18 +154,18 @@
  }
  /**
   * Creates a New Synchronization domain from its configEntry, do the
   * Creates a new domain from its configEntry, do the
   * necessary initialization and starts it so that it is
   * fully operational when this method returns.
   * @param configuration The entry whith the configuration of this domain.
   * @throws ConfigException When the configuration is not valid.
   */
  private void createNewSynchronizationDomain(
  private void createNewDomain(
      MultimasterDomainCfg configuration)
      throws ConfigException
  {
    SynchronizationDomain domain;
    domain = new SynchronizationDomain(configuration);
    ReplicationDomain domain;
    domain = new ReplicationDomain(configuration);
    domains.put(domain.getBaseDN(), domain);
    domain.start();
  }
@@ -218,7 +218,7 @@
  public SynchronizationProviderResult handleConflictResolution(
                                                ModifyOperation modifyOperation)
  {
    SynchronizationDomain domain =
    ReplicationDomain domain =
      findDomain(modifyOperation.getEntryDN(), modifyOperation);
    if (domain == null)
      return new SynchronizationProviderResult(true);
@@ -233,7 +233,7 @@
  public SynchronizationProviderResult handleConflictResolution(
      AddOperation addOperation) throws DirectoryException
  {
    SynchronizationDomain domain =
    ReplicationDomain domain =
      findDomain(addOperation.getEntryDN(), addOperation);
    if (domain == null)
      return new SynchronizationProviderResult(true);
@@ -248,7 +248,7 @@
  public SynchronizationProviderResult handleConflictResolution(
      DeleteOperation deleteOperation) throws DirectoryException
  {
    SynchronizationDomain domain =
    ReplicationDomain domain =
      findDomain(deleteOperation.getEntryDN(), deleteOperation);
    if (domain == null)
      return new SynchronizationProviderResult(true);
@@ -263,7 +263,7 @@
  public SynchronizationProviderResult handleConflictResolution(
      ModifyDNOperation modifyDNOperation) throws DirectoryException
  {
    SynchronizationDomain domain =
    ReplicationDomain domain =
      findDomain(modifyDNOperation.getEntryDN(), modifyDNOperation);
    if (domain == null)
      return new SynchronizationProviderResult(true);
@@ -279,7 +279,7 @@
      doPreOperation(ModifyOperation modifyOperation)
  {
    DN operationDN = modifyOperation.getEntryDN();
    SynchronizationDomain domain = findDomain(operationDN, modifyOperation);
    ReplicationDomain domain = findDomain(operationDN, modifyOperation);
    if ((domain == null) || (!domain.solveConflict()))
      return new SynchronizationProviderResult(true);
@@ -324,7 +324,7 @@
  @Override
  public SynchronizationProviderResult doPreOperation(AddOperation addOperation)
  {
    SynchronizationDomain domain =
    ReplicationDomain domain =
      findDomain(addOperation.getEntryDN(), addOperation);
    if (domain == null)
      return new SynchronizationProviderResult(true);
@@ -342,8 +342,8 @@
  @Override
  public void finalizeSynchronizationProvider()
  {
    // shutdown all the Synchronization domains
    for (SynchronizationDomain domain : domains.values())
    // shutdown all the domains
    for (ReplicationDomain domain : domains.values())
    {
      domain.shutdown();
    }
@@ -359,23 +359,23 @@
  }
  /**
   * Finds the Synchronization domain for a given DN.
   * Finds the domain for a given DN.
   *
   * @param dn   The DN for which the domain must be returned.
   * @param op   An optional operation for which the check is done.
   *             Can be null is the request has no associated operation.
   * @return     The Synchronization domain for this DN.
   * @return     The domain for this DN.
   */
  public static SynchronizationDomain findDomain(DN dn, Operation op)
  public static ReplicationDomain findDomain(DN dn, Operation op)
  {
    /*
     * Don't run the special synchronization code on Operation that are
     * Don't run the special replication code on Operation that are
     * specifically marked as don't synchronize.
     */
    if ((op != null) && op.dontSynchronize())
      return null;
    SynchronizationDomain domain = null;
    ReplicationDomain domain = null;
    DN temp = dn;
    do
    {
@@ -398,7 +398,7 @@
   */
  private void genericPostOperation(Operation operation, DN dn)
  {
    SynchronizationDomain domain = findDomain(dn, operation);
    ReplicationDomain domain = findDomain(dn, operation);
    if (domain == null)
      return;
@@ -411,7 +411,7 @@
   * This method is called whenever the server detects a modification
   * of the schema done by directly modifying the backing files
   * of the schema backend.
   * Call the schema Synchronization Domain if it exists.
   * Call the schema Domain if it exists.
   *
   * @param  modifications  The list of modifications that was
   *                                      applied to the schema.
@@ -420,7 +420,7 @@
  @Override
  public void processSchemaChange(List<Modification> modifications)
  {
    SynchronizationDomain domain =
    ReplicationDomain domain =
      findDomain(DirectoryServer.getSchemaDN(), null);
    if (domain != null)
      domain.synchronizeModifications(modifications);
@@ -433,7 +433,7 @@
  {
    for (DN dn : backend.getBaseDNs())
    {
      SynchronizationDomain domain = findDomain(dn, null);
      ReplicationDomain domain = findDomain(dn, null);
      if (domain != null)
        domain.backupStart();
    }
@@ -447,7 +447,7 @@
  {
    for (DN dn : backend.getBaseDNs())
    {
      SynchronizationDomain domain = findDomain(dn, null);
      ReplicationDomain domain = findDomain(dn, null);
      if (domain != null)
        domain.backupEnd();
    }
@@ -460,7 +460,7 @@
  {
    for (DN dn : backend.getBaseDNs())
    {
      SynchronizationDomain domain = findDomain(dn, null);
      ReplicationDomain domain = findDomain(dn, null);
      if (domain != null)
        domain.disable();
    }
@@ -474,7 +474,7 @@
  {
    for (DN dn : backend.getBaseDNs())
    {
      SynchronizationDomain domain = findDomain(dn, null);
      ReplicationDomain domain = findDomain(dn, null);
      if (domain != null)
        domain.enable();
    }
@@ -487,7 +487,7 @@
  {
    for (DN dn : backend.getBaseDNs())
    {
      SynchronizationDomain domain = findDomain(dn, null);
      ReplicationDomain domain = findDomain(dn, null);
      if (domain != null)
        domain.disable();
    }
@@ -501,7 +501,7 @@
  {
    for (DN dn : backend.getBaseDNs())
    {
      SynchronizationDomain domain = findDomain(dn, null);
      ReplicationDomain domain = findDomain(dn, null);
      if (domain != null)
        domain.enable();
    }
@@ -514,7 +514,7 @@
  {
    for (DN dn : backend.getBaseDNs())
    {
      SynchronizationDomain domain = findDomain(dn, null);
      ReplicationDomain domain = findDomain(dn, null);
      if (domain != null)
        domain.backupStart();
    }
@@ -528,7 +528,7 @@
  {
    for (DN dn : backend.getBaseDNs())
    {
      SynchronizationDomain domain = findDomain(dn, null);
      ReplicationDomain domain = findDomain(dn, null);
      if (domain != null)
        domain.backupEnd();
    }
@@ -541,7 +541,7 @@
      MultimasterDomainCfg configuration)
  {
    DN dn = configuration.getSynchronizationDN();
    SynchronizationDomain domain = domains.remove(dn);
    ReplicationDomain domain = domains.remove(dn);
    if (domain != null)
      domain.shutdown();