diff options
Diffstat (limited to 'src/connectors/src/data/io/ldap/LDAPFlatDataReader.java')
-rw-r--r-- | src/connectors/src/data/io/ldap/LDAPFlatDataReader.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/connectors/src/data/io/ldap/LDAPFlatDataReader.java b/src/connectors/src/data/io/ldap/LDAPFlatDataReader.java index 2cc79a8..dad75d1 100644 --- a/src/connectors/src/data/io/ldap/LDAPFlatDataReader.java +++ b/src/connectors/src/data/io/ldap/LDAPFlatDataReader.java @@ -54,11 +54,12 @@ public class LDAPFlatDataReader extends AbstractMVDataReader { private final String baseDN; private final String keyAttr; private final int lookAheadAmount; - private final SortedSet<String> keys; + private final SortedSet<String> keys; //FIXME : TreeSet is sexy but costly (memory). Use ArrayList<String> or String[] and Collections.sort() private transient Iterator<String> keysItCached; private transient Iterator<String> keysItConsumed; - private transient SortedMap<String, MVDataEntry> entries; + private transient SortedMap<String, MVDataEntry> entries; //TODO : memory ineffcient + // Could help ? http://trove4j.sourceforge.net/javadocs/gnu/trove/map/package-summary.html // Listener to feed LDAP search result in SortedMap without instantiating a big fat SearchResult private final SearchResultListener keysReqListener = new SearchResultListener() { @@ -95,6 +96,7 @@ public class LDAPFlatDataReader extends AbstractMVDataReader { this.keys = new TreeSet<String>(); SearchRequest keysReq = new SearchRequest(keysReqListener, baseDN, SearchScope.ONE, Filter.create("(objectClass=*)"), keyAttr); conn.search(keysReq); + } /** |