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

Jean-Noel Rouvignac
29.47.2014 e1f131fbeb3687cdba3fb1eaf379911645bc7d21
Removed useless calls to toString() in logging statements.
Code cleanup.
19 files modified
465 ■■■■■ changed files
opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/Target.java 28 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/backends/jeb/EntryCachePreloader.java 2 ●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/backends/jeb/EntryContainer.java 10 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/core/SubentryPasswordPolicy.java 9 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/loggers/TextAccessLogPublisher.java 14 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/loggers/TextAuditLogPublisher.java 12 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/loggers/TextDebugLogPublisher.java 13 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/loggers/TextErrorLogPublisher.java 158 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/loggers/TextHTTPAccessLogPublisher.java 18 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/plugin/EntryHistorical.java 3 ●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/plugin/PersistentServerState.java 4 ●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/server/DataServerHandler.java 3 ●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/server/MessageHandler.java 15 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationDomainMonitor.java 4 ●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationServerDomain.java 32 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationServerHandler.java 6 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/server/changelog/je/ReplicationDB.java 5 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/service/ReplicationBroker.java 48 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/CryptoManagerTestCase.java 81 ●●●●● patch | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/Target.java
@@ -24,17 +24,17 @@
 *      Copyright 2008 Sun Microsystems, Inc.
 *      Portions Copyright 2014 ForgeRock AS
 */
package org.opends.server.authorization.dseecompat;
import org.forgerock.i18n.LocalizableMessage;
import static org.opends.messages.AccessControlMessages.*;
import static org.opends.server.authorization.dseecompat.Aci.*;
import java.util.regex.Pattern;
import org.opends.server.types.DN;
import org.opends.server.types.DirectoryException;
import org.opends.server.types.LDAPURL;
import static org.opends.messages.AccessControlMessages.*;
import static org.opends.server.authorization.dseecompat.Aci.*;
/**
 * A class representing an ACI target keyword.
 */
