in ldap/src/java/org/apache/fulcrum/security/ldap/LDAPUserManagerImpl.java [411:451]
public <T extends User> T getUser(String name) throws DataBackendException, UnknownEntityException
{
try
{
DirContext ctx = bindAsAdmin();
/*
* Define the search.
*/
String filter = "(" + this.ldapUsername + "=" + name + ")";
/*
* Create the default search controls.
*/
SearchControls ctls = new SearchControls();
NamingEnumeration<SearchResult> answer =
ctx.search(this.ldapBasesearch, filter, ctls);
if (answer.hasMore())
{
SearchResult sr = answer.next();
Attributes attribs = sr.getAttributes();
T ldapUser = getUserInstance();
setLDAPAttributes(ldapUser, attribs);
return ldapUser;
}
else
{
throw new UnknownEntityException("The given user "
+ name + " does not exist.");
}
}
catch (NamingException ex)
{
throw new DataBackendException(
"The LDAP server specified is unavailable", ex);
}
}