From f3f9f37cd05c81867e2852746b169132d8f1b598 Mon Sep 17 00:00:00 2001
From: Jean-Noël Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Fri, 01 Jul 2016 14:30:12 +0000
Subject: [PATCH] Partial OPENDJ-2625 Convert all code that uses JNDI to use the SDK instead
---
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/task/DeleteEntryTask.java | 33 ++++++++++++++++-----------------
1 files changed, 16 insertions(+), 17 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/task/DeleteEntryTask.java b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/task/DeleteEntryTask.java
index 76dc89d..eb72da3 100644
--- a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/task/DeleteEntryTask.java
+++ b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/task/DeleteEntryTask.java
@@ -34,11 +34,13 @@
import javax.naming.directory.SearchResult;
import javax.naming.ldap.BasicControl;
import javax.naming.ldap.Control;
-import javax.naming.ldap.InitialLdapContext;
import javax.swing.SwingUtilities;
import javax.swing.tree.TreePath;
+import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.opendj.ldap.DN;
import org.opends.admin.ads.util.ConnectionUtils;
+import org.opends.admin.ads.util.ConnectionWrapper;
import org.opends.guitools.controlpanel.browser.BrowserController;
import org.opends.guitools.controlpanel.datamodel.BackendDescriptor;
import org.opends.guitools.controlpanel.datamodel.BaseDNDescriptor;
@@ -49,9 +51,7 @@
import org.opends.guitools.controlpanel.ui.nodes.BasicNode;
import org.opends.guitools.controlpanel.ui.nodes.BrowserNodeInfo;
import org.opends.guitools.controlpanel.util.Utilities;
-import org.forgerock.i18n.LocalizableMessage;
import org.opends.server.schema.SchemaConstants;
-import org.forgerock.opendj.ldap.DN;
import org.opends.server.types.DirectoryException;
import org.opends.server.util.ServerConstants;
@@ -195,16 +195,15 @@
}
if (!isDnDeleted)
{
- InitialLdapContext ctx =
- controller.findConnectionForDisplayedEntry(node);
+ ConnectionWrapper conn = controller.findConnectionForDisplayedEntry(node);
useAdminCtx = controller.isConfigurationNode(node);
if (node.hasSubOrdinates())
{
- deleteSubtreeWithControl(ctx, dn, path, toNotify);
+ deleteSubtreeWithControl(conn, dn, path, toNotify);
}
else
{
- deleteSubtreeRecursively(ctx, dn, path, toNotify);
+ deleteSubtreeRecursively(conn, dn, path, toNotify);
}
alreadyDeleted.add(dn);
}
@@ -282,7 +281,7 @@
}
}
- private void deleteSubtreeRecursively(InitialLdapContext ctx, DN dnToRemove,
+ private void deleteSubtreeRecursively(ConnectionWrapper conn, DN dnToRemove,
TreePath path, ArrayList<BrowserNodeInfo> toNotify)
throws NamingException, DirectoryException
{
@@ -324,7 +323,7 @@
ctls.setReturningAttributes(
new String[] { SchemaConstants.NO_ATTRIBUTES });
NamingEnumeration<SearchResult> entryDNs =
- ctx.search(Utilities.getJNDIName(dnToRemove.toString()), filter, ctls);
+ conn.getLdapContext().search(Utilities.getJNDIName(dnToRemove.toString()), filter, ctls);
DN entryDNFound = dnToRemove;
try
@@ -337,7 +336,7 @@
CustomSearchResult res =
new CustomSearchResult(sr, dnToRemove.toString());
entryDNFound = DN.valueOf(res.getDN());
- deleteSubtreeRecursively(ctx, entryDNFound, null, toNotify);
+ deleteSubtreeRecursively(conn, entryDNFound, null, toNotify);
}
}
}
@@ -352,7 +351,7 @@
try
{
- ctx.destroySubcontext(Utilities.getJNDIName(dnToRemove.toString()));
+ conn.getLdapContext().destroySubcontext(Utilities.getJNDIName(dnToRemove.toString()));
if (path != null)
{
toNotify.add(controller.getNodeInfoFromPath(path));
@@ -392,7 +391,7 @@
}
}
- private void deleteSubtreeWithControl(InitialLdapContext ctx, DN dn,
+ private void deleteSubtreeWithControl(ConnectionWrapper conn, DN dn,
TreePath path, ArrayList<BrowserNodeInfo> toNotify)
throws NamingException
{
@@ -419,22 +418,22 @@
// Use a copy of the dir context since we are using an specific
// control to delete the subtree and this can cause
// synchronization problems when the tree is refreshed.
- InitialLdapContext ctx1 = null;
+ ConnectionWrapper conn1 = null;
try
{
- ctx1 = ConnectionUtils.cloneInitialLdapContext(ctx,
+ conn1 = ConnectionUtils.cloneConnectionWrapper(conn,
getInfo().getConnectTimeout(),
getInfo().getTrustManager(), null);
Control[] ctls = {
new BasicControl(ServerConstants.OID_SUBTREE_DELETE_CONTROL)};
- ctx1.setRequestControls(ctls);
- ctx1.destroySubcontext(Utilities.getJNDIName(dn.toString()));
+ conn1.getLdapContext().setRequestControls(ctls);
+ conn1.getLdapContext().destroySubcontext(Utilities.getJNDIName(dn.toString()));
}
finally
{
try
{
- ctx1.close();
+ conn1.close();
}
catch (Throwable th)
{
--
Gitblit v1.10.0