@@ -48,18 +48,18 @@
    /**
     * True if the URL contained a DN wild-card pattern.
     */
    private boolean isPattern=false;
    private boolean isPattern;
    /**
     * The target DN from the URL or null if it was a wild-card pattern.
     */
    private DN urlDN=null;
    private DN urlDN;
    /**
     * The pattern matcher for a wild-card pattern or null if the URL
     * contained an ordinary DN.
     */
    private PatternDN patternDN =null;
    private PatternDN patternDN;
    /*
     * TODO Save aciDN parameter and use it in matchesPattern re-write.
@@ -82,11 +82,8 @@
        this.operator = operator;
        try {
          //The NULL_LDAP_URL corresponds to the root DSE.
          if((!target.equals(NULL_LDAP_URL)) &&
             (!Pattern.matches(LDAP_URL, target))) {
              LocalizableMessage message =
                  WARN_ACI_SYNTAX_INVALID_TARGETKEYWORD_EXPRESSION.get(target);
              throw new AciException(message);
          if (!NULL_LDAP_URL.equals(target) && !Pattern.matches(LDAP_URL, target)) {
              throw new AciException(WARN_ACI_SYNTAX_INVALID_TARGETKEYWORD_EXPRESSION.get(target));
          }
          LDAPURL targetURL =  LDAPURL.decode(target, false);
          if(targetURL.getRawBaseDN().indexOf("*") != -1) {
@@ -95,15 +92,12 @@
          } else {
              urlDN=targetURL.getBaseDN();
              if(!urlDN.isDescendantOf(aciDN)) {
                  throw new AciException(WARN_ACI_SYNTAX_TARGET_DN_NOT_DESCENDENTOF.get(urlDN.toString(),
                      aciDN.toString()));
                  throw new AciException(WARN_ACI_SYNTAX_TARGET_DN_NOT_DESCENDENTOF.get(urlDN, aciDN));
              }
          }
        }
        catch (DirectoryException e){
            LocalizableMessage message =
                WARN_ACI_SYNTAX_INVALID_TARGETKEYWORD_EXPRESSION.get(target);
            throw new AciException(message);
            throw new AciException(WARN_ACI_SYNTAX_INVALID_TARGETKEYWORD_EXPRESSION.get(target));
        }
    }
opendj3-server-dev/src/server/org/opends/server/backends/jeb/EntryCachePreloader.java
@@ -284,7 +284,7 @@
            processedEntries.getAndIncrement();
          } catch (Exception ex) {
            logger.traceException(ex);
            logger.error(ERR_CACHE_PRELOAD_ENTRY_FAILED, entry.getName().toString(),
            logger.error(ERR_CACHE_PRELOAD_ENTRY_FAILED, entry.getName(),
              (ex.getCause() != null ? ex.getCause().getMessage() :
                stackTraceToSingleLineString(ex)));
          }
opendj3-server-dev/src/server/org/opends/server/backends/jeb/EntryContainer.java
@@ -119,7 +119,7 @@
  /**
   * The backend to which this entry entryContainer belongs.
   */
  private final Backend backend;
  private final Backend<?> backend;
  /**
   * The root container in which this entryContainer belongs.
@@ -1702,9 +1702,7 @@
          EntryID nodeID = dn2id.get(txn, dn, LockMode.DEFAULT);
          if (nodeID == null)
          {
            LocalizableMessage msg =
              ERR_JEB_MISSING_DN2ID_RECORD.get(dn.toString());
            throw new JebException(msg);
            throw new JebException(ERR_JEB_MISSING_DN2ID_RECORD.get(dn));
          }
          // Insert into id2subtree for this node.
@@ -2065,9 +2063,7 @@
      EntryID parentID = dn2id.get(txn, parentDN, LockMode.DEFAULT);
      if (parentID == null)
      {
        LocalizableMessage msg =
          ERR_JEB_MISSING_DN2ID_RECORD.get(parentDN.toString());
        throw new JebException(msg);
        throw new JebException(ERR_JEB_MISSING_DN2ID_RECORD.get(parentDN));
      }
      if(indexBuffer != null)
opendj3-server-dev/src/server/org/opends/server/core/SubentryPasswordPolicy.java
@@ -178,8 +178,7 @@
      if (this.pPasswordAttribute == null)
      {
        throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM,
            ERR_PWPOLICY_UNDEFINED_PASSWORD_ATTRIBUTE.get(
                this.passwordPolicySubentryDN.toString(), value));
            ERR_PWPOLICY_UNDEFINED_PASSWORD_ATTRIBUTE.get(this.passwordPolicySubentryDN, value));
      }
      // Check the syntax.
@@ -262,9 +261,7 @@
            if (DirectoryServer.getPasswordValidator(validatorDN) == null)
            {
              throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION,
                  ERR_PWPOLICY_UNKNOWN_VALIDATOR.get(
                      this.passwordPolicySubentryDN.toString(),
                      validatorDN.toString(), PWD_ATTR_VALIDATOR));
                  ERR_PWPOLICY_UNKNOWN_VALIDATOR.get(this.passwordPolicySubentryDN, validatorDN, PWD_ATTR_VALIDATOR));
            }
            pValidatorNames.add(validatorDN);
          }
@@ -717,7 +714,7 @@
      // Only log an error once, on first error
      if (isAlreadyLogged.compareAndSet(false, true)) {
        logger.error(ERR_PWPOLICY_REJECT_DUE_TO_UNKNOWN_VALIDATOR_LOG,
            userEntry.getName().toString(), pwPolicyName, validatorName);
            userEntry.getName(), pwPolicyName, validatorName);
      }
      return false;
    }
opendj3-server-dev/src/server/org/opends/server/loggers/TextAccessLogPublisher.java
@@ -189,16 +189,14 @@
            && config.isAsynchronous())
        {
          // The asynchronous setting is being turned on.
          writer = new AsynchronousTextWriter(
          "Asynchronous Text Writer for " + config.dn().toString(),
          writer = new AsynchronousTextWriter("Asynchronous Text Writer for " + config.dn(),
          config.getQueueSize(), config.isAutoFlush(), mfWriter);
        }
        if (!(writer instanceof ParallelTextWriter) && config.isAsynchronous())
        {
          // The asynchronous setting is being turned on.
          writer = new ParallelTextWriter(
              "Parallel Text Writer for " + config.dn().toString(),
          writer = new ParallelTextWriter("Parallel Text Writer for " + config.dn(),
              config.isAutoFlush(), mfWriter);
        }
@@ -253,7 +251,7 @@
          && !cfg.isAsynchronous();
      final MultifileTextWriter theWriter = new MultifileTextWriter(
          "Multifile Text Writer for " + cfg.dn().toString(),
          "Multifile Text Writer for " + cfg.dn(),
          cfg.getTimeInterval(), fnPolicy, perm, errorHandler, "UTF-8",
          writerAutoFlush, cfg.isAppend(), (int) cfg.getBufferSize());
@@ -273,13 +271,13 @@
        if (cfg.getQueueSize() > 0)
        {
          this.writer = new AsynchronousTextWriter(
              "Asynchronous Text Writer for " + cfg.dn().toString(),
              "Asynchronous Text Writer for " + cfg.dn(),
              cfg.getQueueSize(), cfg.isAutoFlush(), theWriter);
        }
        else
        {
          this.writer = new ParallelTextWriter("Parallel Text Writer for "
              + cfg.dn().toString(), cfg.isAutoFlush(), theWriter);
          this.writer = new ParallelTextWriter("Parallel Text Writer for " + cfg.dn(),
              cfg.isAutoFlush(), theWriter);
        }
      }
      else
opendj3-server-dev/src/server/org/opends/server/loggers/TextAuditLogPublisher.java
@@ -138,9 +138,7 @@
            && config.isAsynchronous())
        {
          // The asynchronous setting is being turned on.
          writer = new AsynchronousTextWriter(
              "Asynchronous Text Writer for " +
                  config.dn().toString(),
          writer = new AsynchronousTextWriter("Asynchronous Text Writer for " + config.dn(),
              config.getQueueSize(), config.isAutoFlush(), mfWriter);
        }
@@ -198,8 +196,7 @@
      boolean writerAutoFlush = cfg.isAutoFlush()
          && !cfg.isAsynchronous();
      MultifileTextWriter writer = new MultifileTextWriter(
          "Multifile Text Writer for " + cfg.dn().toString(),
      MultifileTextWriter writer = new MultifileTextWriter("Multifile Text Writer for " + cfg.dn(),
          cfg.getTimeInterval(), fnPolicy, perm, errorHandler, "UTF-8",
          writerAutoFlush, cfg.isAppend(), (int) cfg.getBufferSize());
@@ -216,9 +213,8 @@
      if (cfg.isAsynchronous())
      {
        this.writer = new AsynchronousTextWriter("Asynchronous Text Writer for "
            + cfg.dn().toString(), cfg.getQueueSize(), cfg
            .isAutoFlush(), writer);
        this.writer = new AsynchronousTextWriter("Asynchronous Text Writer for " + cfg.dn(),
            cfg.getQueueSize(), cfg.isAutoFlush(), writer);
      }
      else
      {
opendj3-server-dev/src/server/org/opends/server/loggers/TextDebugLogPublisher.java
@@ -138,9 +138,7 @@
      boolean writerAutoFlush =
          config.isAutoFlush() && !config.isAsynchronous();
      MultifileTextWriter writer =
          new MultifileTextWriter("Multifile Text Writer for " +
              config.dn().toString(),
      MultifileTextWriter writer = new MultifileTextWriter("Multifile Text Writer for " + config.dn(),
                                  config.getTimeInterval(),
                                  fnPolicy,
                                  perm,
@@ -163,8 +161,7 @@
      if(config.isAsynchronous())
      {
        this.writer = new AsynchronousTextWriter(
            "Asynchronous Text Writer for " + config.dn().toString(),
        this.writer = new AsynchronousTextWriter("Asynchronous Text Writer for " + config.dn(),
            config.getQueueSize(), config.isAutoFlush(), writer);
      }
      else
@@ -306,10 +303,8 @@
            config.isAsynchronous())
        {
          // The asynchronous setting is being turned on.
          writer = new AsynchronousTextWriter("Asynchronous Text Writer for " +
              config.dn().toString(), config.getQueueSize(),
                                                config.isAutoFlush(),
                                                mfWriter);
          writer = new AsynchronousTextWriter("Asynchronous Text Writer for " + config.dn(),
              config.getQueueSize(), config.isAutoFlush(), mfWriter);
        }
        if((currentConfig.isAsynchronous() && config.isAsynchronous()) &&
opendj3-server-dev/src/server/org/opends/server/loggers/TextErrorLogPublisher.java
@@ -41,11 +41,12 @@
import java.util.StringTokenizer;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.messages.Severity;
import org.opends.server.admin.server.ConfigurationChangeListener;
import org.opends.server.admin.std.meta.ErrorLogPublisherCfgDefn;
import org.opends.server.admin.std.server.FileBasedErrorLogPublisherCfg;
import org.forgerock.opendj.config.server.ConfigException;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.ServerContext;
import org.opends.server.types.ConfigChangeResult;
@@ -53,7 +54,6 @@
import org.opends.server.types.DirectoryException;
import org.opends.server.types.FilePermission;
import org.opends.server.types.InitializationException;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.util.StaticUtils;
import org.opends.server.util.TimeThread;
@@ -114,9 +114,7 @@
  /**
   * {@inheritDoc}
   */
  /** {@inheritDoc} */
  @Override
  public void initializeLogPublisher(FileBasedErrorLogPublisherCfg config, ServerContext serverContext)
      throws ConfigException, InitializationException
