From fb9034a742bd1c3df4c471472a9d1eedd0a3e3da Mon Sep 17 00:00:00 2001
From: jcambon <jcambon@localhost>
Date: Fri, 16 Jan 2009 09:41:51 +0000
Subject: [PATCH] Fix for Issue #3717 : ConfigureDS CLI output and error stream cannot be changed.
---
opends/src/server/org/opends/server/tools/ConfigureDS.java | 106 +++++++++++++++++++++++++++++++----------------------
1 files changed, 62 insertions(+), 44 deletions(-)
diff --git a/opends/src/server/org/opends/server/tools/ConfigureDS.java b/opends/src/server/org/opends/server/tools/ConfigureDS.java
index a69a218..503d4ce 100644
--- a/opends/src/server/org/opends/server/tools/ConfigureDS.java
+++ b/opends/src/server/org/opends/server/tools/ConfigureDS.java
@@ -35,6 +35,8 @@
import java.util.LinkedList;
import java.util.Set;
import java.io.File;
+import java.io.OutputStream;
+import java.io.PrintStream;
import java.io.StringReader;
import javax.crypto.Cipher;
@@ -60,6 +62,7 @@
import org.opends.server.types.Entry;
import org.opends.server.types.InitializationException;
import org.opends.server.types.LDIFImportConfig;
+import org.opends.server.types.NullOutputStream;
import org.opends.server.util.LDIFReader;
import org.opends.server.util.SetupUtils;
import org.opends.server.util.args.ArgumentException;
@@ -159,7 +162,7 @@
*/
public static void main(String[] args)
{
- int exitCode = configMain(args);
+ int exitCode = configMain(args, System.out, System.err);
if (exitCode != 0)
{
System.exit(filterExitCode(exitCode));
@@ -174,11 +177,14 @@
*
* @param args The command-line arguments provided to this program.
*
+ * @param outStream Output stream.
+ * @param errStream Error stream.
* @return The exit code from the configuration processing. A nonzero value
* indicates that there was some kind of problem during the
* configuration processing.
*/
- public static int configMain(String[] args)
+ public static int configMain(String[] args,
+ OutputStream outStream, OutputStream errStream)
{
BooleanArgument showUsage;
BooleanArgument enableStartTLS;
@@ -197,7 +203,19 @@
StringArgument certNickName;
StringArgument keyManagerPath;
StringArgument serverRoot;
+ PrintStream out, err;
+ if (outStream != null) {
+ out = new PrintStream(outStream);
+ } else {
+ out = NullOutputStream.printStream();
+ }
+
+ if (errStream != null) {
+ err = new PrintStream(errStream);
+ } else {
+ err = NullOutputStream.printStream();
+ }
Message toolDescription = INFO_CONFIGDS_TOOL_DESCRIPTION.get();
ArgumentParser argParser = new ArgumentParser(CLASS_NAME, toolDescription,
false);
@@ -342,7 +360,7 @@
catch (ArgumentException ae)
{
Message message = ERR_CANNOT_INITIALIZE_ARGS.get(ae.getMessage());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -356,8 +374,8 @@
{
Message message = ERR_ERROR_PARSING_ARGS.get(ae.getMessage());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
- System.err.println(argParser.getUsage());
+ err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(argParser.getUsage());
return LDAPResultCode.CLIENT_SIDE_PARAM_ERROR;
}
@@ -375,8 +393,8 @@
jmxPort.isPresent() || rootDNString.isPresent()))
{
Message message = ERR_CONFIGDS_NO_CONFIG_CHANGES.get();
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
- System.err.println(argParser.getUsage());
+ err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(argParser.getUsage());
return 1;
}
@@ -393,8 +411,8 @@
{
Message message = ERR_CONFIGDS_PORT_ALREADY_SPECIFIED.get(
String.valueOf(adminConnectorPort.getIntValue()));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
- System.err.println(argParser.getUsage());
+ err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(argParser.getUsage());
return 1;
}
else
@@ -408,8 +426,8 @@
{
Message message = ERR_CONFIGDS_PORT_ALREADY_SPECIFIED.get(
String.valueOf(ldapsPort.getIntValue()));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
- System.err.println(argParser.getUsage());
+ err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(argParser.getUsage());
return 1;
}
else
@@ -423,8 +441,8 @@
{
Message message = ERR_CONFIGDS_PORT_ALREADY_SPECIFIED.get(
String.valueOf(jmxPort.getIntValue()));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
- System.err.println(argParser.getUsage());
+ err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(argParser.getUsage());
return 1;
}
else
@@ -436,7 +454,7 @@
catch (ArgumentException ae)
{
Message message = ERR_CANNOT_INITIALIZE_ARGS.get(ae.getMessage());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -464,7 +482,7 @@
Message message = ERR_CONFIGDS_CANNOT_INITIALIZE_JMX.get(
String.valueOf(configFile.getValue()),
e.getMessage());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -478,7 +496,7 @@
Message message = ERR_CONFIGDS_CANNOT_INITIALIZE_CONFIG.get(
String.valueOf(configFile.getValue()),
e.getMessage());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -491,7 +509,7 @@
Message message = ERR_CONFIGDS_CANNOT_INITIALIZE_SCHEMA.get(
String.valueOf(configFile.getValue()),
e.getMessage());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -506,7 +524,7 @@
Message message = ERR_CONFIGDS_CANNOT_ACQUIRE_SERVER_LOCK.get(
String.valueOf(serverLockFileName),
String.valueOf(failureReason));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -530,7 +548,7 @@
Message message = ERR_CONFIGDS_CANNOT_PARSE_BASE_DN.get(
String.valueOf(dnString),
de.getMessageObject());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -552,7 +570,7 @@
Message message = ERR_CONFIGDS_CANNOT_PARSE_ROOT_DN.get(
String.valueOf(rootDNString.getValue()),
de.getMessageObject());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -567,7 +585,7 @@
else
{
Message message = ERR_CONFIGDS_NO_ROOT_PW.get();
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -595,7 +613,7 @@
ERR_CONFIGDS_CANNOT_PARSE_KEYMANAGER_PROVIDER_DN.get(
keyManagerProviderDN.getValue(),
de.getMessageObject());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -630,7 +648,7 @@
Message message =
ERR_CONFIG_KEYMANAGER_CANNOT_CREATE_JCEKS_PROVIDER.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -644,7 +662,7 @@
{
Message message = ERR_CONFIG_KEYMANAGER_CANNOT_GET_BASE.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -665,7 +683,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_PARSE_TRUSTMANAGER_PROVIDER_DN.
get(trustManagerProviderDN.getValue(), de.getMessageObject());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -697,7 +715,7 @@
{
Message message = ERR_CONFIG_KEYMANAGER_CANNOT_GET_BASE.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -711,7 +729,7 @@
{
Message message = ERR_CONFIG_TRUSTMANAGER_CANNOT_GET_BASE.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -725,7 +743,7 @@
Message message = ERR_CONFIGDS_KEYMANAGER_PROVIDER_DN_REQUIRED.get(
keyManagerProviderDN.getLongIdentifier(),
keyManagerPath.getLongIdentifier());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -750,7 +768,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_UPDATE_BASE_DN.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -777,7 +795,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_UPDATE_LDAP_PORT.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -805,7 +823,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_UPDATE_ADMIN_CONNECTOR_PORT.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -837,7 +855,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_UPDATE_LDAPS_PORT.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -869,7 +887,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_UPDATE_JMX_PORT.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -894,7 +912,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_ENABLE_STARTTLS.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -920,7 +938,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_ENABLE_KEYMANAGER.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -960,7 +978,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_UPDATE_KEYMANAGER_REFERENCE.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
@@ -981,7 +999,7 @@
catch (Exception e)
{
String message = String.valueOf(e);
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -1006,7 +1024,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_ENABLE_TRUSTMANAGER.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -1048,7 +1066,7 @@
Message message =
ERR_CONFIGDS_CANNOT_UPDATE_TRUSTMANAGER_REFERENCE.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -1101,7 +1119,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_UPDATE_CERT_NICKNAME.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -1135,7 +1153,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_UPDATE_ROOT_USER.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -1187,7 +1205,7 @@
{
Message message = ERR_CONFIGDS_CANNOT_UPDATE_CRYPTO_MANAGER.get(
String.valueOf(e));
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
@@ -1200,13 +1218,13 @@
configHandler.writeUpdatedConfig();
Message message = INFO_CONFIGDS_WROTE_UPDATED_CONFIG.get();
- System.out.println(wrapText(message, MAX_LINE_WIDTH));
+ out.println(wrapText(message, MAX_LINE_WIDTH));
}
catch (DirectoryException de)
{
Message message = ERR_CONFIGDS_CANNOT_WRITE_UPDATED_CONFIG.get(
de.getMessageObject());
- System.err.println(wrapText(message, MAX_LINE_WIDTH));
+ err.println(wrapText(message, MAX_LINE_WIDTH));
return 1;
}
}
--
Gitblit v1.10.0