From 7008381ae6c2eb1fd67a1cc50b8e78dbc2fc78c6 Mon Sep 17 00:00:00 2001
From: jvergara <jvergara@localhost>
Date: Fri, 20 Jul 2007 17:11:56 +0000
Subject: [PATCH] Fix for issue 2006.

---
 opends/src/server/org/opends/server/tools/InstallDS.java |   33 +++++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+), 0 deletions(-)

diff --git a/opends/src/server/org/opends/server/tools/InstallDS.java b/opends/src/server/org/opends/server/tools/InstallDS.java
index fcfbf8c..679f741 100644
--- a/opends/src/server/org/opends/server/tools/InstallDS.java
+++ b/opends/src/server/org/opends/server/tools/InstallDS.java
@@ -32,7 +32,9 @@
 import java.io.File;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.HashSet;
 import java.util.LinkedList;
+import java.util.Set;
 
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.extensions.ConfigFileHandler;
@@ -334,6 +336,37 @@
       return 0;
     }
 
+    try
+    {
+      Set<Integer> ports = new HashSet<Integer>();
+      if (ldapPort.isPresent())
+      {
+        ports.add(ldapPort.getIntValue());
+      }
+      if (jmxPort.isPresent())
+      {
+        if (ports.contains(jmxPort.getIntValue()))
+        {
+          int    msgID   = MSGID_CONFIGDS_PORT_ALREADY_SPECIFIED;
+          String message = getMessage(msgID,
+              String.valueOf(jmxPort.getIntValue()));
+          System.err.println(wrapText(message, MAX_LINE_WIDTH));
+          System.err.println(argParser.getUsage());
+          return 1;
+        }
+        else
+        {
+          ports.add(jmxPort.getIntValue());
+        }
+      }
+    }
+    catch (ArgumentException ae)
+    {
+      int    msgID   = MSGID_CANNOT_INITIALIZE_ARGS;
+      String message = getMessage(msgID, ae.getMessage());
+      System.err.println(wrapText(message, MAX_LINE_WIDTH));
+      return 1;
+    }
 
     // Make sure that the user didn't provide conflicting arguments.
     if (addBaseEntry.isPresent())

--
Gitblit v1.10.0