@@ -135,9 +133,7 @@
      boolean writerAutoFlush =
          config.isAutoFlush() && !config.isAsynchronous();
      MultifileTextWriter writer =
          new MultifileTextWriter("Multifile Text Writer for " +
              config.dn().toString(),
      MultifileTextWriter writer = new MultifileTextWriter("Multifile Text Writer for " + config.dn(),
                                  config.getTimeInterval(),
                                  fnPolicy,
                                  perm,
@@ -160,9 +156,7 @@
      if(config.isAsynchronous())
      {
        this.writer = new AsynchronousTextWriter(
            "Asynchronous Text Writer for " +
              config.dn().toString(),
        this.writer = new AsynchronousTextWriter("Asynchronous Text Writer for " + config.dn(),
            config.getQueueSize(), config.isAutoFlush(), writer);
      }
      else
@@ -181,38 +175,7 @@
          ERR_CONFIG_LOGGING_CANNOT_OPEN_FILE.get(logFile, config.dn(), e), e);
    }
    Set<ErrorLogPublisherCfgDefn.DefaultSeverity> defSevs =
        config.getDefaultSeverity();
    if(defSevs.isEmpty())
    {
      defaultSeverities.add(Severity.ERROR);
      defaultSeverities.add(Severity.WARNING);
    } else
    {
      for(ErrorLogPublisherCfgDefn.DefaultSeverity defSev : defSevs)
      {
        if(defSev.toString().equalsIgnoreCase(LOG_SEVERITY_ALL))
        {
          defaultSeverities.add(Severity.ERROR);
          defaultSeverities.add(Severity.WARNING);
          defaultSeverities.add(Severity.NOTICE);
          defaultSeverities.add(Severity.INFORMATION);
        }
        else if (defSev.toString().equalsIgnoreCase(LOG_SEVERITY_NONE))
        {
          // don't add any severity
        }
        else
        {
          Severity errorSeverity =
              Severity.parseString(defSev.name());
          if(errorSeverity != null)
          {
            defaultSeverities.add(errorSeverity);
          }
        }
      }
    }
    setDefaultSeverities(config.getDefaultSeverity());
    for(String overrideSeverity : config.getOverrideSeverity())
    {
@@ -237,7 +200,7 @@
            {
              String severityName = sevTokenizer.nextToken();
              severityName = severityName.replace("-", "_").toUpperCase();
              if(severityName.equalsIgnoreCase(LOG_SEVERITY_ALL))
              if(LOG_SEVERITY_ALL.equalsIgnoreCase(severityName))
              {
                severities.add(Severity.ERROR);
                severities.add(Severity.WARNING);
@@ -248,8 +211,7 @@
              {
                try
                {
                  Severity severity = Severity.parseString(severityName);
                  severities.add(severity);
                  severities.add(Severity.parseString(severityName));
                }
                catch(Exception e)
                {
@@ -277,9 +239,7 @@
  /**
   * {@inheritDoc}
   */
  /** {@inheritDoc} */
  @Override()
  public boolean isConfigurationAcceptable(
      FileBasedErrorLogPublisherCfg config, List<LocalizableMessage> unacceptableReasons)
@@ -287,9 +247,7 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /**
   * {@inheritDoc}
   */
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      FileBasedErrorLogPublisherCfg config, List<LocalizableMessage> unacceptableReasons)
@@ -335,7 +293,7 @@
          {
            String severityName = sevTokenizer.nextToken();
            severityName = severityName.replace("-", "_").toUpperCase();
            if(!severityName.equalsIgnoreCase(LOG_SEVERITY_ALL))
            if(!LOG_SEVERITY_ALL.equalsIgnoreCase(severityName))
            {
              try
              {
@@ -356,9 +314,7 @@
    return true;
  }
  /**
   * {@inheritDoc}
   */
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
      FileBasedErrorLogPublisherCfg config)
@@ -368,38 +324,7 @@
    boolean adminActionRequired = false;
    List<LocalizableMessage> messages = new ArrayList<LocalizableMessage>();
    Set<ErrorLogPublisherCfgDefn.DefaultSeverity> defSevs =
        config.getDefaultSeverity();
    defaultSeverities.clear();
    if(defSevs.isEmpty())
    {
      defaultSeverities.add(Severity.ERROR);
      defaultSeverities.add(Severity.WARNING);
    } else
    {
      for(ErrorLogPublisherCfgDefn.DefaultSeverity defSev : defSevs)
      {
        if(defSev.toString().equalsIgnoreCase(LOG_SEVERITY_ALL))
        {
          defaultSeverities.add(Severity.ERROR);
          defaultSeverities.add(Severity.WARNING);
          defaultSeverities.add(Severity.INFORMATION);
          defaultSeverities.add(Severity.NOTICE);
        }
        else if (defSev.toString().equalsIgnoreCase(LOG_SEVERITY_NONE))
        {
          // don't add any severity
        }
        else
        {
          Severity errorSeverity = Severity.parseString(defSev.name());
          if(errorSeverity != null)
          {
            defaultSeverities.add(errorSeverity);
          }
        }
      }
    }
    setDefaultSeverities(config.getDefaultSeverity());
    definedSeverities.clear();
    for(String overrideSeverity : config.getOverrideSeverity())
@@ -426,7 +351,7 @@
            {
              String severityName = sevTokenizer.nextToken();
              severityName = severityName.replace("-", "_").toUpperCase();
              if(severityName.equalsIgnoreCase(LOG_SEVERITY_ALL))
              if(LOG_SEVERITY_ALL.equalsIgnoreCase(severityName))
              {
                severities.add(Severity.ERROR);
                severities.add(Severity.INFORMATION);
@@ -437,8 +362,7 @@
              {
                try
                {
                  Severity severity = Severity.parseString(severityName);
                  severities.add(severity);
                  severities.add(Severity.parseString(severityName));
                }
                catch(Exception e)
                {
@@ -510,7 +434,7 @@
        if(writer instanceof AsynchronousTextWriter && !config.isAsynchronous())
        {
          // The asynchronous setting is being turned off.
          AsynchronousTextWriter asyncWriter = ((AsynchronousTextWriter)writer);
          AsynchronousTextWriter asyncWriter = (AsynchronousTextWriter)writer;
          writer = mfWriter;
          asyncWriter.shutdown(false);
        }
@@ -519,10 +443,8 @@
            config.isAsynchronous())
        {
          // The asynchronous setting is being turned on.
          writer = new AsynchronousTextWriter("Asynchronous Text Writer for " +
              config.dn().toString(), config.getQueueSize(),
                                                config.isAutoFlush(),
                                                mfWriter);
          writer = new AsynchronousTextWriter("Asynchronous Text Writer for " + config.dn(),
              config.getQueueSize(), config.isAutoFlush(), mfWriter);
        }
        if (currentConfig.isAsynchronous()
@@ -545,11 +467,43 @@
    return new ConfigChangeResult(resultCode, adminActionRequired, messages);
  }
  private void setDefaultSeverities(Set<ErrorLogPublisherCfgDefn.DefaultSeverity> defSevs)
  {
    defaultSeverities.clear();
    if (defSevs.isEmpty())
    {
      defaultSeverities.add(Severity.ERROR);
      defaultSeverities.add(Severity.WARNING);
    }
    else
    {
      for (ErrorLogPublisherCfgDefn.DefaultSeverity defSev : defSevs)
      {
        String defaultSeverity = defSev.toString();
        if (LOG_SEVERITY_ALL.equalsIgnoreCase(defaultSeverity))
        {
          defaultSeverities.add(Severity.ERROR);
          defaultSeverities.add(Severity.WARNING);
          defaultSeverities.add(Severity.INFORMATION);
          defaultSeverities.add(Severity.NOTICE);
        }
        else if (LOG_SEVERITY_NONE.equalsIgnoreCase(defaultSeverity))
        {
          // don't add any severity
        }
        else
        {
          Severity errorSeverity = Severity.parseString(defSev.name());
          if (errorSeverity != null)
          {
            defaultSeverities.add(errorSeverity);
          }
        }
      }
    }
  }
  /**
   * {@inheritDoc}
   */
  /** {@inheritDoc} */
  @Override
  public void close()
  {
@@ -604,9 +558,7 @@
    return severities.contains(severity);
  }
  /**
   * {@inheritDoc}
   */
  /** {@inheritDoc} */
  @Override
  public DN getDN()
  {
opendj3-server-dev/src/server/org/opends/server/loggers/TextHTTPAccessLogPublisher.java
@@ -198,10 +198,9 @@
            && config.isAsynchronous())
        {
          // The asynchronous setting is being turned on.
          final AsynchronousTextWriter asyncWriter =
              new AsynchronousTextWriter("Asynchronous Text Writer for "
                  + config.dn().toString(), config.getQueueSize(),
                  config.isAutoFlush(), mfWriter);
          final AsynchronousTextWriter asyncWriter = new AsynchronousTextWriter(
              "Asynchronous Text Writer for " + config.dn(),
              config.getQueueSize(), config.isAutoFlush(), mfWriter);
          writer = asyncWriter;
        }
@@ -209,7 +208,7 @@
        {
          // The asynchronous setting is being turned on.
          final ParallelTextWriter asyncWriter = new ParallelTextWriter(
              "Parallel Text Writer for " + config.dn().toString(),
              "Parallel Text Writer for " + config.dn(),
              config.isAutoFlush(), mfWriter);
          writer = asyncWriter;
        }
@@ -322,7 +321,7 @@
          && !cfg.isAsynchronous();
      final MultifileTextWriter theWriter = new MultifileTextWriter(
          "Multifile Text Writer for " + cfg.dn().toString(),
          "Multifile Text Writer for " + cfg.dn(),
          cfg.getTimeInterval(), fnPolicy, perm, errorHandler, "UTF-8",
          writerAutoFlush, cfg.isAppend(), (int) cfg.getBufferSize());
@@ -341,14 +340,13 @@
      {
        if (cfg.getQueueSize() > 0)
        {
          this.writer = new AsynchronousTextWriter(
              "Asynchronous Text Writer for " + cfg.dn().toString(),
          this.writer = new AsynchronousTextWriter("Asynchronous Text Writer for " + cfg.dn(),
              cfg.getQueueSize(), cfg.isAutoFlush(), theWriter);
        }
        else
        {
          this.writer = new ParallelTextWriter("Parallel Text Writer for "
              + cfg.dn().toString(), cfg.isAutoFlush(), theWriter);
          this.writer = new ParallelTextWriter("Parallel Text Writer for " + cfg.dn(),
              cfg.isAutoFlush(), theWriter);
        }
      }
      else
opendj3-server-dev/src/server/org/opends/server/replication/plugin/EntryHistorical.java
@@ -680,8 +680,7 @@
               * historical information is going to be kept.
               * Log information for the repair tool.
               */
              logger.error(ERR_UNKNOWN_ATTRIBUTE_IN_HISTORICAL, entry.getName().toString(),
                  histVal.getAttrString());
              logger.error(ERR_UNKNOWN_ATTRIBUTE_IN_HISTORICAL, entry.getName(), histVal.getAttrString());
              continue;
            }
opendj3-server-dev/src/server/org/opends/server/replication/plugin/PersistentServerState.java
@@ -344,7 +344,7 @@
      {
        // An error happened trying to search for the updates
        // Log an error
        logger.error(ERR_CANNOT_RECOVER_CHANGES, baseDN.toString());
        logger.error(ERR_CANNOT_RECOVER_CHANGES, baseDN);
        return;
      }
@@ -369,7 +369,7 @@
      {
        // Update the serverState with the new maxCsn present in the database
        update(dbMaxCSN);
        logger.info(NOTE_SERVER_STATE_RECOVERY, baseDN.toString(), dbMaxCSN);
        logger.info(NOTE_SERVER_STATE_RECOVERY, baseDN, dbMaxCSN);
      }
    }
  }
opendj3-server-dev/src/server/org/opends/server/replication/server/DataServerHandler.java
@@ -464,8 +464,7 @@
      replicationServerDomain.register(this);
      logger.debug(INFO_REPLICATION_SERVER_CONNECTION_FROM_DS, getReplicationServerId(), getServerId(),
              replicationServerDomain.getBaseDN().toString(),
              session.getReadableRemoteAddress());
              replicationServerDomain.getBaseDN(), session.getReadableRemoteAddress());
      super.finalizeStart();
    }
opendj3-server-dev/src/server/org/opends/server/replication/server/MessageHandler.java
@@ -31,18 +31,22 @@
import java.util.concurrent.atomic.AtomicBoolean;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.admin.std.server.MonitorProviderCfg;
import org.opends.server.api.MonitorProvider;
import org.forgerock.opendj.config.server.ConfigException;
import org.opends.server.core.DirectoryServer;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.opends.server.replication.common.CSN;
import org.opends.server.replication.common.ServerState;
import org.opends.server.replication.protocol.UpdateMsg;
import org.opends.server.replication.server.changelog.api.ChangelogException;
import org.opends.server.replication.server.changelog.api.DBCursor;
import org.opends.server.types.*;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.types.Attribute;
import org.opends.server.types.DN;
import org.opends.server.types.DirectoryException;
import org.opends.server.types.InitializationException;
import static org.opends.messages.ReplicationMessages.*;
import static org.opends.server.types.Attributes.*;
import static org.opends.server.util.StaticUtils.*;
@@ -609,8 +613,7 @@
    {
      if (!this.baseDN.equals(baseDN))
      {
        LocalizableMessage message = ERR_RS_DN_DOES_NOT_MATCH.get(
            this.baseDN.toString(), baseDN.toString());
        LocalizableMessage message = ERR_RS_DN_DOES_NOT_MATCH.get(this.baseDN, baseDN);
        throw new DirectoryException(ResultCode.OTHER, message, null);
      }
    }
opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationDomainMonitor.java
@@ -27,12 +27,12 @@
package org.opends.server.replication.server;
import java.io.IOException;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import java.util.HashSet;
import java.util.Set;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.opends.server.replication.common.CSN;
import org.opends.server.replication.common.ServerState;
import org.opends.server.replication.protocol.MonitorMsg;
@@ -311,7 +311,7 @@
      {
        // This is a response for an earlier request whose computing is
        // already complete.
        logger.debug(INFO_IGNORING_REMOTE_MONITOR_DATA, domain.getBaseDN().toString(), msg.getSenderID());
        logger.debug(INFO_IGNORING_REMOTE_MONITOR_DATA, domain.getBaseDN(), msg.getSenderID());
        return;
      }
opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationServerDomain.java
@@ -852,8 +852,7 @@
             */
            LocalizableMessageBuilder mb = new LocalizableMessageBuilder();
            mb.append(ERR_RS_ERROR_SENDING_ACK.get(
                localReplicationServer.getServerId(), origServer.getServerId(),
                csn, baseDN.toString()));
                localReplicationServer.getServerId(), origServer.getServerId(), csn, baseDN));
            mb.append(" ");
            mb.append(stackTraceToSingleLineString(e));
            logger.error(mb.toMessage());
@@ -929,8 +928,7 @@
             */
            LocalizableMessageBuilder mb = new LocalizableMessageBuilder();
            mb.append(ERR_RS_ERROR_SENDING_ACK.get(
                localReplicationServer.getServerId(), origServer.getServerId(),
                csn, baseDN.toString()));
                localReplicationServer.getServerId(), origServer.getServerId(), csn, baseDN));
            mb.append(" ");
            mb.append(stackTraceToSingleLineString(e));
            logger.error(mb.toMessage());
@@ -1484,7 +1482,7 @@
      RoutableMsg msg)
  {
    LocalizableMessageBuilder mb = new LocalizableMessageBuilder();
    mb.append(ERR_NO_REACHABLE_PEER_IN_THE_DOMAIN.get(baseDN.toString(), msg.getDestination()));
    mb.append(ERR_NO_REACHABLE_PEER_IN_THE_DOMAIN.get(baseDN, msg.getDestination()));
    mb.append(" In Replication Server=").append(
      this.localReplicationServer.getMonitorInstanceName());
    mb.append(" unroutable message =").append(msg.getClass().getSimpleName());
@@ -1526,8 +1524,7 @@
         * Send back an error to the originator of the message.
         */
        LocalizableMessageBuilder mb = new LocalizableMessageBuilder();
        mb.append(ERR_NO_REACHABLE_PEER_IN_THE_DOMAIN.get(
            baseDN.toString(), msg.getDestination()));
        mb.append(ERR_NO_REACHABLE_PEER_IN_THE_DOMAIN.get(baseDN, msg.getDestination()));
        mb.append(" unroutable message =" + msg.getClass().getSimpleName());
        mb.append(" Details: " + ioe.getLocalizedMessage());
        final LocalizableMessage message = mb.toMessage();
@@ -1847,7 +1844,7 @@
          }
        } catch (IOException e)
        {
          logger.error(ERR_EXCEPTION_FORWARDING_RESET_GEN_ID, baseDN.toString(), e.getMessage());
          logger.error(ERR_EXCEPTION_FORWARDING_RESET_GEN_ID, baseDN, e.getMessage());
        }
      }
