From c18591b0bb075c240849ec5d2520a0442dca330d Mon Sep 17 00:00:00 2001
From: Fabio Pistolesi <fabio.pistolesi@forgerock.com>
Date: Tue, 05 Apr 2016 10:09:16 +0000
Subject: [PATCH] Refactor initialization in tools for OPENDJ-2616 Support protection of pluggable backend data at rest
---
opendj-server-legacy/src/main/java/org/opends/server/tools/BackUpDB.java | 78 ---
opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java | 327 +++++++++++++-
opendj-server-legacy/src/main/java/org/opends/server/tools/ImportLDIF.java | 131 -----
opendj-server-legacy/src/messages/org/opends/messages/tool_ko.properties | 6
opendj-server-legacy/src/main/java/org/opends/server/core/BackendConfigManager.java | 14
opendj-server-legacy/src/messages/org/opends/messages/tool_fr.properties | 8
opendj-server-legacy/src/main/java/org/opends/server/tools/ExportLDIF.java | 117 ----
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/BackendStat.java | 80 --
opendj-server-legacy/src/messages/org/opends/messages/tool_zh_CN.properties | 8
opendj-server-legacy/src/main/java/org/opends/server/tools/EncodePassword.java | 193 --------
opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java | 42 -
opendj-server-legacy/src/main/java/org/opends/server/tools/RebuildIndex.java | 83 ---
opendj-server-legacy/src/messages/org/opends/messages/tool_zh_TW.properties | 6
opendj-server-legacy/src/messages/org/opends/messages/tool_de.properties | 8
opendj-server-legacy/src/messages/org/opends/messages/tool_ja.properties | 8
opendj-server-legacy/src/messages/org/opends/messages/tool.properties | 18
opendj-server-legacy/src/main/java/org/opends/server/tools/RestoreDB.java | 80 ---
opendj-server-legacy/src/messages/org/opends/messages/tool_es.properties | 8
opendj-server-legacy/src/main/java/org/opends/server/tools/VerifyIndex.java | 81 ---
19 files changed, 391 insertions(+), 905 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/BackendStat.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/BackendStat.java
index d4f1c5b..7d916b4 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/BackendStat.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/BackendStat.java
@@ -47,7 +47,6 @@
import org.opends.server.backends.pluggable.spi.ReadableTransaction;
import org.opends.server.backends.pluggable.spi.StorageRuntimeException;
import org.opends.server.backends.pluggable.spi.TreeName;
-import org.opends.server.core.CoreConfigManager;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.DirectoryServer.DirectoryServerVersionHandler;
import org.opends.server.core.LockFileManager;
@@ -285,8 +284,6 @@
/** Flag indicating whether or not the global arguments have already been initialized. */
private boolean globalArgumentsInitialized;
- private DirectoryServer directoryServer;
-
/**
* Provides the command-line arguments to the main application for
* processing.
@@ -578,61 +575,24 @@
}
// Perform the initial bootstrap of the Directory Server and process the configuration.
- directoryServer = DirectoryServer.getInstance();
- try
- {
- DirectoryServer.bootstrapClient();
- DirectoryServer.initializeJMX();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_SERVER_BOOTSTRAP_ERROR.get(getStartUpExceptionMessage(e)));
- return 1;
- }
-
- try
- {
- directoryServer.initializeConfiguration(configFile.getValue());
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(getStartUpExceptionMessage(e)));
- return 1;
- }
-
- try
- {
- directoryServer.initializeSchema();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(getStartUpExceptionMessage(e)));
- return 1;
- }
-
- try
- {
- CoreConfigManager coreConfigManager = new CoreConfigManager(directoryServer.getServerContext());
- coreConfigManager.initializeCoreConfig();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(getStartUpExceptionMessage(e)));
- return 1;
- }
-
- try
- {
- directoryServer.initializeCryptoManager();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(getStartUpExceptionMessage(e)));
- return 1;
- }
-
SubCommand subCommand = parser.getSubCommand();
- if (LIST_BACKENDS.equals(subCommand.getName()))
+ final String subCommandName = subCommand.getName();
+ try
+ {
+ DirectoryServer.InitializationBuilder initializationBuilder =
+ new DirectoryServer.InitializationBuilder(configFile.getValue());
+ if (subCommandName.equals(DUMP_INDEX) || subCommandName.equals(SHOW_INDEX_STATUS))
+ {
+ initializationBuilder.requireCryptoServices();
+ }
+ initializationBuilder.initialize();
+ }
+ catch (InitializationException e)
+ {
+ printWrappedText(err, ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS.get(e.getLocalizedMessage()));
+ return 1;
+ }
+ if (LIST_BACKENDS.equals(subCommandName))
{
return listRootContainers();
}
@@ -648,7 +608,7 @@
}
try
{
- switch (subCommand.getName())
+ switch (subCommandName)
{
case LIST_BASE_DNS:
return listBaseDNs(rootContainer);
@@ -668,7 +628,7 @@
}
catch (Exception e)
{
- printWrappedText(err, ERR_BACKEND_TOOL_EXECUTING_COMMAND.get(subCommand.getName(),
+ printWrappedText(err, ERR_BACKEND_TOOL_EXECUTING_COMMAND.get(subCommandName,
StaticUtils.stackTraceToString(e)));
return 1;
}
@@ -1053,7 +1013,7 @@
{
try
{
- b.configureBackend(backend.getKey(), directoryServer.getServerContext());
+ b.configureBackend(backend.getKey(), DirectoryServer.getInstance().getServerContext());
return b;
}
catch (ConfigException ce)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/core/BackendConfigManager.java b/opendj-server-legacy/src/main/java/org/opends/server/core/BackendConfigManager.java
index 3cf06b6..9cf4385 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/core/BackendConfigManager.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/core/BackendConfigManager.java
@@ -22,10 +22,12 @@
import static org.opends.server.util.CollectionUtils.*;
import static org.opends.server.util.StaticUtils.*;
+import java.util.Collection;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Set;
+
import java.util.concurrent.ConcurrentHashMap;
import org.forgerock.i18n.LocalizableMessage;
@@ -87,8 +89,10 @@
* @throws InitializationException
* If a problem occurs while initializing the backends that is not
* related to the server configuration.
+ * @param backendIDsToStart
+ * The list of backendID to start. Everything will be started if empty.
*/
- public void initializeBackendConfig()
+ public void initializeBackendConfig(Collection<String> backendIDsToStart)
throws ConfigException, InitializationException
{
// Register add and delete listeners.
@@ -132,8 +136,12 @@
// This will decode and validate its properties.
BackendCfg backendCfg = root.getBackend(name);
+ final String backendID = backendCfg.getBackendId();
+ if (!backendIDsToStart.isEmpty() && !backendIDsToStart.contains(backendID))
+ {
+ continue;
+ }
DN backendDN = backendCfg.dn();
- String backendID = backendCfg.getBackendId();
// Register as a change listener for this backend so that we can be
// notified when it is disabled or enabled.
@@ -144,7 +152,7 @@
{
// If there is already a backend registered with the specified ID,
// then log an error and skip it.
- if (DirectoryServer.hasBackend(backendCfg.getBackendId()))
+ if (DirectoryServer.hasBackend(backendID))
{
logger.warn(WARN_CONFIG_BACKEND_DUPLICATE_BACKEND_ID, backendID, backendDN);
continue;
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java b/opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java
index 6a5808c..cfc40a3 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java
@@ -37,8 +37,11 @@
import java.lang.management.ManagementFactory;
import java.net.InetAddress;
import java.text.DecimalFormat;
+import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
+import java.util.EnumSet;
+import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.LinkedList;
@@ -683,6 +686,279 @@
}
}
+ /** Initialize the client DirectoryServer singleton by using a fluent interface. */
+ public static class InitializationBuilder
+ {
+ /** Keep track of how subSystemsToInitialize are sequenced. */
+ private enum SubSystem
+ {
+ CLIENT_INIT,
+ CORE_CONFIG,
+ INIT_CRYPTO,
+ ADMIN_BACKEND,
+ ADMIN_USERS,
+ START_CRYPTO,
+ PASSWORD_STORAGE_SCHEME,
+ USER_PLUGINS;
+ }
+
+ private String configFile;
+ private Set<PluginType> pluginTypes = new HashSet<>();
+ private static EnumSet<SubSystem> subSystemsToInitialize = EnumSet.noneOf(SubSystem.class);
+
+ /**
+ * Initialize the client side of DirectoryServer and the Core Configuration.
+ *
+ * @param configFile the configuration file
+ * @throws InitializationException if client initialization or core Config fails
+ */
+ public InitializationBuilder(String configFile) throws InitializationException
+ {
+ this.configFile = configFile;
+ subSystemsToInitialize.add(SubSystem.CLIENT_INIT);
+ subSystemsToInitialize.add(SubSystem.CORE_CONFIG);
+ }
+
+ /**
+ * Require to setup and start everything necessary for Crypto Services.
+ * Core config should already be initialized through the constructor.
+ *
+ * @return the initialization object
+ * @throws InitializationException if Core Config is not initialized
+ */
+ public InitializationBuilder requireCryptoServices() throws InitializationException
+ {
+ Collections.addAll(subSystemsToInitialize,
+ SubSystem.INIT_CRYPTO,
+ SubSystem.ADMIN_BACKEND,
+ SubSystem.ADMIN_USERS,
+ SubSystem.START_CRYPTO);
+ return this;
+ }
+
+ /**
+ * Requires to setup and start Password Storage Schemes.
+ * Crypto services are needed for Password Storage, so it will also set them up if not already done.
+ *
+ * @return the initialization object
+ * @throws InitializationException if Core Config is not initialized
+ */
+ public InitializationBuilder requirePasswordStorageSchemes() throws InitializationException
+ {
+ requireCryptoServices();
+ Collections.addAll(subSystemsToInitialize, SubSystem.PASSWORD_STORAGE_SCHEME);
+ return this;
+ }
+
+ /**
+ * Requires to start specified user plugins.
+ *
+ * @param plugins the plugins to start
+ * @return the initialization object
+ * @throws InitializationException if Core Config is not initialized
+ */
+ public InitializationBuilder requireUserPlugins(PluginType... plugins) throws InitializationException
+ {
+ Collections.addAll(subSystemsToInitialize, SubSystem.USER_PLUGINS);
+ this.pluginTypes.addAll(Arrays.asList(plugins));
+ return this;
+ }
+
+ /**
+ * Run all Initialization blocks as configured.
+ *
+ * @throws InitializationException if one of the initialization steps fails
+ */
+ public void initialize() throws InitializationException
+ {
+ for (SubSystem subSystem : subSystemsToInitialize)
+ {
+ switch (subSystem)
+ {
+ case CLIENT_INIT:
+ clientInit();
+ break;
+ case CORE_CONFIG:
+ initCoreConfig(configFile);
+ break;
+ case ADMIN_BACKEND:
+ setupAdminBackends();
+ break;
+ case ADMIN_USERS:
+ setupAdminUsers();
+ break;
+ case INIT_CRYPTO:
+ initCryptoServices();
+ break;
+ case PASSWORD_STORAGE_SCHEME:
+ startPasswordStorageScheme();
+ break;
+ case START_CRYPTO:
+ startCryptoServices();
+ break;
+ case USER_PLUGINS:
+ startUserPlugin();
+ break;
+ }
+ }
+ }
+
+ private static void checkSubsystemIsInitialized(SubSystem subsystem) throws InitializationException
+ {
+ if (!subSystemsToInitialize.contains(subsystem))
+ {
+ throw new InitializationException(ERR_CANNOT_SUBSYSTEM_NOT_INITIALIZED.get(subsystem));
+ }
+ }
+
+ private void clientInit() throws InitializationException
+ {
+ try
+ {
+ bootstrapClient();
+ initializeJMX();
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_SERVER_BOOTSTRAP_ERROR.get(e.getLocalizedMessage()));
+ }
+ }
+
+ private void initCoreConfig(String configFile) throws InitializationException
+ {
+ try
+ {
+ directoryServer.initializeConfiguration(configFile);
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_CANNOT_LOAD_CONFIG.get(e.getLocalizedMessage()));
+ }
+ try
+ {
+ directoryServer.initializeSchema();
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_CANNOT_LOAD_SCHEMA.get(e.getLocalizedMessage()));
+ }
+ try
+ {
+ directoryServer.coreConfigManager = new CoreConfigManager(directoryServer.serverContext);
+ directoryServer.coreConfigManager.initializeCoreConfig();
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(e.getLocalizedMessage()));
+ }
+ }
+
+ private void initCryptoServices() throws InitializationException
+ {
+ try
+ {
+ directoryServer.initializeCryptoManager();
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(e.getLocalizedMessage()));
+ }
+ }
+
+ private void startCryptoServices() throws InitializationException
+ {
+ checkSubsystemIsInitialized(SubSystem.INIT_CRYPTO);
+ checkSubsystemIsInitialized(SubSystem.ADMIN_USERS);
+ new CryptoManagerSync();
+ }
+
+ private void setupAdminBackends() throws InitializationException
+ {
+ checkSubsystemIsInitialized(SubSystem.CORE_CONFIG);
+
+ try
+ {
+ directoryServer.initializePlugins(Collections.EMPTY_SET);
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_CANNOT_INITIALIZE_SERVER_PLUGINS.get(e.getLocalizedMessage()));
+ }
+
+ try
+ {
+ directoryServer.initializeBackends(Arrays.asList("adminRoot", "ads-truststore"));
+ }
+ catch (InitializationException | ConfigException e)
+ {
+ throw new InitializationException(ERR_CANNOT_INITIALIZE_BACKENDS.get(e.getLocalizedMessage()));
+ }
+
+ try
+ {
+ directoryServer.initializeSubentryManager();
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_CANNOT_INITIALIZE_SUBENTRY_MANAGER.get(e.getLocalizedMessage()));
+ }
+ }
+
+ private void setupAdminUsers() throws InitializationException
+ {
+ checkSubsystemIsInitialized(SubSystem.ADMIN_BACKEND);
+
+ try
+ {
+ directoryServer.initializeRootDNConfigManager();
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_CANNOT_INITIALIZE_ROOTDN_MANAGER.get(e.getLocalizedMessage()));
+ }
+
+ try
+ {
+ directoryServer.initializeAuthenticationPolicyComponents();
+ directoryServer.initializeAuthenticatedUsers();
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_CANNOT_INITIALIZE_PWPOLICY.get(e.getLocalizedMessage()));
+ }
+ }
+
+ private void startUserPlugin() throws InitializationException
+ {
+ checkSubsystemIsInitialized(SubSystem.ADMIN_USERS);
+
+ try
+ {
+ directoryServer.pluginConfigManager.initializeUserPlugins(pluginTypes);
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(getExceptionMessage(e));
+ }
+ }
+
+ private void startPasswordStorageScheme() throws InitializationException
+ {
+ checkSubsystemIsInitialized(SubSystem.START_CRYPTO);
+
+ try
+ {
+ directoryServer.storageSchemeConfigManager =
+ new PasswordStorageSchemeConfigManager(directoryServer.serverContext);
+ directoryServer.storageSchemeConfigManager.initializePasswordStorageSchemes();
+ }
+ catch (Exception e)
+ {
+ throw new InitializationException(ERR_CANNOT_INITIALIZE_STORAGE_SCHEMES.get(getExceptionMessage(e)));
+ }
+ }
+ }
+
/**
* Temporary class to provide instance methods instead of static methods for
* server. Once all static methods related to context are removed from the
@@ -1265,11 +1541,8 @@
AccessControlConfigManager.getInstance().initializeAccessControl(serverContext);
- // Initialize all the backends and their associated suffixes
- // and initialize the workflows when workflow configuration mode is auto.
- initializeBackends();
+ initializeBackends(Collections.<String> emptyList());
- // configure the remaining workflows (rootDSE and config backend).
createAndRegisterRemainingWorkflows();
// Check for and initialize user configured entry cache if any.
@@ -1370,8 +1643,7 @@
}
}
- /** Initializes authenticated users. */
- public void initializeAuthenticatedUsers()
+ private void initializeAuthenticatedUsers()
{
directoryServer.authenticatedUsers = new AuthenticatedUsers();
}
@@ -1425,17 +1697,7 @@
return directoryServer.authenticatedUsers;
}
- /**
- * Initializes the crypto manager for the Directory Server.
- *
- * @throws ConfigException
- * If a configuration problem is identified while initializing the
- * crypto manager.
- * @throws InitializationException
- * If a problem occurs while initializing the crypto manager that is
- * not related to the server configuration.
- */
- public void initializeCryptoManager()
+ private void initializeCryptoManager()
throws ConfigException, InitializationException
{
CryptoManagerCfg cryptoManagerCfg = serverContext.getRootConfig().getCryptoManager();
@@ -1589,6 +1851,8 @@
/**
* Initializes the set of backends defined in the Directory Server.
*
+ * @param backends The list of backends to initialize. All backends will be initialized
+ * if empty.
* @throws ConfigException If there is a configuration problem with any of
* the backends.
*
@@ -1596,10 +1860,10 @@
* the backends that is not related to the
* server configuration.
*/
- private void initializeBackends() throws ConfigException, InitializationException
+ private void initializeBackends(Collection<String> backends) throws ConfigException, InitializationException
{
backendConfigManager = new BackendConfigManager(serverContext);
- backendConfigManager.initializeBackendConfig();
+ backendConfigManager.initializeBackendConfig(backends);
// Make sure to initialize the root DSE backend separately after all other backends.
RootDSEBackendCfg rootDSECfg;
@@ -1798,8 +2062,7 @@
* initializing the subentry
* manager.
*/
- public void initializeSubentryManager()
- throws InitializationException
+ private void initializeSubentryManager() throws InitializationException
{
try
{
@@ -1820,6 +2083,8 @@
/**
* Initializes the set of authentication policy components for use by the
* Directory Server.
+ * For the time this is mostly PasswordPolicy but new Authentication Policy
+ * extensions should be initialized at the same time.
*
* @throws ConfigException
* If there is a configuration problem with any of the
@@ -1828,7 +2093,7 @@
* If a problem occurs while initializing the authentication policy
* components that is not related to the server configuration.
*/
- public void initializeAuthenticationPolicyComponents() throws ConfigException, InitializationException
+ private void initializeAuthenticationPolicyComponents() throws ConfigException, InitializationException
{
storageSchemeConfigManager = new PasswordStorageSchemeConfigManager(serverContext);
storageSchemeConfigManager.initializePasswordStorageSchemes();
@@ -1866,21 +2131,7 @@
return directoryServer.configurationHandler;
}
- /**
- * Initializes the set of plugins defined in the Directory Server. Only the
- * specified types of plugins will be initialized.
- *
- * @param pluginTypes The set of plugin types for the plugins to
- * initialize.
- *
- * @throws ConfigException If there is a configuration problem with any of
- * the Directory Server plugins.
- *
- * @throws InitializationException If a problem occurs while initializing
- * the plugins that is not related to the
- * server configuration.
- */
- public void initializePlugins(Set<PluginType> pluginTypes)
+ private void initializePlugins(Set<PluginType> pluginTypes)
throws ConfigException, InitializationException
{
pluginConfigManager = new PluginConfigManager(serverContext);
@@ -1895,7 +2146,7 @@
* @throws InitializationException If a problem occurs initializing the root
* DN manager.
*/
- public void initializeRootDNConfigManager()
+ private void initializeRootDNConfigManager()
throws ConfigException, InitializationException{
rootDNConfigManager = new RootDNConfigManager(serverContext);
rootDNConfigManager.initializeRootDNs();
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/BackUpDB.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/BackUpDB.java
index 664a323..6d7f24d 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/BackUpDB.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/BackUpDB.java
@@ -41,7 +41,6 @@
import org.forgerock.opendj.server.config.server.BackendCfg;
import org.opends.server.api.Backend;
import org.opends.server.api.Backend.BackendOperation;
-import org.opends.server.core.CoreConfigManager;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.LockFileManager;
import org.opends.server.loggers.DebugLogger;
@@ -438,87 +437,16 @@
incrementalBase = null;
}
- // Perform the initial bootstrap of the Directory Server and process the
- // configuration.
- DirectoryServer directoryServer = DirectoryServer.getInstance();
if (initializeServer)
{
try
{
- DirectoryServer.bootstrapClient();
- DirectoryServer.initializeJMX();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_SERVER_BOOTSTRAP_ERROR.get(getExceptionMessage(e)));
- return 1;
- }
-
- try
- {
- directoryServer.initializeConfiguration(configFile.getValue());
+ new DirectoryServer.InitializationBuilder(configFile.getValue())
+ .initialize();
}
catch (InitializationException ie)
{
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(ie.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
-
- // Initialize the Directory Server schema elements.
- try
- {
- directoryServer.initializeSchema();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(getExceptionMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server core configuration.
- try
- {
- CoreConfigManager coreConfigManager = new CoreConfigManager(directoryServer.getServerContext());
- coreConfigManager.initializeCoreConfig();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server crypto manager.
- try
- {
- directoryServer.initializeCryptoManager();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(getExceptionMessage(e)));
+ printWrappedText(err, ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS.get(getExceptionMessage(ie)));
return 1;
}
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/EncodePassword.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/EncodePassword.java
index 5ed4077..00eb257 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/EncodePassword.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/EncodePassword.java
@@ -20,7 +20,6 @@
import static com.forgerock.opendj.cli.Utils.*;
import static com.forgerock.opendj.cli.CommonArguments.*;
-import static org.opends.messages.ConfigMessages.*;
import static org.opends.messages.ToolMessages.*;
import static org.opends.server.protocols.ldap.LDAPResultCode.*;
import static org.opends.server.util.StaticUtils.*;
@@ -34,22 +33,10 @@
import java.util.concurrent.ConcurrentHashMap;
import org.forgerock.i18n.LocalizableMessage;
-import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.ldap.ByteString;
-import org.forgerock.opendj.ldap.DN;
-import org.forgerock.opendj.server.config.server.BackendCfg;
-import org.forgerock.opendj.server.config.server.LDIFBackendCfg;
-import org.forgerock.opendj.server.config.server.RootCfg;
-import org.forgerock.opendj.server.config.server.TrustStoreBackendCfg;
-import org.opends.server.api.Backend;
import org.opends.server.api.PasswordStorageScheme;
-import org.opends.server.config.ConfigConstants;
-import org.opends.server.types.Entry;
-import org.opends.server.core.CoreConfigManager;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.DirectoryServer.DirectoryServerVersionHandler;
-import org.opends.server.core.PasswordStorageSchemeConfigManager;
-import org.opends.server.crypto.CryptoManagerSync;
import org.opends.server.loggers.JDKLogging;
import org.opends.server.schema.AuthPasswordSyntax;
import org.opends.server.schema.UserPasswordSyntax;
@@ -297,95 +284,17 @@
}
- // Perform the initial bootstrap of the Directory Server and process the
- // configuration.
- DirectoryServer directoryServer = DirectoryServer.getInstance();
-
if (initializeServer)
{
try
{
- DirectoryServer.bootstrapClient();
- DirectoryServer.initializeJMX();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_SERVER_BOOTSTRAP_ERROR.get(getExceptionMessage(e)));
- return OPERATIONS_ERROR;
- }
-
- try
- {
- directoryServer.initializeConfiguration(configFile.getValue());
+ new DirectoryServer.InitializationBuilder(configFile.getValue())
+ .requirePasswordStorageSchemes()
+ .initialize();
}
catch (InitializationException ie)
{
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(ie.getMessage()));
- return OPERATIONS_ERROR;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(getExceptionMessage(e)));
- return OPERATIONS_ERROR;
- }
-
-
-
- // Initialize the Directory Server schema elements.
- try
- {
- directoryServer.initializeSchema();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(e.getMessage()));
- return OPERATIONS_ERROR;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(getExceptionMessage(e)));
- return OPERATIONS_ERROR;
- }
-
-
- // Initialize the Directory Server core configuration.
- try
- {
- CoreConfigManager coreConfigManager = new CoreConfigManager(directoryServer.getServerContext());
- coreConfigManager.initializeCoreConfig();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(e.getMessage()));
- return OPERATIONS_ERROR;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(getExceptionMessage(e)));
- return OPERATIONS_ERROR;
- }
-
-
- if(!initializeServerComponents(directoryServer, err))
- {
- return -1;
- }
-
- // Initialize the password storage schemes.
- try
- {
- PasswordStorageSchemeConfigManager storageSchemeConfigManager =
- new PasswordStorageSchemeConfigManager(directoryServer.getServerContext());
- storageSchemeConfigManager.initializePasswordStorageSchemes();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES.get(e.getMessage()));
- return OPERATIONS_ERROR;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES.get(getExceptionMessage(e)));
+ printWrappedText(err, ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS.get(getExceptionMessage(ie)));
return OPERATIONS_ERROR;
}
}
@@ -660,100 +569,6 @@
return INFO_ENCPW_PASSWORDS_DO_NOT_MATCH.get();
}
-
-
- private static boolean initializeServerComponents(DirectoryServer directoryServer, PrintStream err)
- {
- // Initialize the Directory Server crypto manager.
- try
- {
- directoryServer.initializeCryptoManager();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(e.getMessage()));
- return false;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(getExceptionMessage(e)));
- return false;
- }
- //Attempt to bring up enough of the server to process schemes requiring
- //secret keys from the trust store backend (3DES, BLOWFISH, AES, RC4) via
- //the crypto-manager.
- try {
- directoryServer.initializeRootDNConfigManager();
- directoryServer.initializePlugins(Collections.EMPTY_SET);
- initializeServerBackends(directoryServer, err);
- directoryServer.initializeSubentryManager();
- directoryServer.initializeAuthenticationPolicyComponents();
- directoryServer.initializeAuthenticatedUsers();
- new CryptoManagerSync();
- } catch (InitializationException | ConfigException e) {
- printWrappedText(err, ERR_ENCPW_CANNOT_INITIALIZE_SERVER_COMPONENTS.get(getExceptionMessage(e)));
- return false;
- }
- return true;
- }
-
- private static void initializeServerBackends(DirectoryServer directoryServer, PrintStream err)
- throws InitializationException, ConfigException {
- directoryServer.initializeRootDSE();
-
- Entry backendRoot;
- try {
- DN configEntryDN = DN.valueOf(ConfigConstants.DN_BACKEND_BASE);
- backendRoot = DirectoryServer.getConfigEntry(configEntryDN);
- } catch (Exception e) {
- LocalizableMessage message = ERR_CONFIG_BACKEND_CANNOT_GET_CONFIG_BASE.get(
- getExceptionMessage(e));
- throw new ConfigException(message, e);
- }
- if (backendRoot == null) {
- LocalizableMessage message = ERR_CONFIG_BACKEND_BASE_DOES_NOT_EXIST.get();
- throw new ConfigException(message);
- }
-
- RootCfg root = directoryServer.getServerContext().getRootConfig();
- for (String name : root.listBackends()) {
- BackendCfg backendCfg = root.getBackend(name);
- String backendID = backendCfg.getBackendId();
- if((backendCfg instanceof TrustStoreBackendCfg
- || backendCfg instanceof LDIFBackendCfg)
- && backendCfg.isEnabled())
- {
- String className = backendCfg.getJavaClass();
- Class<?> backendClass;
- Backend<BackendCfg> backend;
- try {
- backendClass = DirectoryServer.loadClass(className);
- backend = (Backend<BackendCfg>) backendClass.newInstance();
- } catch (Exception e) {
- printWrappedText(err,
- ERR_CONFIG_BACKEND_CANNOT_INSTANTIATE.get(className, backendCfg.dn(), stackTraceToSingleLineString(e)));
- continue;
- }
- backend.setBackendID(backendID);
- backend.setWritabilityMode(WritabilityMode.INTERNAL_ONLY);
- try {
- backend.configureBackend(backendCfg, directoryServer.getServerContext());
- backend.openBackend();
- } catch (Exception e) {
- printWrappedText(err,
- ERR_CONFIG_BACKEND_CANNOT_INITIALIZE.get(className, backendCfg.dn(), stackTraceToSingleLineString(e)));
- }
- try {
- DirectoryServer.registerBackend(backend);
- } catch (Exception e)
- {
- printWrappedText(
- err, WARN_CONFIG_BACKEND_CANNOT_REGISTER_BACKEND.get(backendCfg.getBackendId(), getExceptionMessage(e)));
- }
- }
- }
- }
-
/**
* Get the clear password.
* @param out The output to ask password.
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/ExportLDIF.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/ExportLDIF.java
index 6a2802f..bcd65e3 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/ExportLDIF.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/ExportLDIF.java
@@ -31,12 +31,10 @@
import java.util.Set;
import org.forgerock.i18n.slf4j.LocalizedLogger;
-import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.server.config.server.BackendCfg;
import org.opends.server.api.Backend;
import org.opends.server.api.Backend.BackendOperation;
import org.opends.server.api.plugin.PluginType;
-import org.opends.server.core.CoreConfigManager;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.LockFileManager;
import org.opends.server.loggers.DebugLogger;
@@ -357,146 +355,49 @@
}
}
- /** {@inheritDoc} */
@Override
public String getTaskObjectclass() {
return "ds-task-export";
}
- /** {@inheritDoc} */
@Override
public Class<?> getTaskClass() {
return ExportTask.class;
}
- /** {@inheritDoc} */
@Override
- protected int processLocal(boolean initializeServer,
- PrintStream out,
- PrintStream err) {
-
- // Perform the initial bootstrap of the Directory Server and process the
- // configuration.
- DirectoryServer directoryServer = DirectoryServer.getInstance();
+ protected int processLocal(boolean initializeServer, PrintStream out, PrintStream err)
+ {
if (initializeServer)
{
try
{
- DirectoryServer.bootstrapClient();
- DirectoryServer.initializeJMX();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_SERVER_BOOTSTRAP_ERROR.get(getExceptionMessage(e)));
- return 1;
- }
-
- try
- {
- directoryServer.initializeConfiguration(configFile.getValue());
+ new DirectoryServer.InitializationBuilder(configFile.getValue())
+ .requireCryptoServices()
+ .requireUserPlugins(PluginType.LDIF_EXPORT)
+ .initialize();
}
catch (InitializationException ie)
{
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(ie.getMessage()));
+ printWrappedText(err, ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS.get(getExceptionMessage(ie)));
return 1;
}
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
-
- // Initialize the Directory Server schema elements.
- try
- {
- directoryServer.initializeSchema();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(getExceptionMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server core configuration.
- try
- {
- CoreConfigManager coreConfigManager = new CoreConfigManager(directoryServer.getServerContext());
- coreConfigManager.initializeCoreConfig();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server crypto manager.
- try
- {
- directoryServer.initializeCryptoManager();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(getExceptionMessage(e)));
- return 1;
- }
-
try
{
- ErrorLogPublisher errorLogPublisher =
- TextErrorLogPublisher.getToolStartupTextErrorPublisher(
+ ErrorLogPublisher errorLogPublisher = TextErrorLogPublisher.getToolStartupTextErrorPublisher(
new TextWriter.STREAM(out));
ErrorLogger.getInstance().addLogPublisher(errorLogPublisher);
DebugLogger.getInstance().addPublisherIfRequired(new TextWriter.STREAM(out));
}
- catch(Exception e)
- {
- err.println("Error installing the custom error logger: " +
- stackTraceToSingleLineString(e));
- }
-
-
-
- // Make sure that the Directory Server plugin initialization is performed.
- try
- {
- HashSet<PluginType> pluginTypes = new HashSet<>(1);
- pluginTypes.add(PluginType.LDIF_EXPORT);
- directoryServer.initializePlugins(pluginTypes);
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS.get(e.getMessage()));
- return 1;
- }
catch (Exception e)
{
- printWrappedText(err, ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS.get(getExceptionMessage(e)));
+ err.println("Error installing the custom error logger: " + stackTraceToSingleLineString(e));
return 1;
}
}
-
// See if there were any user-defined sets of include/exclude attributes or
// filters. If so, then process them.
Set<AttributeType> excludeAttributes = toAttributeTypes(excludeAttributeStrings);
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/ImportLDIF.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/ImportLDIF.java
index 1906a11..72ed8d4 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/ImportLDIF.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/ImportLDIF.java
@@ -40,10 +40,8 @@
import org.opends.server.api.Backend;
import org.opends.server.api.Backend.BackendOperation;
import org.opends.server.api.plugin.PluginType;
-import org.opends.server.core.CoreConfigManager;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.LockFileManager;
-import org.opends.server.core.PluginConfigManager;
import org.opends.server.loggers.ErrorLogPublisher;
import org.opends.server.loggers.ErrorLogger;
import org.opends.server.loggers.JDKLogging;
@@ -495,75 +493,21 @@
PrintStream err) {
- // Perform the initial bootstrap of the Directory Server and process the configuration.
- DirectoryServer directoryServer = DirectoryServer.getInstance();
if (initializeServer)
{
+ DirectoryServer.InitializationBuilder ib;
try
{
- DirectoryServer.bootstrapClient();
- DirectoryServer.initializeJMX();
+ new DirectoryServer.InitializationBuilder(configFile.getValue())
+ .requireCryptoServices()
+ .requireUserPlugins(PluginType.LDIF_IMPORT)
+ .initialize();
}
- catch (Exception e)
+ catch (InitializationException e)
{
- printWrappedText(err, ERR_SERVER_BOOTSTRAP_ERROR.get(getExceptionMessage(e)));
+ printWrappedText(err, ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS.get(e.getLocalizedMessage()));
return 1;
}
-
- try
- {
- directoryServer.initializeConfiguration(configFile.getValue());
- }
- catch (InitializationException ie)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(ie.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
-
- // Initialize the Directory Server schema elements.
- try
- {
- directoryServer.initializeSchema();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(getMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server core configuration.
- try
- {
- CoreConfigManager coreConfigManager = new CoreConfigManager(directoryServer.getServerContext());
- coreConfigManager.initializeCoreConfig();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(getMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server crypto manager.
- try
- {
- directoryServer.initializeCryptoManager();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(getMessage(e)));
- return 1;
- }
-
-
if (! quietMode.isPresent())
{
try
@@ -577,68 +521,9 @@
{
err.println("Error installing the custom error logger: " +
stackTraceToSingleLineString(e));
+ return 1;
}
}
-
- // Initialize the root DNs.
- try
- {
- directoryServer.initializeRootDNConfigManager();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_ROOTDN_MANAGER.get(getMessage(e)));
- return 1;
- }
-
- // Initialize the plugin manager.
- try
- {
- HashSet<PluginType> pluginTypes = new HashSet<>(1);
- directoryServer.initializePlugins(pluginTypes);
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS.get(getMessage(e)));
- return 1;
- }
-
- // Initialize the subentry manager.
- try
- {
- directoryServer.initializeSubentryManager();
- }
- catch (InitializationException ie)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_SUBENTRY_MANAGER.get(ie.getMessage()));
- return 1;
- }
-
- // Initialize all the password policy information.
- try
- {
- directoryServer.initializeAuthenticationPolicyComponents();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_LDIFIMPORT_CANNOT_INITIALIZE_PWPOLICY.get(getMessage(e)));
- return 1;
- }
- }
-
- // Make sure that the plugin initialization is performed.
- try
- {
- HashSet<PluginType> pluginTypes = new HashSet<>(1);
- pluginTypes.add(PluginType.LDIF_IMPORT);
- PluginConfigManager pluginConfigManager =
- DirectoryServer.getPluginConfigManager();
- pluginConfigManager.initializeUserPlugins(pluginTypes);
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS.get(getMessage(e)));
- return 1;
}
// See if there were any user-defined sets of include/exclude attributes or
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java
index 402beb5..f3d083e 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java
@@ -208,53 +208,15 @@
return 1;
}
- // Perform the initial bootstrap of the Directory Server and process the
- // configuration.
- DirectoryServer directoryServer = DirectoryServer.getInstance();
-
if (initializeServer)
{
try
{
- DirectoryServer.bootstrapClient();
- DirectoryServer.initializeJMX();
+ new DirectoryServer.InitializationBuilder(configFile.getValue());
}
catch (Exception e)
{
- printWrappedText(err, ERR_SERVER_BOOTSTRAP_ERROR.get(getExceptionMessage(e)));
- return 1;
- }
-
- try
- {
- directoryServer.initializeConfiguration(configFile.getValue());
- }
- catch (InitializationException ie)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(ie.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
-
- // Initialize the Directory Server schema elements.
- try
- {
- directoryServer.initializeSchema();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(getExceptionMessage(e)));
+ printWrappedText(err, e.getLocalizedMessage());
return 1;
}
}
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/RebuildIndex.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/RebuildIndex.java
index 5691e62..0a7d8de 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/RebuildIndex.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/RebuildIndex.java
@@ -37,7 +37,6 @@
import org.opends.server.api.Backend.BackendOperation;
import org.opends.server.backends.RebuildConfig;
import org.opends.server.backends.RebuildConfig.RebuildMode;
-import org.opends.server.core.CoreConfigManager;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.LockFileManager;
import org.opends.server.loggers.DebugLogger;
@@ -279,17 +278,12 @@
argParser.setUsageArgument(displayUsage);
}
- /** {@inheritDoc} */
@Override
- protected int processLocal(final boolean initializeServer,
- final PrintStream out, final PrintStream err)
+ protected int processLocal(final boolean initializeServer, final PrintStream out, final PrintStream err)
{
- // Performs the initial bootstrap of the Directory Server and processes the
- // configuration.
- final DirectoryServer directoryServer = DirectoryServer.getInstance();
if (initializeServer)
{
- final int init = initializeServer(directoryServer, out, err);
+ final int init = initializeServer(out, err);
if (init != 0)
{
return init;
@@ -372,17 +366,8 @@
}
/**
- * Initializes the directory server.<br />
- * Processes to :
- * - bootstrapClient
- * - initializeJMX
- * - initializeConfiguration
- * - initializeSchema
- * - coreConfigManager.initializeCoreConfig()
- * - initializeCryptoManager
+ * Initializes the directory server.
*
- * @param directoryServer
- * The current instance.
* @param out
* The output stream to use for standard output, or {@code null} if
* standard output is not needed.
@@ -391,65 +376,20 @@
* standard error is not needed.
* @return The result code.
*/
- private int initializeServer(final DirectoryServer directoryServer,
- final PrintStream out, final PrintStream err)
+ private int initializeServer(final PrintStream out, final PrintStream err)
{
try
{
- DirectoryServer.bootstrapClient();
- DirectoryServer.initializeJMX();
+ new DirectoryServer.InitializationBuilder(configFile.getValue())
+ .requireCryptoServices()
+ .initialize();
+ return 0;
}
- catch (Exception e)
+ catch (InitializationException ie)
{
- printWrappedText(err, ERR_SERVER_BOOTSTRAP_ERROR.get(getExceptionMessage(e)));
+ printWrappedText(err, ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS.get(ie.getLocalizedMessage()));
return 1;
}
-
- try
- {
- directoryServer.initializeConfiguration(configFile.getValue());
- }
- catch (Exception ex)
- {
- printWrappedText(err, toErrorMsg(ERR_CANNOT_LOAD_CONFIG, ex));
- return 1;
- }
-
- // Initializes the Directory Server schema elements.
- try
- {
- directoryServer.initializeSchema();
- }
- catch (Exception e)
- {
- printWrappedText(err, toErrorMsg(ERR_CANNOT_LOAD_SCHEMA, e));
- return 1;
- }
-
- // Initializes the Directory Server core configuration.
- try
- {
- final CoreConfigManager coreConfigManager = new CoreConfigManager(directoryServer.getServerContext());
- coreConfigManager.initializeCoreConfig();
- }
- catch (Exception ex)
- {
- printWrappedText(err, toErrorMsg(ERR_CANNOT_INITIALIZE_CORE_CONFIG, ex));
- return 1;
- }
-
- // Initializes the Directory Server crypto manager.
- try
- {
- directoryServer.initializeCryptoManager();
- }
- catch (Exception ex)
- {
- printWrappedText(err, toErrorMsg(ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER, ex));
- return 1;
- }
-
- return 0;
}
private String toErrorMsg(Arg1<Object> errorMsg, Exception ex)
@@ -658,10 +598,9 @@
return 1;
}
- final DirectoryServer directoryServer = DirectoryServer.getInstance();
if (initializeServer)
{
- final int init = initializeServer(directoryServer, out, out);
+ final int init = initializeServer(out, out);
if (init != 0)
{
return init;
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/RestoreDB.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/RestoreDB.java
index ad5a312..7b14eef 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/RestoreDB.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/RestoreDB.java
@@ -34,11 +34,9 @@
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
-import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.server.config.server.BackendCfg;
import org.opends.server.api.Backend;
import org.opends.server.api.Backend.BackendOperation;
-import org.opends.server.core.CoreConfigManager;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.LockFileManager;
import org.opends.server.loggers.DebugLogger;
@@ -282,90 +280,18 @@
PrintStream err) {
- // Perform the initial bootstrap of the Directory Server and process the
- // configuration.
- DirectoryServer directoryServer = DirectoryServer.getInstance();
if (initializeServer)
{
try
{
- DirectoryServer.bootstrapClient();
- DirectoryServer.initializeJMX();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_SERVER_BOOTSTRAP_ERROR.get(getExceptionMessage(e)));
- return 1;
- }
-
- try
- {
- directoryServer.initializeConfiguration(configFile.getValue());
+ new DirectoryServer.InitializationBuilder(configFile.getValue())
+ .initialize();
}
catch (InitializationException ie)
{
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(ie.getMessage()));
+ printWrappedText(err, ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS.get(ie.getLocalizedMessage()));
return 1;
}
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
-
- // Initialize the Directory Server schema elements.
- try
- {
- directoryServer.initializeSchema();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(getExceptionMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server core configuration.
- try
- {
- CoreConfigManager coreConfigManager = new CoreConfigManager(directoryServer.getServerContext());
- coreConfigManager.initializeCoreConfig();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server crypto manager.
- try
- {
- directoryServer.initializeCryptoManager();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(getExceptionMessage(e)));
- return 1;
- }
-
try
{
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/VerifyIndex.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/VerifyIndex.java
index ed4b4a3..02edd04 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/VerifyIndex.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/VerifyIndex.java
@@ -29,13 +29,11 @@
import java.util.List;
import org.forgerock.i18n.LocalizableMessage;
-import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.server.config.server.BackendCfg;
import org.opends.server.api.Backend;
import org.opends.server.api.Backend.BackendOperation;
import org.opends.server.backends.VerifyConfig;
-import org.opends.server.core.CoreConfigManager;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.DirectoryServer.DirectoryServerVersionHandler;
import org.opends.server.core.LockFileManager;
@@ -191,88 +189,17 @@
return 1;
}
- // Perform the initial bootstrap of the Directory Server and process the
- // configuration.
- DirectoryServer directoryServer = DirectoryServer.getInstance();
-
if (initializeServer)
{
try
{
- DirectoryServer.bootstrapClient();
- DirectoryServer.initializeJMX();
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_SERVER_BOOTSTRAP_ERROR.get(getExceptionMessage(e)));
- return 1;
- }
-
- try
- {
- directoryServer.initializeConfiguration(configFile.getValue());
+ new DirectoryServer.InitializationBuilder(configFile.getValue())
+ .requireCryptoServices()
+ .initialize();
}
catch (InitializationException ie)
{
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(ie.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
-
- // Initialize the Directory Server schema elements.
- try
- {
- directoryServer.initializeSchema();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_LOAD_SCHEMA.get(getExceptionMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server core configuration.
- try
- {
- CoreConfigManager coreConfigManager = new CoreConfigManager(directoryServer.getServerContext());
- coreConfigManager.initializeCoreConfig();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CORE_CONFIG.get(getExceptionMessage(e)));
- return 1;
- }
-
-
- // Initialize the Directory Server crypto manager.
- try
- {
- directoryServer.initializeCryptoManager();
- }
- catch (ConfigException | InitializationException e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(e.getMessage()));
- return 1;
- }
- catch (Exception e)
- {
- printWrappedText(err, ERR_CANNOT_INITIALIZE_CRYPTO_MANAGER.get(getExceptionMessage(e)));
+ printWrappedText(err, ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS.get(ie.getLocalizedMessage()));
return 1;
}
}
diff --git a/opendj-server-legacy/src/messages/org/opends/messages/tool.properties b/opendj-server-legacy/src/messages/org/opends/messages/tool.properties
index e0d019d..5be737e 100644
--- a/opendj-server-legacy/src/messages/org/opends/messages/tool.properties
+++ b/opendj-server-legacy/src/messages/org/opends/messages/tool.properties
@@ -77,7 +77,7 @@
Directory Server schema: %s
ERR_CANNOT_INITIALIZE_CORE_CONFIG_23=An error occurred while trying to \
initialize the core Directory Server configuration: %s
-ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=An error occurred while \
+ERR_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=An error occurred while \
trying to initialize the Directory Server password storage schemes: %s
ERR_ENCPW_NO_STORAGE_SCHEMES_25=No password storage schemes have been \
configured for use in the Directory Server
@@ -566,10 +566,6 @@
values
INFO_LDIFIMPORT_DESCRIPTION_SKIP_SCHEMA_VALIDATION_339=Skip schema validation \
during the LDIF import
-ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS_340=An error occurred while \
- attempting to initialize the LDIF export plugins: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS_341=An error occurred while \
- attempting to initialize the LDIF import plugins: %s
INFO_DESCRIPTION_ASSERTION_FILTER_342=Use the LDAP assertion control with the \
provided filter
ERR_LDAP_ASSERTION_INVALID_FILTER_343=The search filter provided for the \
@@ -623,7 +619,7 @@
scheme "%s" is not configured for use in the Directory Server
ERR_ENCPW_INVALID_ENCODED_AUTHPW_372=The provided password is not a \
valid encoded authentication password value: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PWPOLICY_373=An error occurred while \
+ERR_CANNOT_INITIALIZE_PWPOLICY_373=An error occurred while \
attempting to initialize the password policy components: %s
INFO_STOPDS_DESCRIPTION_HOST_374=Directory server hostname or IP address
INFO_STOPDS_DESCRIPTION_PORT_375=Directory server administration port number
@@ -2168,9 +2164,8 @@
already a backup location for backend %s
INFO_RECURRING_TASK_PLACEHOLDER_1651={schedulePattern}
-ERR_ENCPW_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=An error occurred \
- while attempting to initialize server components to run the encode \
- password tool: %s
+ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=An error occurred \
+ while attempting to initialize server components to run the tool: %s
ERR_LDIFIMPORT_COUNT_REJECTS_REQUIRES_OFFLINE_1653=The %s \
argument is not supported for online imports
INFO_DESCRIPTION_RECURRING_TASK_1654=Indicates the task is recurring and will \
@@ -2458,7 +2453,10 @@
offHeapSize cannot be parsed: %s
INFO_LDIFIMPORT_DESCRIPTION_OFFHEAP_SIZE_1898=Size expressed in megabytes of the off-heap memory dedicated to the \
phase one buffers.
-INFO_LDIFIMPORT_OFFHEAP_SIZE_PLACEHOLDER_1687={size in megabytes}
+INFO_LDIFIMPORT_OFFHEAP_SIZE_PLACEHOLDER_1899={size in megabytes}
+ERR_CANNOT_INITIALIZE_BACKENDS_1900=An error occurred while initializing server backends: %s
+ERR_CANNOT_INITIALIZE_SERVER_PLUGINS_1901=An error occurred while initializing plugins: %s
+ERR_CANNOT_SUBSYSTEM_NOT_INITIALIZED_1902=Subsystem %s should be initialized first
# Upgrade tasks
INFO_UPGRADE_TASK_6869_SUMMARY_10000=Fixing de-DE collation matching rule OID
diff --git a/opendj-server-legacy/src/messages/org/opends/messages/tool_de.properties b/opendj-server-legacy/src/messages/org/opends/messages/tool_de.properties
index 2f8c85e..ff499d2 100644
--- a/opendj-server-legacy/src/messages/org/opends/messages/tool_de.properties
+++ b/opendj-server-legacy/src/messages/org/opends/messages/tool_de.properties
@@ -59,7 +59,7 @@
ERR_CANNOT_LOAD_CONFIG_21=Fehler beim Versuch, die Directory-Server-Konfiguration zu laden: %s
ERR_CANNOT_LOAD_SCHEMA_22=Fehler beim Versuch, das Directory-Server-Schema zu laden: %s
ERR_CANNOT_INITIALIZE_CORE_CONFIG_23=Fehler beim Versuch, die Directory-Server-Kernkonfiguration zu initialisieren: %s
-ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=Fehler beim Versuch, das Directory-Server-Passwort-Speicherschema zu initialisieren: %s
+ERR_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=Fehler beim Versuch, das Directory-Server-Passwort-Speicherschema zu initialisieren: %s
ERR_ENCPW_NO_STORAGE_SCHEMES_25=Es sind keine Passwort-Speicherschemen f\u00fcr die Verwendung im Directory-Server konfiguriert
ERR_ENCPW_NO_SUCH_SCHEME_26=Das Passwort-Speicherschema "%s" ist nicht f\u00fcr die Verwendung im Directory-Server konfiguriert
INFO_ENCPW_PASSWORDS_MATCH_27=Das angegebene Klartext-Passwort und das verschl\u00fcsselte Passwort stimmen \u00fcberein
@@ -289,8 +289,6 @@
WARN_VERIFYINDEX_CANNOT_UNLOCK_BACKEND_337=Fehler beim Versuch, die gemeinsame Sperre f\u00fcr Backend %s freizugeben: %s. Diese Sperre sollte automatisch aufgehoben werden, wenn der \u00dcberpr\u00fcfungsprozess vorhanden ist, sodass keine weitere Aktion erforderlich ist
INFO_DESCRIPTION_TYPES_ONLY_338=Nur Attributnamen abfragen, nicht ihre Werte
INFO_LDIFIMPORT_DESCRIPTION_SKIP_SCHEMA_VALIDATION_339=Schema\u00fcberpr\u00fcfung beim LDIF-Import \u00fcberspringen
-ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS_340=Fehler beim Versuch, die LDIF-Export-Plugins zu initialisieren: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS_341=Fehler beim Versuch, die LDIF-Import-Plugins zu initialisieren: %s
INFO_DESCRIPTION_ASSERTION_FILTER_342=LDAP-Assertionssteuerung f\u00fcr den angegebenen Filter verwenden
ERR_LDAP_ASSERTION_INVALID_FILTER_343=Der f\u00fcr die LDAP-Assertionssteuerung angegebene Suchfilter ist ung\u00fcltig: %s
INFO_DESCRIPTION_PREREAD_ATTRS_346=LDAP-ReadEntry-Preread-Steuerung verwenden
@@ -317,7 +315,7 @@
INFO_ENCPW_DESCRIPTION_AUTHPW_369=Authentifizierungs-Passwortsyntax statt Benutzer-Passwortsyntax verwenden
ERR_ENCPW_NO_SUCH_AUTH_SCHEME_371=Das Speicherschema des Authentifizierungspassworts "%s" ist nicht f\u00fcr die Verwendung im Directory-Server konfiguriert
ERR_ENCPW_INVALID_ENCODED_AUTHPW_372=Das angegebene Passwort ist kein g\u00fcltiger verschl\u00fcsselter Wert f\u00fcr das Authentifizierungspasswort: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PWPOLICY_373=Fehler beim Versuch, die Komponenten der Passwortrichtlinie zu initialisieren: %s
+ERR_CANNOT_INITIALIZE_PWPOLICY_373=Fehler beim Versuch, die Komponenten der Passwortrichtlinie zu initialisieren: %s
INFO_STOPDS_DESCRIPTION_HOST_374=Directory-Server-Hostname oder -IP-Adresse
INFO_STOPDS_DESCRIPTION_PORT_375=Directory-Server-Administrations-Portnummer
INFO_STOPDS_DESCRIPTION_BINDDN_378=DN f\u00fcr die Verbindung zum Server
@@ -1105,7 +1103,7 @@
ERR_BACKUPDB_CANNOT_BACKUP_IN_DIRECTORY_1650=Ziel-Backend %s konnte nicht im Sicherungsverzeichnis %s gesichert werden: Dieses Verzeichnis ist bereits ein Sicherungsspeicherort f\u00fcr Backend %s
INFO_RECURRING_TASK_PLACEHOLDER_1651={Planungsmuster}
-ERR_ENCPW_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=Fehler beim Versuch, Server-Komponenten zu initialisieren, um das Tool zum Verschl\u00fcsseln des Passworts auszuf\u00fchren: %s
+ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=Fehler beim Versuch, Server-Komponenten zu initialisieren, um das Tool auszuf\u00fchren: %s
ERR_LDIFIMPORT_COUNT_REJECTS_REQUIRES_OFFLINE_1653=Das Argument %s wird nicht f\u00fcr Online-Importe unterst\u00fctzt
INFO_DESCRIPTION_RECURRING_TASK_1654=Gibt an, dass sich die Aufgabe wiederholt und geplant wird, gem\u00e4\u00df dem Wertargument in crontab(5), die mit Datum und Uhrzeit kompatibel sind.
INFO_TASK_TOOL_RECURRING_TASK_SCHEDULED_1655=Wiederholte %s-Aufgabe %s erfolgreich geplant
diff --git a/opendj-server-legacy/src/messages/org/opends/messages/tool_es.properties b/opendj-server-legacy/src/messages/org/opends/messages/tool_es.properties
index fa328f7..2b1f201 100644
--- a/opendj-server-legacy/src/messages/org/opends/messages/tool_es.properties
+++ b/opendj-server-legacy/src/messages/org/opends/messages/tool_es.properties
@@ -59,7 +59,7 @@
ERR_CANNOT_LOAD_CONFIG_21=Se ha producido un error al tratar de cargar la configuraci\u00f3n del Servidor de directorios: %s
ERR_CANNOT_LOAD_SCHEMA_22=Se ha producido un error al tratar de cargar el esquema del Servidor de directorios: %s
ERR_CANNOT_INITIALIZE_CORE_CONFIG_23=Se ha producido un error al tratar de inicializar la configuraci\u00f3n del Servidor de directorios de base: %s
-ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=Se ha producido un error al tratar de inicializar los esquemas de almacenamiento de contrase\u00f1as del Servidor de directorios: %s
+ERR_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=Se ha producido un error al tratar de inicializar los esquemas de almacenamiento de contrase\u00f1as del Servidor de directorios: %s
ERR_ENCPW_NO_STORAGE_SCHEMES_25=No se han configurado esquemas de almacenamiento de contrase\u00f1as para su uso en el Servidor de directorios
ERR_ENCPW_NO_SUCH_SCHEME_26=No se ha configurado el esquema de almacenamiento de contrase\u00f1as "%s" para su uso en el Servidor de directorios
INFO_ENCPW_PASSWORDS_MATCH_27=Las contrase\u00f1as de texto sin codificar y codificadas especificadas coinciden
@@ -289,8 +289,6 @@
WARN_VERIFYINDEX_CANNOT_UNLOCK_BACKEND_337=Se ha producido un error al tratar de desactivar el bloqueo compartido para el backend %s: %s. Este bloqueo deber\u00eda eliminarse autom\u00e1ticamente al cerrarse el proceso de comprobaci\u00f3n, por lo que no deber\u00eda requerirse la realizaci\u00f3n de ninguna operaci\u00f3n adicional
INFO_DESCRIPTION_TYPES_ONLY_338=Recuperar s\u00f3lo los nombres de atributo, pero no sus valores
INFO_LDIFIMPORT_DESCRIPTION_SKIP_SCHEMA_VALIDATION_339=Omitir la validaci\u00f3n de esquemas durante la importaci\u00f3n de LDIF
-ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS_340=Se ha producido un error al tratar de inicializar los complementos de exportaci\u00f3n de LDIF: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS_341=Se ha producido un error al tratar de inicializar los complementos de importaci\u00f3n de LDIF: %s
INFO_DESCRIPTION_ASSERTION_FILTER_342=Utilizar el control de aserci\u00f3n LDAP con el filtro especificado
ERR_LDAP_ASSERTION_INVALID_FILTER_343=El filtro de b\u00fasqueda especificado para el control de aserci\u00f3n de LDAP no era v\u00e1lido: %s
INFO_DESCRIPTION_PREREAD_ATTRS_346=Utilizar el control de pre-lectura ReadEntry de LDAP
@@ -317,7 +315,7 @@
INFO_ENCPW_DESCRIPTION_AUTHPW_369=Utilizar la sintaxis de contrase\u00f1a de autenticaci\u00f3n en lugar de la sintaxis de contrase\u00f1a de usuario
ERR_ENCPW_NO_SUCH_AUTH_SCHEME_371=El esquema de almacenamiento de contrase\u00f1as de autenticaci\u00f3n "%s" no se ha configurado para su uso en el Servidor de directorios
ERR_ENCPW_INVALID_ENCODED_AUTHPW_372=La contrase\u00f1a proporcionada no es un valor de contrase\u00f1a de autenticaci\u00f3n codificada v\u00e1lido: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PWPOLICY_373=Se ha producido un error al tratar de inicializar los componentes de la directiva de contrase\u00f1as: %s
+ERR_CANNOT_INITIALIZE_PWPOLICY_373=Se ha producido un error al tratar de inicializar los componentes de la directiva de contrase\u00f1as: %s
INFO_STOPDS_DESCRIPTION_HOST_374=Direcci\u00f3n IP o nombre de host de servidor de directorios
INFO_STOPDS_DESCRIPTION_PORT_375=N\u00famero de puerto de administraci\u00f3n de Directory Server
INFO_STOPDS_DESCRIPTION_BINDDN_378=ND que utilizar para enlazar al servidor
@@ -1105,7 +1103,7 @@
ERR_BACKUPDB_CANNOT_BACKUP_IN_DIRECTORY_1650=No puede realizarse una copia de seguridad del backend de destino %s en el directorio de copia de seguridad %s: este directorio ya es una ubicaci\u00f3n de copia de seguridad para el backend %s
INFO_RECURRING_TASK_PLACEHOLDER_1651={schedulePattern}
-ERR_ENCPW_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=Se ha producido un error al tratar de inicializar los componentes de servidor para ejecutar la herramienta de codificaci\u00f3n de contrase\u00f1as: %s
+ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=Se ha producido un error al tratar de inicializar los componentes de servidor para ejecutar la herramienta: %s
ERR_LDIFIMPORT_COUNT_REJECTS_REQUIRES_OFFLINE_1653=No se admite el argumento %s para importaciones en l\u00ednea
INFO_DESCRIPTION_RECURRING_TASK_1654=Indica que la tarea es repetitiva y que se programar\u00e1 seg\u00fan el argumento de valor expresado en el patr\u00f3n hora/fecha compatible de crontab(5)
INFO_TASK_TOOL_RECURRING_TASK_SCHEDULED_1655=La %s tarea %s repetitiva se ha programado correctamente
diff --git a/opendj-server-legacy/src/messages/org/opends/messages/tool_fr.properties b/opendj-server-legacy/src/messages/org/opends/messages/tool_fr.properties
index b789d59..ccc304a 100644
--- a/opendj-server-legacy/src/messages/org/opends/messages/tool_fr.properties
+++ b/opendj-server-legacy/src/messages/org/opends/messages/tool_fr.properties
@@ -59,7 +59,7 @@
ERR_CANNOT_LOAD_CONFIG_21=Une erreur s'est produite lors de la tentative de chargement de la configuration Directory Server\u00a0: %s
ERR_CANNOT_LOAD_SCHEMA_22=Une erreur s'est produite lors de la tentative de chargement du sch\u00e9ma Directory Server\u00a0: %s
ERR_CANNOT_INITIALIZE_CORE_CONFIG_23=Une erreur s'est produite lors de la tentative d'initialisation de la configuration de serveur de base Directory Server\u00a0: %s
-ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=Une erreur s'est produite lors de la tentative d'initialisation des mod\u00e8les de stockage de mot de passe Directory Server\u00a0: %s
+ERR_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=Une erreur s'est produite lors de la tentative d'initialisation des mod\u00e8les de stockage de mot de passe Directory Server\u00a0: %s
ERR_ENCPW_NO_STORAGE_SCHEMES_25=Aucun mod\u00e8le de stockage de mot de passe n'est configur\u00e9 pour utilisation dans Directory Server
ERR_ENCPW_NO_SUCH_SCHEME_26=Le mod\u00e8le de stockage de mot de passe "%s" n'est configur\u00e9 pour utilisation dans Directory Server
INFO_ENCPW_PASSWORDS_MATCH_27=Les mots de passe en texte clair et cod\u00e9s indiqu\u00e9s correspondent
@@ -289,8 +289,6 @@
WARN_VERIFYINDEX_CANNOT_UNLOCK_BACKEND_337=Une erreur s'est produite lors de la tentative de lib\u00e9ration du verrou partag\u00e9 pour le backend %s\u00a0: %s. Ce verrou devrait \u00eatre automatiquement supprim\u00e9 \u00e0 la fermeture du processus de v\u00e9rification et aucune autre action ne devrait \u00eatre n\u00e9cessaire
INFO_DESCRIPTION_TYPES_ONLY_338=R\u00e9cup\u00e9rer uniquement les noms d'attribut, pas leurs valeurs
INFO_LDIFIMPORT_DESCRIPTION_SKIP_SCHEMA_VALIDATION_339=Ignorer la validation de sch\u00e9ma pendant l'importation LDIF
-ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS_340=Une erreur s'est produite lors de la tentative d'initialisation des plug-ins d'exportation LDIF\u00a0: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS_341=Une erreur s'est produite lors de la tentative d'initialisation des plug-ins d'importation LDIF\u00a0: %s
INFO_DESCRIPTION_ASSERTION_FILTER_342=Utiliser le contr\u00f4le de l'assertion LDAP avec le filtre fourni
ERR_LDAP_ASSERTION_INVALID_FILTER_343=Le filtre de recherche fourni pour le contr\u00f4le d'assertion LDAP \u00e9tait invalide\u00a0: %s
INFO_DESCRIPTION_PREREAD_ATTRS_346=Utiliser le contr\u00f4le de pr\u00e9lecture ReadEntry de LDAP
@@ -317,7 +315,7 @@
INFO_ENCPW_DESCRIPTION_AUTHPW_369=Utiliser la syntaxe de mot de passe d'authentification plut\u00f4t que la syntaxe de mot de passe utilisateur
ERR_ENCPW_NO_SUCH_AUTH_SCHEME_371=Le mod\u00e8le de stockage de mot de passe d'authentification "%s" n'est configur\u00e9 pour utilisation dans Directory Server
ERR_ENCPW_INVALID_ENCODED_AUTHPW_372=Le mot de passe fourni n'est pas une valeur de mot de passe d'authentification cod\u00e9 valide\u00a0: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PWPOLICY_373=Une erreur s'est produite lors de la tentative d'initialisation des composants de strat\u00e9gie de mot de passe\u00a0: %s
+ERR_CANNOT_INITIALIZE_PWPOLICY_373=Une erreur s'est produite lors de la tentative d'initialisation des composants de strat\u00e9gie de mot de passe\u00a0: %s
INFO_STOPDS_DESCRIPTION_HOST_374=Nom d'h\u00f4te ou adresse IP du serveur d'annuaire
INFO_STOPDS_DESCRIPTION_PORT_375=Num\u00e9ro de port d'administration du serveur d'annuaire
INFO_STOPDS_DESCRIPTION_BINDDN_378=DN \u00e0 utiliser pour effectuer une liaison au serveur
@@ -1105,7 +1103,7 @@
ERR_BACKUPDB_CANNOT_BACKUP_IN_DIRECTORY_1650=Le backend cible %s ne peut pas \u00eatre sauvegard\u00e9 dans le r\u00e9pertoire de sauvegarde %s\u00a0: ce r\u00e9pertoire sert d\u00e9j\u00e0 d'emplacement de sauvegarde au backend %s
INFO_RECURRING_TASK_PLACEHOLDER_1651={motifPlan}
-ERR_ENCPW_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=Une erreur s'est produite lors de la tentative d'initialisation des composants serveur pour l'ex\u00e9cution de l'outil de codage du mot de passe\u00a0: %s
+ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=Une erreur s'est produite lors de la tentative d'initialisation des composants serveur pour l'ex\u00e9cution de l'outil: %s
ERR_LDIFIMPORT_COUNT_REJECTS_REQUIRES_OFFLINE_1653=L'argument %s n'est pas pris en charge pour les importations en ligne
INFO_DESCRIPTION_RECURRING_TASK_1654=Indique que la t\u00e2che est r\u00e9currente et sera planifi\u00e9e selon l'argument de valeur indiqu\u00e9 dans le motif d'heure/date compatible avec crontab(5)
INFO_TASK_TOOL_RECURRING_TASK_SCHEDULED_1655=%s t\u00e2che %s r\u00e9currente planifi\u00e9e
diff --git a/opendj-server-legacy/src/messages/org/opends/messages/tool_ja.properties b/opendj-server-legacy/src/messages/org/opends/messages/tool_ja.properties
index 24f7186..a02c18c 100644
--- a/opendj-server-legacy/src/messages/org/opends/messages/tool_ja.properties
+++ b/opendj-server-legacy/src/messages/org/opends/messages/tool_ja.properties
@@ -59,7 +59,7 @@
ERR_CANNOT_LOAD_CONFIG_21=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u69cb\u6210\u306e\u8aad\u307f\u8fbc\u307f\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
ERR_CANNOT_LOAD_SCHEMA_22=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u306e\u8aad\u307f\u8fbc\u307f\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
ERR_CANNOT_INITIALIZE_CORE_CONFIG_23=\u30b3\u30a2\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u69cb\u6210\u306e\u521d\u671f\u5316\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
-ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u30d1\u30b9\u30ef\u30fc\u30c9\u8a18\u61b6\u30b9\u30ad\u30fc\u30de\u306e\u521d\u671f\u5316\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
+ERR_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u30d1\u30b9\u30ef\u30fc\u30c9\u8a18\u61b6\u30b9\u30ad\u30fc\u30de\u306e\u521d\u671f\u5316\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
ERR_ENCPW_NO_STORAGE_SCHEMES_25=\u30d1\u30b9\u30ef\u30fc\u30c9\u8a18\u61b6\u30b9\u30ad\u30fc\u30de\u304c\u3001\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u3067\u4f7f\u7528\u3059\u308b\u3088\u3046\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093
ERR_ENCPW_NO_SUCH_SCHEME_26=\u30d1\u30b9\u30ef\u30fc\u30c9\u8a18\u61b6\u30b9\u30ad\u30fc\u30de "%s" \u304c\u3001\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u3067\u4f7f\u7528\u3059\u308b\u3088\u3046\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093
INFO_ENCPW_PASSWORDS_MATCH_27=\u6307\u5b9a\u3055\u308c\u305f\u5e73\u6587\u30c6\u30ad\u30b9\u30c8\u304a\u3088\u3073\u7b26\u53f7\u5316\u3055\u308c\u305f\u30d1\u30b9\u30ef\u30fc\u30c9\u304c\u4e00\u81f4\u3057\u307e\u3059
@@ -289,8 +289,6 @@
WARN_VERIFYINDEX_CANNOT_UNLOCK_BACKEND_337=\u30d0\u30c3\u30af\u30a8\u30f3\u30c9 %s \u306e\u5171\u6709\u30ed\u30c3\u30af\u306e\u89e3\u9664\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s\u3002\u3053\u306e\u30ed\u30c3\u30af\u306f\u691c\u8a3c\u30d7\u30ed\u30bb\u30b9\u306e\u7d42\u4e86\u6642\u306b\u81ea\u52d5\u7684\u306b\u6d88\u53bb\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u308c\u4ee5\u4e0a\u306e\u30a2\u30af\u30b7\u30e7\u30f3\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093
INFO_DESCRIPTION_TYPES_ONLY_338=\u5c5e\u6027\u540d\u3092\u53d6\u5f97\u3059\u308b\u3060\u3051\u3067\u3001\u305d\u306e\u5024\u306f\u53d6\u5f97\u3057\u307e\u305b\u3093
INFO_LDIFIMPORT_DESCRIPTION_SKIP_SCHEMA_VALIDATION_339=LDIF \u306e\u30a4\u30f3\u30dd\u30fc\u30c8\u6642\u306b\u30b9\u30ad\u30fc\u30de\u306e\u691c\u8a3c\u3092\u30b9\u30ad\u30c3\u30d7\u3057\u307e\u3059
-ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS_340=LDIF \u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u521d\u671f\u5316\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS_341=LDIF \u30a4\u30f3\u30dd\u30fc\u30c8\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u521d\u671f\u5316\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
INFO_DESCRIPTION_ASSERTION_FILTER_342=\u6307\u5b9a\u3055\u308c\u305f\u30d5\u30a3\u30eb\u30bf\u3067 LDAP \u8868\u660e\u5236\u5fa1\u3092\u4f7f\u7528\u3057\u307e\u3059
ERR_LDAP_ASSERTION_INVALID_FILTER_343=LDAP \u8868\u660e\u5236\u5fa1\u306b\u6307\u5b9a\u3055\u308c\u305f\u691c\u7d22\u30d5\u30a3\u30eb\u30bf\u304c\u7121\u52b9\u3067\u3057\u305f: %s
INFO_DESCRIPTION_PREREAD_ATTRS_346=LDAP ReadEntry \u8aad\u307f\u8fbc\u307f\u524d\u5236\u5fa1\u3092\u4f7f\u7528\u3057\u307e\u3059
@@ -317,7 +315,7 @@
INFO_ENCPW_DESCRIPTION_AUTHPW_369=\u30e6\u30fc\u30b6\u30fc\u30d1\u30b9\u30ef\u30fc\u30c9\u69cb\u6587\u3067\u306f\u306a\u304f\u3001\u8a8d\u8a3c\u30d1\u30b9\u30ef\u30fc\u30c9\u69cb\u6587\u3092\u4f7f\u7528\u3057\u307e\u3059
ERR_ENCPW_NO_SUCH_AUTH_SCHEME_371=\u8a8d\u8a3c\u30d1\u30b9\u30ef\u30fc\u30c9\u8a18\u61b6\u30b9\u30ad\u30fc\u30de "%s" \u304c\u3001\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u3067\u4f7f\u7528\u3059\u308b\u3088\u3046\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093
ERR_ENCPW_INVALID_ENCODED_AUTHPW_372=\u6307\u5b9a\u3055\u308c\u305f\u30d1\u30b9\u30ef\u30fc\u30c9\u306f\u3001\u6709\u52b9\u306a\u7b26\u53f7\u5316\u3055\u308c\u305f\u8a8d\u8a3c\u30d1\u30b9\u30ef\u30fc\u30c9\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PWPOLICY_373=\u30d1\u30b9\u30ef\u30fc\u30c9\u30dd\u30ea\u30b7\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u521d\u671f\u5316\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
+ERR_CANNOT_INITIALIZE_PWPOLICY_373=\u30d1\u30b9\u30ef\u30fc\u30c9\u30dd\u30ea\u30b7\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u521d\u671f\u5316\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
INFO_STOPDS_DESCRIPTION_HOST_374=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306e\u30db\u30b9\u30c8\u540d\u307e\u305f\u306f IP \u30a2\u30c9\u30ec\u30b9
INFO_STOPDS_DESCRIPTION_PORT_375=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306e\u7ba1\u7406\u30dd\u30fc\u30c8\u756a\u53f7
INFO_STOPDS_DESCRIPTION_BINDDN_378=\u30b5\u30fc\u30d0\u30fc\u3078\u306e\u30d0\u30a4\u30f3\u30c9\u306b\u4f7f\u7528\u3059\u308b DN
@@ -1105,7 +1103,7 @@
ERR_BACKUPDB_CANNOT_BACKUP_IN_DIRECTORY_1650=\u30bf\u30fc\u30b2\u30c3\u30c8\u30d0\u30c3\u30af\u30a8\u30f3\u30c9 %s \u3092\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30c7\u30a3\u30ec\u30af\u30c8\u30ea %s \u306b\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u3067\u304d\u307e\u305b\u3093: \u3053\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306f\u3059\u3067\u306b\u30d0\u30c3\u30af\u30a8\u30f3\u30c9 %s \u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u5834\u6240\u306b\u306a\u3063\u3066\u3044\u307e\u3059
INFO_RECURRING_TASK_PLACEHOLDER_1651={schedulePattern}
-ERR_ENCPW_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=\u30b5\u30fc\u30d0\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u521d\u671f\u5316\u3057\u3066\u7b26\u53f7\u5316\u30d1\u30b9\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u3092\u5b9f\u884c\u3057\u3066\u3044\u308b\u3068\u304d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f: %s
+ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=\u30fc\u30d0\u30fc\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u521d\u671f\u5316\u3057\u3066\u30c4\u30fc\u30eb\u3092\u5b9f\u884c\u3057\u3066\u3044\u308b\u3068\u304d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\uff1a %s
ERR_LDIFIMPORT_COUNT_REJECTS_REQUIRES_OFFLINE_1653=%s \u5f15\u6570\u306f\u3001\u30aa\u30f3\u30e9\u30a4\u30f3\u306e\u30a4\u30f3\u30dd\u30fc\u30c8\u3067\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093
INFO_DESCRIPTION_RECURRING_TASK_1654=\u30bf\u30b9\u30af\u304c\u518d\u5e30\u4e2d\u3067\u3001crontab(5) \u4e92\u63db\u306e\u6642\u523b/\u65e5\u4ed8\u30d1\u30bf\u30fc\u30f3\u3067\u8868\u3055\u308c\u305f\u5024\u5f15\u6570\u306b\u5f93\u3063\u3066\u30b9\u30b1\u30b8\u30e5\u30fc\u30ea\u30f3\u30b0\u3055\u308c\u308b\u3053\u3068\u3092\u793a\u3057\u307e\u3059
INFO_TASK_TOOL_RECURRING_TASK_SCHEDULED_1655=\u518d\u5e30\u4e2d\u306e %s \u30bf\u30b9\u30af %s \u304c\u6b63\u5e38\u306b\u30b9\u30b1\u30b8\u30e5\u30fc\u30ea\u30f3\u30b0\u3055\u308c\u307e\u3057\u305f
diff --git a/opendj-server-legacy/src/messages/org/opends/messages/tool_ko.properties b/opendj-server-legacy/src/messages/org/opends/messages/tool_ko.properties
index 67a2a80..e0184c0 100644
--- a/opendj-server-legacy/src/messages/org/opends/messages/tool_ko.properties
+++ b/opendj-server-legacy/src/messages/org/opends/messages/tool_ko.properties
@@ -59,7 +59,7 @@
ERR_CANNOT_LOAD_CONFIG_21=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84 \uad6c\uc131\uc744 \ub85c\ub4dc\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s
ERR_CANNOT_LOAD_SCHEMA_22=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\ub97c \ub85c\ub4dc\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s
ERR_CANNOT_INITIALIZE_CORE_CONFIG_23=\ucf54\uc5b4 \ub514\ub809\ud1a0\ub9ac \uc11c\ubc84 \uad6c\uc131\uc744 \ucd08\uae30\ud654\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s
-ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84 \ube44\ubc00\ubc88\ud638 \uc800\uc7a5\uc18c \uc2a4\ud0a4\ub9c8\ub97c \ucd08\uae30\ud654\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s
+ERR_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84 \ube44\ubc00\ubc88\ud638 \uc800\uc7a5\uc18c \uc2a4\ud0a4\ub9c8\ub97c \ucd08\uae30\ud654\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s
ERR_ENCPW_NO_STORAGE_SCHEMES_25=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0\uc11c \uc0ac\uc6a9\ud560 \ube44\ubc00\ubc88\ud638 \uc800\uc7a5\uc18c \uc2a4\ud0a4\ub9c8\ub97c \uad6c\uc131\ud558\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4.
ERR_ENCPW_NO_SUCH_SCHEME_26=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0\uc11c \uc0ac\uc6a9\ud560 \ube44\ubc00\ubc88\ud638 \uc800\uc7a5\uc18c \uc2a4\ud0a4\ub9c8 \"%s\"\uc744(\ub97c) \uad6c\uc131\ud558\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4.
INFO_ENCPW_PASSWORDS_MATCH_27=\uc81c\uacf5\ub41c \uc77c\ubc18 \ud14d\uc2a4\ud2b8\uc640 \uc778\ucf54\ub529\ub41c \ube44\ubc00\ubc88\ud638\uac00 \uc77c\uce58\ud569\ub2c8\ub2e4.
@@ -287,8 +287,6 @@
WARN_VERIFYINDEX_CANNOT_UNLOCK_BACKEND_337=\ubc31\uc5d4\ub4dc %s\uc5d0 \ub300\ud55c \uacf5\uc720 \uc7a0\uae08\uc744 \ud574\uc81c\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s. \uc774 \uc7a0\uae08\uc740 \ud655\uc778 \ud504\ub85c\uc138\uc2a4\uac00 \uc885\ub8cc\ub418\uba74 \uc790\ub3d9\uc73c\ub85c \uc815\ub9ac\ub418\ubbc0\ub85c \ubcc4\ub3c4\uc758 \uc791\uc5c5\uc774 \ud544\uc694\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
INFO_DESCRIPTION_TYPES_ONLY_338=\uac12\uc740 \uc81c\uc678\ud558\uace0 \uc18d\uc131 \uc774\ub984\ub9cc \uac80\uc0c9\ud569\ub2c8\ub2e4.
INFO_LDIFIMPORT_DESCRIPTION_SKIP_SCHEMA_VALIDATION_339=LDIF \uac00\uc838\uc624\uae30\ub97c \uc218\ud589\ud558\ub294 \ub3d9\uc548 \uc2a4\ud0a4\ub9c8 \ud655\uc778\uc744 \uac74\ub108\ub701\ub2c8\ub2e4.
-ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS_340=LDIF \ub0b4\ubcf4\ub0b4\uae30 \ud50c\ub7ec\uadf8\uc778\uc744 \ucd08\uae30\ud654\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS_341=LDIF \uac00\uc838\uc624\uae30 \ud50c\ub7ec\uadf8\uc778\uc744 \ucd08\uae30\ud654\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s
INFO_DESCRIPTION_ASSERTION_FILTER_342=\uc81c\uacf5\ub41c \ud544\ud130\ub97c \uac00\uc9c4 LDAP \uba85\uc81c \uc81c\uc5b4\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4.
ERR_LDAP_ASSERTION_INVALID_FILTER_343=LDAP \uba85\uc81c \uc81c\uc5b4\uc5d0 \ub300\ud574 \uc81c\uacf5\ub41c \uac80\uc0c9 \ud544\ud130\uac00 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4: %s
INFO_DESCRIPTION_PREREAD_ATTRS_346=LDAP ReadEntry pre-read \uc81c\uc5b4\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4.
@@ -315,7 +313,7 @@
INFO_ENCPW_DESCRIPTION_AUTHPW_369=\uc0ac\uc6a9\uc790 \ube44\ubc00\ubc88\ud638 \uad6c\ubb38 \ub300\uc2e0 \uc778\uc99d \ube44\ubc00\ubc88\ud638 \uad6c\ubb38\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4.
ERR_ENCPW_NO_SUCH_AUTH_SCHEME_371=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc778\uc99d \ube44\ubc00\ubc88\ud638 \uc800\uc7a5\uc18c \uc2a4\ud0a4\ub9c8 \"%s\"\uc744(\ub97c)\uad6c\uc131\ud558\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4.
ERR_ENCPW_INVALID_ENCODED_AUTHPW_372=\uc81c\uacf5\ub41c \ube44\ubc00\ubc88\ud638\ub294 \uc720\ud6a8\ud55c \uc778\ucf54\ub529\ub41c \uc778\uc99d \ube44\ubc00\ubc88\ud638 \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PWPOLICY_373=\ube44\ubc00\ubc88\ud638 \uc815\ucc45 \uad6c\uc131\uc694\uc18c\ub97c \ucd08\uae30\ud654\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s
+ERR_CANNOT_INITIALIZE_PWPOLICY_373=\ube44\ubc00\ubc88\ud638 \uc815\ucc45 \uad6c\uc131\uc694\uc18c\ub97c \ucd08\uae30\ud654\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s
INFO_STOPDS_DESCRIPTION_HOST_374=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84 \ud638\uc2a4\ud2b8 \uc774\ub984 \ub610\ub294 IP \uc8fc\uc18c
INFO_STOPDS_DESCRIPTION_PORT_375=Directory server administration port number
INFO_STOPDS_DESCRIPTION_BINDDN_378=\uc11c\ubc84\uc5d0 \ubc14\uc778\ub4dc\ud558\ub294 \ub370 \uc0ac\uc6a9\ud560 DN
diff --git a/opendj-server-legacy/src/messages/org/opends/messages/tool_zh_CN.properties b/opendj-server-legacy/src/messages/org/opends/messages/tool_zh_CN.properties
index e7f1cfd..f8a05db 100644
--- a/opendj-server-legacy/src/messages/org/opends/messages/tool_zh_CN.properties
+++ b/opendj-server-legacy/src/messages/org/opends/messages/tool_zh_CN.properties
@@ -59,7 +59,7 @@
ERR_CANNOT_LOAD_CONFIG_21=\u5728\u5c1d\u8bd5\u88c5\u5165 Directory Server \u914d\u7f6e\u65f6\u51fa\u73b0\u9519\u8bef: %s
ERR_CANNOT_LOAD_SCHEMA_22=\u5728\u5c1d\u8bd5\u88c5\u5165 Directory Server \u6a21\u5f0f\u65f6\u51fa\u73b0\u9519\u8bef: %s
ERR_CANNOT_INITIALIZE_CORE_CONFIG_23=\u5728\u5c1d\u8bd5\u521d\u59cb\u5316\u6838\u5fc3 Directory Server \u914d\u7f6e\u65f6\u51fa\u73b0\u9519\u8bef: %s
-ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=\u5728\u5c1d\u8bd5\u521d\u59cb\u5316 Directory Server \u5bc6\u7801\u5b58\u50a8\u6a21\u5f0f\u65f6\u51fa\u73b0\u9519\u8bef: %s
+ERR_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=\u5728\u5c1d\u8bd5\u521d\u59cb\u5316 Directory Server \u5bc6\u7801\u5b58\u50a8\u6a21\u5f0f\u65f6\u51fa\u73b0\u9519\u8bef: %s
ERR_ENCPW_NO_STORAGE_SCHEMES_25=\u5c1a\u672a\u914d\u7f6e\u5728 Directory Server \u4e2d\u4f7f\u7528\u7684\u5bc6\u7801\u5b58\u50a8\u6a21\u5f0f
ERR_ENCPW_NO_SUCH_SCHEME_26=\u5bc6\u7801\u5b58\u50a8\u6a21\u5f0f "%s" \u5e76\u975e\u914d\u7f6e\u4e3a\u5728 Directory Server \u4e2d\u4f7f\u7528
INFO_ENCPW_PASSWORDS_MATCH_27=\u63d0\u4f9b\u7684\u660e\u6587\u5bc6\u7801\u548c\u5df2\u7f16\u7801\u5bc6\u7801\u76f8\u5339\u914d
@@ -289,8 +289,6 @@
WARN_VERIFYINDEX_CANNOT_UNLOCK_BACKEND_337=\u5728\u5c1d\u8bd5\u91ca\u653e\u540e\u7aef %s \u7684\u5171\u4eab\u9501\u5b9a\u65f6\u51fa\u73b0\u9519\u8bef: %s\u3002\u6b64\u9501\u5b9a\u5e94\u5728\u68c0\u9a8c\u8fdb\u7a0b\u9000\u51fa\u65f6\u81ea\u52a8\u6e05\u9664\uff0c\u56e0\u6b64\u5e94\u65e0\u9700\u8fdb\u4e00\u6b65\u64cd\u4f5c
INFO_DESCRIPTION_TYPES_ONLY_338=\u4ec5\u68c0\u7d22\u5c5e\u6027\u540d\u79f0\uff0c\u800c\u4e0d\u68c0\u7d22\u5c5e\u6027\u503c
INFO_LDIFIMPORT_DESCRIPTION_SKIP_SCHEMA_VALIDATION_339=\u5728 LDIF \u5bfc\u5165\u671f\u95f4\u8df3\u8fc7\u6a21\u5f0f\u9a8c\u8bc1
-ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS_340=\u5728\u5c1d\u8bd5\u521d\u59cb\u5316 LDIF \u5bfc\u51fa\u63d2\u4ef6\u65f6\u51fa\u73b0\u9519\u8bef: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS_341=\u5728\u5c1d\u8bd5\u521d\u59cb\u5316 LDIF \u5bfc\u5165\u63d2\u4ef6\u65f6\u51fa\u73b0\u9519\u8bef: %s
INFO_DESCRIPTION_ASSERTION_FILTER_342=\u5c06 LDAP \u58f0\u660e\u63a7\u5236\u7528\u4e8e\u63d0\u4f9b\u7684\u8fc7\u6ee4\u5668
ERR_LDAP_ASSERTION_INVALID_FILTER_343=\u4e3a LDAP \u58f0\u660e\u63a7\u5236\u63d0\u4f9b\u7684\u641c\u7d22\u8fc7\u6ee4\u5668\u65e0\u6548: %s
INFO_DESCRIPTION_PREREAD_ATTRS_346=\u4f7f\u7528 LDAP ReadEntry \u9884\u8bfb\u53d6\u63a7\u5236
@@ -317,7 +315,7 @@
INFO_ENCPW_DESCRIPTION_AUTHPW_369=\u4f7f\u7528\u9a8c\u8bc1\u5bc6\u7801\u8bed\u6cd5\uff0c\u800c\u4e0d\u662f\u7528\u6237\u5bc6\u7801\u8bed\u6cd5
ERR_ENCPW_NO_SUCH_AUTH_SCHEME_371=\u9a8c\u8bc1\u5bc6\u7801\u5b58\u50a8\u6a21\u5f0f "%s" \u5e76\u975e\u914d\u7f6e\u4e3a\u5728 Directory Server \u4e2d\u4f7f\u7528
ERR_ENCPW_INVALID_ENCODED_AUTHPW_372=\u63d0\u4f9b\u7684\u5bc6\u7801\u4e0d\u662f\u6709\u6548\u7f16\u7801\u7684\u9a8c\u8bc1\u5bc6\u7801\u503c: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PWPOLICY_373=\u5728\u5c1d\u8bd5\u521d\u59cb\u5316\u5bc6\u7801\u7b56\u7565\u7ec4\u4ef6\u65f6\u51fa\u73b0\u9519\u8bef: %s
+ERR_CANNOT_INITIALIZE_PWPOLICY_373=\u5728\u5c1d\u8bd5\u521d\u59cb\u5316\u5bc6\u7801\u7b56\u7565\u7ec4\u4ef6\u65f6\u51fa\u73b0\u9519\u8bef: %s
INFO_STOPDS_DESCRIPTION_HOST_374=\u76ee\u5f55\u670d\u52a1\u5668\u4e3b\u673a\u540d\u6216 IP \u5730\u5740
INFO_STOPDS_DESCRIPTION_PORT_375=\u76ee\u5f55\u670d\u52a1\u5668\u7ba1\u7406\u7aef\u53e3\u53f7
INFO_STOPDS_DESCRIPTION_BINDDN_378=\u7528\u4e8e\u7ed1\u5b9a\u5230\u670d\u52a1\u5668\u7684 DN
@@ -1105,7 +1103,7 @@
ERR_BACKUPDB_CANNOT_BACKUP_IN_DIRECTORY_1650=\u76ee\u6807\u540e\u7aef %s \u65e0\u6cd5\u5907\u4efd\u5230\u5907\u4efd\u76ee\u5f55 %s\uff1a\u6b64\u76ee\u5f55\u5df2\u7ecf\u662f\u540e\u7aef %s \u7684\u5907\u4efd\u4f4d\u7f6e
INFO_RECURRING_TASK_PLACEHOLDER_1651={schedulePattern}
-ERR_ENCPW_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=\u5728\u5c1d\u8bd5\u521d\u59cb\u5316\u670d\u52a1\u5668\u7ec4\u4ef6\u4ee5\u8fd0\u884c\u7f16\u7801\u5bc6\u7801\u5de5\u5177\u65f6\u51fa\u73b0\u9519\u8bef: %s
+ERR_CANNOT_INITIALIZE_SERVER_COMPONENTS_1652=\u5728\u5c1d\u8bd5\u521d\u59cb\u5316\u670d\u52a1\u5668\u7ec4\u4ef6\u4ee5\u8fd0\u884c\u5de5\u5177\u65f6\u51fa\u73b0\u9519\u8bef: %s
ERR_LDIFIMPORT_COUNT_REJECTS_REQUIRES_OFFLINE_1653=\u8054\u673a\u5bfc\u5165\u4e0d\u652f\u6301 %s \u53c2\u6570
INFO_DESCRIPTION_RECURRING_TASK_1654=\u6307\u51fa\u4efb\u52a1\u662f\u590d\u53d1\u6027\u7684\u5e76\u5c06\u6839\u636e\u4ee5 crontab(5) \u53ef\u517c\u5bb9\u7684\u65f6\u95f4/\u65e5\u671f\u6a21\u5f0f\u8868\u793a\u7684\u503c\u53c2\u6570\u8fdb\u884c\u9884\u5b9a
INFO_TASK_TOOL_RECURRING_TASK_SCHEDULED_1655=\u5df2\u6210\u529f\u9884\u5b9a\u590d\u53d1\u6027 %s \u4efb\u52a1 %s
diff --git a/opendj-server-legacy/src/messages/org/opends/messages/tool_zh_TW.properties b/opendj-server-legacy/src/messages/org/opends/messages/tool_zh_TW.properties
index 4b7e29a..7561afc 100644
--- a/opendj-server-legacy/src/messages/org/opends/messages/tool_zh_TW.properties
+++ b/opendj-server-legacy/src/messages/org/opends/messages/tool_zh_TW.properties
@@ -59,7 +59,7 @@
ERR_CANNOT_LOAD_CONFIG_21=\u5617\u8a66\u8f09\u5165\u76ee\u9304\u4f3a\u670d\u5668\u914d\u7f6e\u6642\u767c\u751f\u932f\u8aa4: %s
ERR_CANNOT_LOAD_SCHEMA_22=\u5617\u8a66\u8f09\u5165\u76ee\u9304\u4f3a\u670d\u5668\u6a21\u5f0f\u6642\u767c\u751f\u932f\u8aa4: %s
ERR_CANNOT_INITIALIZE_CORE_CONFIG_23=\u5617\u8a66\u521d\u59cb\u5316\u6838\u5fc3\u76ee\u9304\u4f3a\u670d\u5668\u914d\u7f6e\u6642\u767c\u751f\u932f\u8aa4: %s
-ERR_ENCPW_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=\u5617\u8a66\u521d\u59cb\u5316\u76ee\u9304\u4f3a\u670d\u5668\u7684\u5bc6\u78bc\u5132\u5b58\u6a5f\u5236\u6642\u767c\u751f\u932f\u8aa4: %s
+ERR_CANNOT_INITIALIZE_STORAGE_SCHEMES_24=\u5617\u8a66\u521d\u59cb\u5316\u76ee\u9304\u4f3a\u670d\u5668\u7684\u5bc6\u78bc\u5132\u5b58\u6a5f\u5236\u6642\u767c\u751f\u932f\u8aa4: %s
ERR_ENCPW_NO_STORAGE_SCHEMES_25=\u5c1a\u672a\u914d\u7f6e\u5bc6\u78bc\u5132\u5b58\u6a5f\u5236\uff0c\u4ee5\u4fbf\u7528\u65bc\u76ee\u9304\u4f3a\u670d\u5668\u4e2d
ERR_ENCPW_NO_SUCH_SCHEME_26=\u672a\u914d\u7f6e\u5bc6\u78bc\u5132\u5b58\u6a5f\u5236\u300c%s\u300d\uff0c\u4ee5\u4fbf\u7528\u65bc\u76ee\u9304\u4f3a\u670d\u5668\u4e2d
INFO_ENCPW_PASSWORDS_MATCH_27=\u63d0\u4f9b\u7684\u7d14\u6587\u5b57\u8207\u7de8\u78bc\u5bc6\u78bc\u76f8\u7b26
@@ -287,8 +287,6 @@
WARN_VERIFYINDEX_CANNOT_UNLOCK_BACKEND_337=\u5617\u8a66\u91cb\u653e\u5f8c\u7aef %s \u7684\u5171\u7528\u9396\u5b9a\u6642\u767c\u751f\u932f\u8aa4: %s\u3002\u6b64\u9396\u5b9a\u61c9\u6703\u5728\u9a57\u8b49\u7a0b\u5e8f\u7d50\u675f\u6642\u81ea\u52d5\u6e05\u9664\uff0c\u6240\u4ee5\u4e0d\u9700\u8981\u5176\u4ed6\u52d5\u4f5c
INFO_DESCRIPTION_TYPES_ONLY_338=\u53ea\u64f7\u53d6\u5c6c\u6027\u540d\u7a31\uff0c\u4f46\u4e0d\u6703\u64f7\u53d6\u5176\u503c
INFO_LDIFIMPORT_DESCRIPTION_SKIP_SCHEMA_VALIDATION_339=\u5728 LDIF \u532f\u5165\u671f\u9593\u7565\u904e\u6a21\u5f0f\u9a57\u8b49
-ERR_LDIFEXPORT_CANNOT_INITIALIZE_PLUGINS_340=\u5617\u8a66\u521d\u59cb\u5316 LDIF \u532f\u51fa\u5916\u639b\u7a0b\u5f0f\u6642\u767c\u751f\u932f\u8aa4: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PLUGINS_341=\u5617\u8a66\u521d\u59cb\u5316 LDIF \u532f\u5165\u5916\u639b\u7a0b\u5f0f\u6642\u767c\u751f\u932f\u8aa4: %s
INFO_DESCRIPTION_ASSERTION_FILTER_342=\u900f\u904e\u6240\u63d0\u4f9b\u7684\u7be9\u9078\u5668\u4f7f\u7528 LDAP \u6307\u5b9a\u63a7\u5236
ERR_LDAP_ASSERTION_INVALID_FILTER_343=\u70ba LDAP \u6307\u5b9a\u63a7\u5236\u63d0\u4f9b\u7684\u641c\u5c0b\u7be9\u9078\u5668\u7121\u6548: %s
INFO_DESCRIPTION_PREREAD_ATTRS_346=\u4f7f\u7528 LDAP ReadEntry \u8b80\u53d6\u524d\u63a7\u5236
@@ -315,7 +313,7 @@
INFO_ENCPW_DESCRIPTION_AUTHPW_369=\u4f7f\u7528\u8a8d\u8b49\u5bc6\u78bc\u8a9e\u6cd5\uff0c\u800c\u975e\u4f7f\u7528\u8005\u5bc6\u78bc\u8a9e\u6cd5
ERR_ENCPW_NO_SUCH_AUTH_SCHEME_371=\u672a\u914d\u7f6e\u8a8d\u8b49\u5bc6\u78bc\u5132\u5b58\u6a5f\u5236\u300c%s\u300d\uff0c\u4ee5\u4fbf\u7528\u65bc\u76ee\u9304\u4f3a\u670d\u5668\u4e2d
ERR_ENCPW_INVALID_ENCODED_AUTHPW_372=\u63d0\u4f9b\u7684\u5bc6\u78bc\u4e0d\u662f\u6709\u6548\u7684\u7de8\u78bc\u8a8d\u8b49\u5bc6\u78bc\u503c: %s
-ERR_LDIFIMPORT_CANNOT_INITIALIZE_PWPOLICY_373=\u5617\u8a66\u521d\u59cb\u5316\u5bc6\u78bc\u7b56\u7565\u5143\u4ef6\u6642\u767c\u751f\u932f\u8aa4: %s
+ERR_CANNOT_INITIALIZE_PWPOLICY_373=\u5617\u8a66\u521d\u59cb\u5316\u5bc6\u78bc\u7b56\u7565\u5143\u4ef6\u6642\u767c\u751f\u932f\u8aa4: %s
INFO_STOPDS_DESCRIPTION_HOST_374=\u76ee\u9304\u4f3a\u670d\u5668\u4e3b\u6a5f\u540d\u7a31\u6216 IP \u4f4d\u5740
INFO_STOPDS_DESCRIPTION_PORT_375=Directory server administration port number
INFO_STOPDS_DESCRIPTION_BINDDN_378=\u7528\u4ee5\u9023\u7d50\u81f3\u4f3a\u670d\u5668\u7684 DN
--
Gitblit v1.10.0