From 9bce07b9bff3d251fe7284f7096a6e828279a6c2 Mon Sep 17 00:00:00 2001
From: lutoff <lutoff@localhost>
Date: Thu, 17 Jan 2008 08:54:44 +0000
Subject: [PATCH] fix for issue #2836 (dsconfig: after failed 1st attempt, 2nd attempt to connect to server exits)
---
opends/src/server/org/opends/server/tools/dsconfig/ManagementContextFactory.java | 7 ++++++-
opends/src/server/org/opends/server/tools/dsconfig/LDAPManagementContextFactory.java | 13 ++++++++++++-
opends/src/server/org/opends/server/tools/dsconfig/InternalManagementContextFactory.java | 12 ++++++++++--
opends/src/server/org/opends/server/tools/dsconfig/DSConfig.java | 4 ++--
4 files changed, 30 insertions(+), 6 deletions(-)
diff --git a/opends/src/server/org/opends/server/tools/dsconfig/DSConfig.java b/opends/src/server/org/opends/server/tools/dsconfig/DSConfig.java
index b069817..66c4b47 100644
--- a/opends/src/server/org/opends/server/tools/dsconfig/DSConfig.java
+++ b/opends/src/server/org/opends/server/tools/dsconfig/DSConfig.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Portions Copyright 2007 Sun Microsystems, Inc.
+ * Portions Copyright 2007-2008 Sun Microsystems, Inc.
*/
package org.opends.server.tools.dsconfig;
@@ -742,7 +742,7 @@
try {
// Close the Management context ==> an LDAP UNBIND is sent
- factory.getManagementContext(this).close();
+ factory.close();
} catch (Exception e) {
// Nothing to report in this case
}
diff --git a/opends/src/server/org/opends/server/tools/dsconfig/InternalManagementContextFactory.java b/opends/src/server/org/opends/server/tools/dsconfig/InternalManagementContextFactory.java
index 64b9a82..f2598d0 100644
--- a/opends/src/server/org/opends/server/tools/dsconfig/InternalManagementContextFactory.java
+++ b/opends/src/server/org/opends/server/tools/dsconfig/InternalManagementContextFactory.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Portions Copyright 2007 Sun Microsystems, Inc.
+ * Portions Copyright 2007-2008 Sun Microsystems, Inc.
*/
package org.opends.server.tools.dsconfig;
@@ -59,7 +59,15 @@
this.context = context;
}
-
+ /**
+ * {@inheritDoc}
+ */
+ public void close()
+ {
+ // No implementation required.
+ // We let the user of this InternalManagementContextFactory close
+ // his/her context.
+ }
/**
* {@inheritDoc}
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 52b7250..26a7b74 100644
--- a/opends/src/server/org/opends/server/tools/dsconfig/LDAPManagementContextFactory.java
+++ b/opends/src/server/org/opends/server/tools/dsconfig/LDAPManagementContextFactory.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Portions Copyright 2007 Sun Microsystems, Inc.
+ * Portions Copyright 2007-2008 Sun Microsystems, Inc.
*/
package org.opends.server.tools.dsconfig;
@@ -94,6 +94,17 @@
}
/**
+ * {@inheritDoc}
+ */
+ public void close()
+ {
+ if (context != null)
+ {
+ context.close();
+ }
+ }
+
+ /**
* Gets the management context which sub-commands should use in
* order to manage the directory server. Implementations can use the
* application instance for retrieving passwords interactively.
diff --git a/opends/src/server/org/opends/server/tools/dsconfig/ManagementContextFactory.java b/opends/src/server/org/opends/server/tools/dsconfig/ManagementContextFactory.java
index c1c2669..eb6febe 100644
--- a/opends/src/server/org/opends/server/tools/dsconfig/ManagementContextFactory.java
+++ b/opends/src/server/org/opends/server/tools/dsconfig/ManagementContextFactory.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Portions Copyright 2007 Sun Microsystems, Inc.
+ * Portions Copyright 2007-2008 Sun Microsystems, Inc.
*/
package org.opends.server.tools.dsconfig;
@@ -64,6 +64,11 @@
throws ArgumentException, ClientException;
+ /**
+ * Closes this management context.
+ */
+ void close();
+
/**
* Initializes this management context factory using the provided
--
Gitblit v1.10.0