@@ -1860,7 +1857,7 @@
          dsHandler.changeStatusForResetGenId(newGenId);
        } catch (IOException e)
        {
          logger.error(ERR_EXCEPTION_CHANGING_STATUS_AFTER_RESET_GEN_ID, baseDN.toString(),
          logger.error(ERR_EXCEPTION_CHANGING_STATUS_AFTER_RESET_GEN_ID, baseDN,
              dsHandler.getServerId(), e.getMessage());
        }
      }
@@ -1872,7 +1869,7 @@
      // treatment.
      sendTopoInfoToAll();
      logger.info(NOTE_RESET_GENERATION_ID, baseDN.toString(), newGenId);
      logger.info(NOTE_RESET_GENERATION_ID, baseDN, newGenId);
    }
    catch(Exception e)
    {
@@ -1926,7 +1923,7 @@
      enqueueTopoInfoToAllExcept(senderHandler);
      logger.info(NOTE_DIRECTORY_SERVER_CHANGED_STATUS,
          senderHandler.getServerId(), baseDN.toString(), newStatus);
          senderHandler.getServerId(), baseDN, newStatus);
    }
    catch(Exception e)
    {
@@ -1988,7 +1985,7 @@
      catch (IOException e)
      {
        logger.error(ERR_EXCEPTION_CHANGING_STATUS_FROM_STATUS_ANALYZER,
            baseDN.toString(), dsHandler.getServerId(), e.getMessage());
            baseDN, dsHandler.getServerId(), e.getMessage());
      }
      if (newStatus == ServerStatus.INVALID_STATUS || newStatus == oldStatus)
