*/
@SuppressWarnings("unchecked")
@Override
public NamingEnumeration<SearchResult> search(final String name, final String filterExpr,
final Object[] filterArgs, final SearchControls cons) throws NamingException {
return (NamingEnumeration<SearchResult>) new LoggingRetryHandler(
DEFAULT_EXCEPTION_CLASSES, this, getSchedule(), getMaxRetries(), getLogger()) {
@Override
public Object operation() throws NamingException {
return ((DirContext) getDelegate()).search(name, filterExpr, filterArgs, cons);