*/
protected StringSet searchDNs(DirContext dirContext,
String baseDN,
String filter)
throws NamingException {
StringSet names = new StringSet(false,false,true);
NamingEnumeration<SearchResult> enSearch = null;
try {
baseDN = Val.chkStr(baseDN);
filter = Val.chkStr(filter);
if (filter.length() > 0) {
SearchControls controls = new SearchControls();
controls.setSearchScope(SearchControls.SUBTREE_SCOPE);
enSearch = dirContext.search(baseDN,filter,controls);
try {
while (enSearch.hasMore()) {
SearchResult result = (SearchResult)enSearch.next();
names.add(buildFullDN(result.getName(),baseDN));
}
} catch (PartialResultException pre) {
LogUtil.getLogger().finer(pre.toString());
} catch (LimitExceededException lee) {
LogUtil.getLogger().finer(lee.toString());