From 67405dde9ba213331dab1fc46cb18c485070fd5b Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Fri, 05 Jun 2009 09:04:50 +0000
Subject: [PATCH] svn merge -r5333:5417 https://opends.dev.java.net/svn/opends/branches/b2.0

---
 opends/src/server/org/opends/server/tools/dsconfig/LDAPManagementContextFactory.java |   25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)

diff --git a/opends/src/server/org/opends/server/tools/dsconfig/LDAPManagementContextFactory.java b/opends/src/server/org/opends/server/tools/dsconfig/LDAPManagementContextFactory.java
index 64bed3d..d4be8b2 100644
--- a/opends/src/server/org/opends/server/tools/dsconfig/LDAPManagementContextFactory.java
+++ b/opends/src/server/org/opends/server/tools/dsconfig/LDAPManagementContextFactory.java
@@ -59,6 +59,7 @@
 import java.util.LinkedHashSet;
 import javax.net.ssl.SSLException;
 import javax.net.ssl.SSLHandshakeException;
+import org.opends.server.tools.ToolConstants;
 
 
 /**
@@ -79,6 +80,9 @@
   // This CLI is always using the administration connector with SSL
   private boolean alwaysSSL = false;
 
+  // Raw arguments
+  private String[] rawArgs = null;
+
   /**
    * Creates a new LDAP management context factory.
    *
@@ -323,7 +327,13 @@
     return context;
   }
 
+  /**
+   * {@inheritDoc}
+   */
+  public void setRawArguments(String[] args) {
+    this.rawArgs = args;
 
+  }
 
   /**
    * {@inheritDoc}
@@ -343,7 +353,20 @@
 
     try
     {
-      secureArgsList.initArgumentsWithConfiguration();
+      if (rawArgs != null) {
+        for (String rawArg : rawArgs) {
+          if (rawArg.length() < 2) {
+            // This is not a help command
+            continue;
+          }
+          if (rawArg.contains(ToolConstants.OPTION_LONG_HELP) ||
+            (rawArg.charAt(1) == ToolConstants.OPTION_SHORT_HELP) || (rawArg.
+            charAt(1) == '?')) {
+            // used for usage help default values only
+            secureArgsList.initArgumentsWithConfiguration();
+          }
+        }
+      }
     }
     catch (ConfigException ce)
     {

--
Gitblit v1.10.0