@@ -2133,11 +2130,9 @@
      if (isDifferentGenerationId(rsHandler.getGenerationId()))
      {
        LocalizableMessage message =
            WARN_BAD_GENERATION_ID_FROM_RS.get(rsHandler.getServerId(),
                rsHandler.session.getReadableRemoteAddress(), rsHandler
                    .getGenerationId(), baseDN.toString(),
                getLocalRSServerId(), generationId);
        LocalizableMessage message = WARN_BAD_GENERATION_ID_FROM_RS.get(rsHandler.getServerId(),
            rsHandler.session.getReadableRemoteAddress(), rsHandler.getGenerationId(),
            baseDN, getLocalRSServerId(), generationId);
        logger.warn(message);
        ErrorMsg errorMsg = new ErrorMsg(getLocalRSServerId(),
@@ -2379,8 +2374,7 @@
          if (i == 2)
          {
            logger.error(ERR_EXCEPTION_SENDING_TOPO_INFO,
                baseDN.toString(), type, handler.getServerId(),
                e.getMessage());
                baseDN, type, handler.getServerId(), e.getMessage());
          }
        }
      }
opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationServerHandler.java
@@ -251,8 +251,7 @@
      }
      logger.debug(INFO_REPLICATION_SERVER_CONNECTION_TO_RS, getReplicationServerId(), getServerId(),
              replicationServerDomain.getBaseDN().toString(),
              session.getReadableRemoteAddress());
          replicationServerDomain.getBaseDN(), session.getReadableRemoteAddress());
      super.finalizeStart();
    }
