Skip to content

Commit 95da09c

Browse files
committed
Polish LdapTemplate Logging
Issue gh-345
1 parent 8adf061 commit 95da09c

File tree

1 file changed

+24
-41
lines changed

1 file changed

+24
-41
lines changed

core/src/main/java/org/springframework/ldap/core/LdapTemplate.java

Lines changed: 24 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -252,12 +252,15 @@ public void search(String base, String filter, int searchScope, boolean returnin
252252
@Override
253253
public void search(final Name base, final String filter, final SearchControls controls,
254254
NameClassPairCallbackHandler handler) {
255-
255+
SearchExecutor se = (ctx) -> {
256+
LOG.debug("Executing search with base [{}] and filter [{}]", base, filter);
257+
return ctx.search(base, filter, controls);
258+
};
256259
// Create a SearchExecutor to perform the search.
257260
if (handler instanceof ContextMapperCallbackHandler) {
258261
assureReturnObjFlagSet(controls);
259262
}
260-
search(searchExecutorWithLogging(base, filter, controls), handler);
263+
search(se, handler);
261264
}
262265

263266
/**
@@ -266,12 +269,15 @@ public void search(final Name base, final String filter, final SearchControls co
266269
@Override
267270
public void search(final String base, final String filter, final SearchControls controls,
268271
NameClassPairCallbackHandler handler) {
269-
272+
SearchExecutor se = (ctx) -> {
273+
LOG.debug("Executing search with base [{}] and filter [{}]", base, filter);
274+
return ctx.search(base, filter, controls);
275+
};
270276
// Create a SearchExecutor to perform the search.
271277
if (handler instanceof ContextMapperCallbackHandler) {
272278
assureReturnObjFlagSet(controls);
273279
}
274-
search(searchExecutorWithLogging(base, filter, controls), handler);
280+
search(se, handler);
275281
}
276282

277283
/**
@@ -280,12 +286,15 @@ public void search(final String base, final String filter, final SearchControls
280286
@Override
281287
public void search(final Name base, final String filter, final SearchControls controls,
282288
NameClassPairCallbackHandler handler, DirContextProcessor processor) {
283-
289+
SearchExecutor se = (ctx) -> {
290+
LOG.debug("Executing search with base [{}] and filter [{}]", base, filter);
291+
return ctx.search(base, filter, controls);
292+
};
284293
// Create a SearchExecutor to perform the search.
285294
if (handler instanceof ContextMapperCallbackHandler) {
286295
assureReturnObjFlagSet(controls);
287296
}
288-
search(searchExecutorWithLogging(base, filter, controls), handler, processor);
297+
search(se, handler, processor);
289298
}
290299

291300
/**
@@ -294,12 +303,15 @@ public void search(final Name base, final String filter, final SearchControls co
294303
@Override
295304
public void search(final String base, final String filter, final SearchControls controls,
296305
NameClassPairCallbackHandler handler, DirContextProcessor processor) {
297-
306+
SearchExecutor se = (ctx) -> {
307+
LOG.debug("Executing search with base [{}] and filter [{}]", base, filter);
308+
return ctx.search(base, filter, controls);
309+
};
298310
// Create a SearchExecutor to perform the search.
299311
if (handler instanceof ContextMapperCallbackHandler) {
300312
assureReturnObjFlagSet(controls);
301313
}
302-
search(searchExecutorWithLogging(base, filter, controls), handler, processor);
314+
search(se, handler, processor);
303315
}
304316

305317
/**
@@ -1552,7 +1564,10 @@ <T> Stream<T> searchForStream(LdapQuery query, Function<SearchResult, T> mapper)
15521564

15531565
assureReturnObjFlagSet(searchControls);
15541566

1555-
NamingEnumeration<SearchResult> results = unchecked(searchSupplier(ctx, base, encodedFilter, searchControls));
1567+
NamingEnumeration<SearchResult> results = unchecked(() -> {
1568+
LOG.debug("Executing search with base [{}] and filter [{}]", base, filter);
1569+
return ctx.search(base, encodedFilter, searchControls);
1570+
});
15561571
if (results == null) {
15571572
return Stream.empty();
15581573
}
@@ -1781,38 +1796,6 @@ public <T> Stream<T> findForStream(LdapQuery query, Class<T> clazz) {
17811796
return searchForStream(builder.filter(includeClass), contextMapper);
17821797
}
17831798

1784-
private SearchExecutor searchExecutorWithLogging(final Name base, final String filter,
1785-
final SearchControls controls) {
1786-
return ctx -> {
1787-
if (LOG.isDebugEnabled()) {
1788-
LOG.debug("Executing search with base [{}] and filter [{}]", base, filter);
1789-
}
1790-
return ctx.search(base, filter, controls);
1791-
};
1792-
}
1793-
1794-
private SearchExecutor searchExecutorWithLogging(final String base, final String filter,
1795-
final SearchControls controls) {
1796-
return ctx -> {
1797-
if (LOG.isDebugEnabled()) {
1798-
LOG.debug("Executing search with base [{}] and filter [{}]", base, filter);
1799-
}
1800-
return ctx.search(base, filter, controls);
1801-
};
1802-
}
1803-
1804-
private CheckedSupplier<NamingEnumeration<SearchResult>> searchSupplier(final DirContext ctx,
1805-
final Name base,
1806-
final String filter,
1807-
final SearchControls controls) {
1808-
return () -> {
1809-
if (LOG.isDebugEnabled()) {
1810-
LOG.debug("Executing search with base [{}] and filter [{}]", base, filter);
1811-
}
1812-
return ctx.search(base, filter, controls);
1813-
};
1814-
}
1815-
18161799
private <T> T unchecked(CheckedSupplier<T> supplier) {
18171800
try {
18181801
return supplier.get();

0 commit comments

Comments
 (0)