From 8368f9ae15d65cda433652abcddd2ddbf61024a0 Mon Sep 17 00:00:00 2001
From: Jean-Noël Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Tue, 02 Aug 2016 07:18: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/util/LDAPEntryReader.java | 34 ++++++++++++----------------------
1 files changed, 12 insertions(+), 22 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/LDAPEntryReader.java b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/LDAPEntryReader.java
index 1c27e7d..06e8e81 100644
--- a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/LDAPEntryReader.java
+++ b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/LDAPEntryReader.java
@@ -17,13 +17,15 @@
package org.opends.guitools.controlpanel.util;
+import static org.forgerock.opendj.ldap.SearchScope.*;
+
import java.util.HashSet;
import java.util.Set;
-import javax.naming.NamingEnumeration;
-import javax.naming.directory.SearchControls;
-import javax.naming.directory.SearchResult;
-
+import org.forgerock.opendj.ldap.requests.Requests;
+import org.forgerock.opendj.ldap.requests.SearchRequest;
+import org.forgerock.opendj.ldap.responses.SearchResultEntry;
+import org.forgerock.opendj.ldif.ConnectionEntryReader;
import org.opends.admin.ads.util.ConnectionWrapper;
import org.opends.guitools.controlpanel.datamodel.CustomSearchResult;
import org.opends.guitools.controlpanel.event.EntryReadErrorEvent;
@@ -59,22 +61,14 @@
public CustomSearchResult processBackgroundTask() throws Throwable
{
isOver = false;
- NamingEnumeration<SearchResult> en = null;
- try
+ final String filter = "(|(objectclass=*)(objectclass=ldapsubentry))";
+ SearchRequest request = Requests.newSearchRequest(dn, BASE_OBJECT, filter, "*", "+");
+ try (ConnectionEntryReader entryReader = conn.getConnection().search(request))
{
- SearchControls controls = new SearchControls();
-
- String[] attrs = {"*", "+"};
- controls.setReturningAttributes(attrs);
- controls.setSearchScope(SearchControls.OBJECT_SCOPE);
- final String filter = "(|(objectclass=*)(objectclass=ldapsubentry))";
-
- en = conn.getLdapContext().search(Utilities.getJNDIName(dn), filter, controls);
-
- SearchResult sr = null;
- while (en.hasMore())
+ SearchResultEntry sr = null;
+ while (entryReader.hasNext())
{
- sr = en.next();
+ sr = entryReader.readEntry();
}
return new CustomSearchResult(sr, dn);
@@ -85,10 +79,6 @@
{
isOver = true;
}
- if (en != null)
- {
- en.close();
- }
}
}
--
Gitblit v1.10.0