@@ -375,8 +374,7 @@
        replicationServerDomain.receiveTopoInfoFromRS(inTopoMsg, this, false);
      logger.debug(INFO_REPLICATION_SERVER_CONNECTION_FROM_RS, getReplicationServerId(), getServerId(),
              replicationServerDomain.getBaseDN().toString(),
              session.getReadableRemoteAddress());
          replicationServerDomain.getBaseDN(), session.getReadableRemoteAddress());
      super.finalizeStart();
    }
opendj3-server-dev/src/server/org/opends/server/replication/server/changelog/je/ReplicationDB.java
@@ -218,8 +218,7 @@
    {
      throw new ChangelogException(
          ERR_EXCEPTION_COULD_NOT_ADD_CHANGE_TO_REPLICA_DB.get(
              change.toString(), String.valueOf(baseDN),
              String.valueOf(serverId), stackTraceToSingleLineString(e)));
              change, baseDN, serverId, stackTraceToSingleLineString(e)));
    }
    finally
    {
@@ -450,7 +449,7 @@
  @Override
  public String toString()
  {
    return serverId + " " + baseDN.toString();
    return serverId + " " + baseDN;
  }
  /** Hold a cursor and an indicator of wether the cursor should be considered as empty. */
opendj3-server-dev/src/server/org/opends/server/replication/service/ReplicationBroker.java
@@ -829,12 +829,12 @@
        final int rsServerId = rs.rsInfo.getServerId();
        if (rsGenId == getGenerationID() || rsGenId == -1)
        {
          logger.info(NOTE_NOW_FOUND_SAME_GENERATION_CHANGELOG, serverId, rsServerId, baseDN.toString(),
          logger.info(NOTE_NOW_FOUND_SAME_GENERATION_CHANGELOG, serverId, rsServerId, baseDN,
              rs.replicationServer, getGenerationID());
        }
        else
        {
          logger.warn(WARN_NOW_FOUND_BAD_GENERATION_CHANGELOG, serverId, rsServerId, baseDN.toString(),
          logger.warn(WARN_NOW_FOUND_BAD_GENERATION_CHANGELOG, serverId, rsServerId, baseDN,
              rs.replicationServer, getGenerationID(), rsGenId);
        }
      }
@@ -849,12 +849,12 @@
          if (rsInfos.size() > 0)
          {
            logger.warn(WARN_COULD_NOT_FIND_CHANGELOG, serverId, baseDN.toString(),
            logger.warn(WARN_COULD_NOT_FIND_CHANGELOG, serverId, baseDN,
                Utils.joinAsString(", ", rsInfos.keySet()));
          }
          else
          {
            logger.warn(WARN_NO_AVAILABLE_CHANGELOGS, serverId, baseDN.toString());
            logger.warn(WARN_NO_AVAILABLE_CHANGELOGS, serverId, baseDN);
          }
        }
      }
@@ -961,8 +961,7 @@
        with the right group id shows up.
        */
        logger.warn(WARN_CONNECTED_TO_SERVER_WITH_WRONG_GROUP_ID,
            groupId, rs.getServerId(), rsInfo.getServerURL(), rs.getGroupId(),
            baseDN.toString(), getServerId());
            groupId, rs.getServerId(), rsInfo.getServerURL(), rs.getGroupId(), baseDN, getServerId());
      }
      startRSHeartBeatMonitoring(rs);
      if (rsInfo.getProtocolVersion() >=
@@ -974,7 +973,7 @@
    }
    catch (Exception e)
    {
      logger.error(ERR_COMPUTING_FAKE_OPS, baseDN.toString(), rsInfo.getServerURL(),
      logger.error(ERR_COMPUTING_FAKE_OPS, baseDN, rsInfo.getServerURL(),
          e.getLocalizedMessage() + " " + stackTraceToSingleLineString(e));
    }
    finally
@@ -1108,8 +1107,7 @@
      final DN repDN = replServerInfo.getBaseDN();
      if (!getBaseDN().equals(repDN))
      {
        errorMessage = ERR_DS_DN_DOES_NOT_MATCH.get(
            repDN.toString(), getBaseDN().toString());
        errorMessage = ERR_DS_DN_DOES_NOT_MATCH.get(repDN, getBaseDN());
        return setConnectedRS(ConnectedRS.noConnectedRS());
      }
@@ -1138,19 +1136,16 @@
    }
    catch (ConnectException e)
    {
      errorMessage = WARN_NO_CHANGELOG_SERVER_LISTENING.get(getServerId(),
          serverURL, getBaseDN().toString());
      errorMessage = WARN_NO_CHANGELOG_SERVER_LISTENING.get(getServerId(), serverURL, getBaseDN());
    }
    catch (SocketTimeoutException e)
    {
      errorMessage = WARN_TIMEOUT_CONNECTING_TO_RS.get(getServerId(),
          serverURL, getBaseDN().toString());
      errorMessage = WARN_TIMEOUT_CONNECTING_TO_RS.get(getServerId(), serverURL, getBaseDN());
    }
    catch (Exception e)
    {
      errorMessage = WARN_EXCEPTION_STARTING_SESSION_PHASE.get(getServerId(),
          serverURL, getBaseDN().toString(),
          stackTraceToSingleLineString(e));
      errorMessage = WARN_EXCEPTION_STARTING_SESSION_PHASE.get(
          getServerId(), serverURL, getBaseDN(), stackTraceToSingleLineString(e));
    }
    finally
    {
@@ -1222,8 +1217,7 @@
    catch (Exception e)
    {
      logger.error(WARN_EXCEPTION_STARTING_SESSION_PHASE,
          getServerId(), electedRS.rsInfo.getServerURL(),
          getBaseDN().toString(), stackTraceToSingleLineString(e));
          getServerId(), electedRS.rsInfo.getServerURL(), getBaseDN(), stackTraceToSingleLineString(e));
      setConnectedRS(ConnectedRS.noConnectedRS());
      return null;
@@ -2184,7 +2178,7 @@
        catch (Exception e)
        {
          logger.error(NOTE_EXCEPTION_RESTARTING_SESSION,
              getBaseDN().toString(), e.getLocalizedMessage() + " " + stackTraceToSingleLineString(e));
              getBaseDN(), e.getLocalizedMessage() + " " + stackTraceToSingleLineString(e));
        }
        if (rs.isConnected() || !infiniteTry)
