From c89f3bf8b7afbdc7cd45a1c8dc6c1d132931dacd Mon Sep 17 00:00:00 2001
From: jvergara <jvergara@localhost>
Date: Tue, 13 Nov 2007 17:06:35 +0000
Subject: [PATCH] Fix for issue 2582.

---
 opends/src/quicksetup/org/opends/quicksetup/installer/SetupLauncher.java |   73 ++++++++++++++++++++++--------------
 1 files changed, 45 insertions(+), 28 deletions(-)

diff --git a/opends/src/quicksetup/org/opends/quicksetup/installer/SetupLauncher.java b/opends/src/quicksetup/org/opends/quicksetup/installer/SetupLauncher.java
index 5dff196..a491ba3 100644
--- a/opends/src/quicksetup/org/opends/quicksetup/installer/SetupLauncher.java
+++ b/opends/src/quicksetup/org/opends/quicksetup/installer/SetupLauncher.java
@@ -76,6 +76,7 @@
       QuickSetupLog.initLogFileHandler(
               File.createTempFile(LOG_FILE_PREFIX, LOG_FILE_SUFFIX),
               "org.opends.quicksetup.installer");
+      QuickSetupLog.disableConsoleLogging();
 
     } catch (Throwable t) {
       System.err.println("Unable to initialize log");
@@ -124,40 +125,49 @@
    * {@inheritDoc}
    */
   public void launch() {
-    if (shouldPrintVersion())
+    //  Validate user provided data
+    try
     {
-      if (!argParser.usageOrVersionDisplayed())
+      argParser.parseArguments(args);
+
+      if (argParser.isVersionArgumentPresent())
       {
-        printVersion();
+        System.exit(ReturnCode.PRINT_VERSION.getReturnCode());
       }
-      System.exit(ReturnCode.PRINT_VERSION.getReturnCode());
-    }
-    else if (shouldPrintUsage()) {
-      if (!argParser.usageOrVersionDisplayed())
+      else if (argParser.isUsageArgumentPresent())
       {
-        printUsage(false);
+        System.exit(ReturnCode.SUCCESSFUL.getReturnCode());
       }
-      System.exit(ReturnCode.SUCCESSFUL.getReturnCode());
-    }
-    else if (isCli())
-    {
-      System.exit(InstallDS.mainCLI(args));
-    }
-    else {
-      willLaunchGui();
-      int exitCode = launchGui(args);
-      if (exitCode != 0) {
-        File logFile = QuickSetupLog.getLogFile();
-        if (logFile != null)
-        {
-          guiLaunchFailed(logFile.toString());
-        }
-        else
-        {
-          guiLaunchFailed(null);
-        }
+      else if (isCli())
+      {
         System.exit(InstallDS.mainCLI(args));
       }
+      else
+      {
+        willLaunchGui();
+        int exitCode = launchGui(args);
+        if (exitCode != 0) {
+          File logFile = QuickSetupLog.getLogFile();
+          if (logFile != null)
+          {
+            guiLaunchFailed(logFile.toString());
+          }
+          else
+          {
+            guiLaunchFailed(null);
+          }
+          System.exit(InstallDS.mainCLI(args));
+        }
+      }
+    }
+    catch (ArgumentException ae)
+    {
+      Message message = ERR_ERROR_PARSING_ARGS.get(ae.getMessage());
+      System.err.println(message);
+      System.err.println();
+      System.err.println(argParser.getUsage());
+
+      System.exit(ReturnCode.USER_DATA_ERROR.getReturnCode());
     }
   }
 
@@ -205,4 +215,11 @@
   protected CliApplication createCliApplication() {
     return null;
   }
-}
\ No newline at end of file
+
+  /**
+   * {@inheritDoc}
+   */
+  protected boolean isCli() {
+    return argParser.isCli();
+  }
+}

--
Gitblit v1.10.0