| | |
| | | /** |
| | | * Search result future implementation. |
| | | */ |
| | | public final class SearchResultFutureImpl<P> extends |
| | | AbstractResultFutureImpl<Result, P> implements ResultFuture<Result> |
| | | public final class SearchResultFutureImpl extends |
| | | AbstractResultFutureImpl<Result> implements ResultFuture<Result> |
| | | { |
| | | |
| | | private final SearchResultHandler<P> searchResultHandler; |
| | | |
| | | private final P p; |
| | | private final SearchResultHandler searchResultHandler; |
| | | |
| | | private final SearchRequest request; |
| | | |
| | | |
| | | |
| | | SearchResultFutureImpl(int messageID, SearchRequest request, |
| | | ResultHandler<Result, P> resultHandler, |
| | | SearchResultHandler<P> searchResultHandler, P p, |
| | | ResultHandler<Result> resultHandler, |
| | | SearchResultHandler searchResultHandler, |
| | | LDAPConnection connection, ExecutorService handlerExecutor) |
| | | { |
| | | super(messageID, resultHandler, p, connection, handlerExecutor); |
| | | super(messageID, resultHandler, connection, handlerExecutor); |
| | | this.request = request; |
| | | this.searchResultHandler = searchResultHandler; |
| | | this.p = p; |
| | | } |
| | | |
| | | |
| | | |
| | | synchronized void handleSearchResultEntry( |
| | | void handleSearchResultEntry( |
| | | final SearchResultEntry entry) |
| | | { |
| | | if (!isDone()) |
| | |
| | | { |
| | | public void run() |
| | | { |
| | | searchResultHandler.handleEntry(p, entry); |
| | | searchResultHandler.handleEntry(entry); |
| | | } |
| | | }); |
| | | } |
| | |
| | | |
| | | |
| | | |
| | | synchronized void handleSearchResultReference( |
| | | void handleSearchResultReference( |
| | | final SearchResultReference reference) |
| | | { |
| | | if (!isDone()) |
| | |
| | | { |
| | | public void run() |
| | | { |
| | | searchResultHandler.handleReference(p, reference); |
| | | searchResultHandler.handleReference(reference); |
| | | } |
| | | }); |
| | | } |