@@ -2488,7 +2482,7 @@
        {
          // RS performs a proper disconnection
          logger.warn(WARN_REPLICATION_SERVER_PROPERLY_DISCONNECTED, previousRsServerID, rs.replicationServer,
              serverId, baseDN.toString());
              serverId, baseDN);
          // Try to find a suitable RS
          reStart(rs.session, true);
@@ -2553,16 +2547,13 @@
                if (bestServerInfo == null)
                {
                  message = NOTE_LOAD_BALANCE_REPLICATION_SERVER.get(
                      serverId, previousRsServerID, rs.replicationServer,
                      baseDN.toString());
                      serverId, previousRsServerID, rs.replicationServer, baseDN);
                }
                else
                {
                  final int bestRsServerId = bestServerInfo.getServerId();
                  message = NOTE_NEW_BEST_REPLICATION_SERVER.get(
                      serverId, previousRsServerID, rs.replicationServer,
                      bestRsServerId,
                      baseDN.toString(),
                      serverId, previousRsServerID, rs.replicationServer, bestRsServerId, baseDN,
                      evals.getEvaluation(previousRsServerID),
                      evals.getEvaluation(bestRsServerId));
                }
@@ -2597,8 +2588,7 @@
          {
            // We did not initiate the close on our side, log an error message.
            logger.error(WARN_REPLICATION_SERVER_BADLY_DISCONNECTED,
                serverId, baseDN.toString(), previousRsServerID,
                rs.replicationServer);
                serverId, baseDN, previousRsServerID, rs.replicationServer);
          }
          if (!reconnectOnFailure)
@@ -2853,8 +2843,8 @@
          new ChangeStatusMsg(ServerStatus.INVALID_STATUS, newStatus));
    } catch (IOException ex)
    {
      logger.error(ERR_EXCEPTION_SENDING_CS, getBaseDN().toString(),
        getServerId(), ex.getLocalizedMessage() + " " + stackTraceToSingleLineString(ex));
      logger.error(ERR_EXCEPTION_SENDING_CS, getBaseDN(), getServerId(),
          ex.getLocalizedMessage() + " " + stackTraceToSingleLineString(ex));
    }
  }
opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/CryptoManagerTestCase.java
@@ -33,8 +33,6 @@
import java.io.OutputStream;
import java.security.MessageDigest;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import javax.crypto.Mac;
import javax.naming.directory.SearchControls;
@@ -47,11 +45,9 @@
import org.opends.admin.ads.ADSContext;
import org.opends.admin.ads.util.ConnectionUtils;
import org.opends.server.TestCaseUtils;
import org.opends.server.config.ConfigConstants;
import org.opends.server.core.DirectoryServer;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.types.CryptoManager;
import org.opends.server.types.CryptoManagerException;
import org.opends.server.types.DN;
@@ -66,7 +62,9 @@
import com.forgerock.opendj.cli.CliConstants;
import static org.opends.server.config.ConfigConstants.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -149,41 +147,33 @@
  // TODO: other-than-default MAC
  /**
   Cipher parameters
   */
  private class CipherParameters {
    private final String fAlgorithm;
    private final String fMode;
    private final String fPadding;
    private final int fKeyLength;
    private final int fIVLength;
    public CipherParameters(final String algorithm, final String mode,
                            final String padding, final int keyLength,
                            final int ivLength) {
                            final String padding, final int keyLength) {
      fAlgorithm = algorithm;
      fMode = mode;
      fPadding = padding;
      fKeyLength = keyLength;
      fIVLength = ivLength;
    }
    public String getTransformation() {
      if (null == fAlgorithm) return null; // default
      return (null == fMode)
              ? fAlgorithm
              : (new StringBuilder(fAlgorithm)).append("/").append(fMode)
                .append("/").append(fPadding).toString();
      if (null != fAlgorithm)
      {
        return fMode != null
                  ? fAlgorithm + "/" + fMode + "/" + fPadding
                  : fAlgorithm;
      }
      return null;
    }
    public int getKeyLength() {
      return fKeyLength;
    }
    public int getIVLength() {
      return fIVLength;
    }
  }
@@ -194,28 +184,20 @@
   */
  @DataProvider(name = "cipherParametersData")
  public Object[][] cipherParametersData() {
    List<CipherParameters> paramList = new LinkedList<CipherParameters>();
    return new Object[][] {
    // default (preferred) AES/CBC/PKCS5Padding 128bit key.
    paramList.add(new CipherParameters(null, null, null, 128, 128));
      { new CipherParameters(null, null, null, 128) },
    // custom
// TODO: https://opends.dev.java.net/issues/show_bug.cgi?id=2448
// TODO: paramList.add(new CipherParameters("Blowfish", "CFB", "NoPadding", 448, 64));
// TODO: paramList.add(new CipherParameters("AES", "CBC", "PKCS5Padding", 256, 64));
    paramList.add(new CipherParameters("AES", "CFB", "NoPadding", 128, 64));
    paramList.add(new CipherParameters("Blowfish", "CFB", "NoPadding", 128, 64));
    paramList.add(new CipherParameters("RC4", null, null, 104, 0));
    paramList.add(new CipherParameters("RC4", "NONE", "NoPadding", 128, 0));
    paramList.add(new CipherParameters("DES", "CFB", "NoPadding", 56, 64));
    paramList.add(new CipherParameters("DESede", "ECB", "PKCS5Padding", 168, 64));
    Object[][] cipherParameters = new Object[paramList.size()][1];
    for (int i=0; i < paramList.size(); i++)
    {
      cipherParameters[i] = new Object[] { paramList.get(i) };
    }
    return cipherParameters;
// TODO: { new CipherParameters("Blowfish", "CFB", "NoPadding", 448) },
// TODO: { new CipherParameters("AES", "CBC", "PKCS5Padding", 256) },
      { new CipherParameters("AES", "CFB", "NoPadding", 128) },
      { new CipherParameters("Blowfish", "CFB", "NoPadding", 128) },
      { new CipherParameters("RC4", null, null, 104) },
      { new CipherParameters("RC4", "NONE", "NoPadding", 128) },
      { new CipherParameters("DES", "CFB", "NoPadding", 56) },
      { new CipherParameters("DESede", "ECB", "PKCS5Padding", 168) },
    };
  }
@@ -367,19 +349,16 @@
    final String baseDNStr // TODO: is this DN defined elsewhere as a constant?
            = "cn=secret keys," + ADSContext.getAdministrationSuffixDN();
    final DN baseDN = DN.valueOf(baseDNStr);
    final String FILTER_OC_INSTANCE_KEY
            = new StringBuilder("(objectclass=")
            .append(ConfigConstants.OC_CRYPTO_CIPHER_KEY)
            .append(")").toString();
    final String FILTER_OC_INSTANCE_KEY = "(objectclass=" + OC_CRYPTO_CIPHER_KEY + ")";
    final String FILTER_NOT_COMPROMISED = new StringBuilder("(!(")
            .append(ConfigConstants.ATTR_CRYPTO_KEY_COMPROMISED_TIME)
            .append(ATTR_CRYPTO_KEY_COMPROMISED_TIME)
            .append("=*))").toString();
    final String FILTER_CIPHER_TRANSFORMATION_NAME = new StringBuilder("(")
            .append(ConfigConstants.ATTR_CRYPTO_CIPHER_TRANSFORMATION_NAME)
            .append(ATTR_CRYPTO_CIPHER_TRANSFORMATION_NAME)
            .append("=").append(cipherTransformationName)
            .append(")").toString();
    final String FILTER_CIPHER_KEY_LENGTH = new StringBuilder("(")
            .append(ConfigConstants.ATTR_CRYPTO_KEY_LENGTH_BITS)
            .append(ATTR_CRYPTO_KEY_LENGTH_BITS)
            .append("=").append(String.valueOf(cipherKeyLength))
            .append(")").toString();
    final String searchFilter = new StringBuilder("(&")
@@ -395,11 +374,10 @@
    String compromisedTime = TimeThread.getGeneralizedTime();
    for (Entry e : searchOp.getSearchEntries()) {
      TestCaseUtils.applyModifications(true,
        "dn: " + e.getName().toString(),
        "dn: " + e.getName(),
        "changetype: modify",
        "replace: " + ConfigConstants.ATTR_CRYPTO_KEY_COMPROMISED_TIME,
        ConfigConstants.ATTR_CRYPTO_KEY_COMPROMISED_TIME + ": "
                + compromisedTime);
        "replace: " + ATTR_CRYPTO_KEY_COMPROMISED_TIME,
        ATTR_CRYPTO_KEY_COMPROMISED_TIME + ": " + compromisedTime);
    }
    //Wait so the above asynchronous modification can be applied. The crypto
    //manager's cipherKeyEntryCache needs to be updated before the encrypt()
@@ -425,8 +403,7 @@
    // 3. Delete the compromised entry(ies) and ensure ciphertext produced
    // using a compromised key can no longer be decrypted.
    for (Entry e : searchOp.getSearchEntries()) {
      TestCaseUtils.applyModifications(true,
        "dn: " + e.getName().toString(), "changetype: delete");
      TestCaseUtils.applyModifications(true, "dn: " + e.getName(), "changetype: delete");
    }
    Thread.sleep(1000); // Clearing the cache is asynchronous.
    try {