Package org.forgerock.opendj.ldap.spi
Class SearchResultLdapPromiseImpl
java.lang.Object
org.forgerock.opendj.ldap.spi.LdapPromiseImpl<Result>
org.forgerock.opendj.ldap.spi.ResultLdapPromiseImpl<SearchRequest,Result>
org.forgerock.opendj.ldap.spi.SearchResultLdapPromiseImpl
- All Implemented Interfaces:
Future<Result>,IntermediateResponseHandler,LdapPromise<Result>,LdapResultHandler<Result>,SearchResultHandler,org.forgerock.util.promise.ExceptionHandler<LdapException>,org.forgerock.util.promise.Promise<Result,,LdapException> org.forgerock.util.promise.ResultHandler<Result>
public final class SearchResultLdapPromiseImpl
extends ResultLdapPromiseImpl<SearchRequest,Result>
implements SearchResultHandler
Search result promise implementation.
-
Method Summary
Modifier and TypeMethodDescriptionbooleancancel(boolean mayInterruptIfRunning) booleanReturnstrueif this request should be canceled once the timeout period expires.get()getOrThrow(long timeout, TimeUnit unit) getOrThrowUninterruptibly(long timeout, TimeUnit unit) intReturns the request ID of the request if appropriate.org.forgerock.util.promise.PromiseImpl<Result, LdapException> booleanhandleEntry(SearchResultEntry entry) Invoked each time a search result entry is returned from an asynchronous search operation.booleanhandleReference(SearchResultReference reference) Invoked each time a search result reference is returned from an asynchronous search operation.booleanbooleanisDone()<VOUT,EOUT extends Exception>
org.forgerock.util.promise.Promise<VOUT, EOUT> then(org.forgerock.util.Function<? super Result, VOUT, EOUT> onResult, org.forgerock.util.Function<? super LdapException, VOUT, EOUT> onException) <VOUT,EOUT extends Exception>
org.forgerock.util.promise.Promise<VOUT, EOUT> then(org.forgerock.util.Function<? super Result, VOUT, EOUT> onResult, org.forgerock.util.Function<? super LdapException, VOUT, EOUT> onException, org.forgerock.util.Function<? super RuntimeException, VOUT, EOUT> onRuntimeException) <VOUT> LdapPromise<VOUT> then(org.forgerock.util.Function<? super Result, VOUT, LdapException> onResult) thenAlways(Runnable onResultOrException) <VOUT,EOUT extends Exception>
org.forgerock.util.promise.Promise<VOUT, EOUT> thenAsync(org.forgerock.util.AsyncFunction<? super Result, VOUT, EOUT> onResult, org.forgerock.util.AsyncFunction<? super LdapException, VOUT, EOUT> onException) <VOUT,EOUT extends Exception>
org.forgerock.util.promise.Promise<VOUT, EOUT> thenAsync(org.forgerock.util.AsyncFunction<? super Result, VOUT, EOUT> onResult, org.forgerock.util.AsyncFunction<? super LdapException, VOUT, EOUT> onException, org.forgerock.util.AsyncFunction<? super RuntimeException, VOUT, EOUT> onRuntimeException) <VOUT> LdapPromise<VOUT> thenAsync(org.forgerock.util.AsyncFunction<? super Result, VOUT, LdapException> onResult) thenCatch(org.forgerock.util.Function<? super LdapException, Result, EOUT> onException) thenCatchAsync(org.forgerock.util.AsyncFunction<? super LdapException, Result, EOUT> onException) org.forgerock.util.promise.Promise<Result, LdapException> thenCatchRuntimeException(org.forgerock.util.Function<? super RuntimeException, Result, LdapException> onRuntimeException) org.forgerock.util.promise.Promise<Result, LdapException> thenCatchRuntimeExceptionAsync(org.forgerock.util.AsyncFunction<? super RuntimeException, Result, LdapException> onRuntimeException) thenFinally(Runnable onResultOrException) thenOnException(org.forgerock.util.promise.ExceptionHandler<? super LdapException> onException) thenOnResult(org.forgerock.util.promise.ResultHandler<? super Result> onResult) thenOnResultOrException(Runnable onResultOrException) thenOnResultOrException(org.forgerock.util.promise.ResultHandler<? super Result> onResult, org.forgerock.util.promise.ExceptionHandler<? super LdapException> onException) thenOnRuntimeException(org.forgerock.util.promise.RuntimeExceptionHandler onRuntimeException) Methods inherited from class org.forgerock.opendj.ldap.spi.ResultLdapPromiseImpl
adaptErrorResult, getRequest, getTimestamp, handleIntermediateResponse, isBindOrStartTLS, setResultOrError, toStringMethods inherited from class org.forgerock.opendj.ldap.spi.LdapPromiseImpl
handleException, handleResult, newLdapPromiseImpl, newLdapPromiseImplMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.forgerock.opendj.ldap.LdapPromise
getRequestID, then, thenAlways, thenAsync, thenFinally, thenOnException, thenOnResult, thenOnResultOrException, thenOnResultOrExceptionMethods inherited from interface org.forgerock.util.promise.Promise
cancel, get, get, getOrThrow, getOrThrow, getOrThrowUninterruptibly, getOrThrowUninterruptibly, isCancelled, isDone, then, then, thenAsync, thenAsync, thenCatch, thenCatchAsync, thenCatchRuntimeException, thenCatchRuntimeExceptionAsync, thenOnRuntimeException
-
Method Details
-
handleEntry
Description copied from interface:SearchResultHandlerInvoked each time a search result entry is returned from an asynchronous search operation.- Specified by:
handleEntryin interfaceSearchResultHandler- Parameters:
entry- The search result entry.- Returns:
trueif this handler should continue to be notified of any remaining entries and references, orfalseif the remaining entries and references should be skipped for some reason (e.g. a client side size limit has been reached).
-
handleReference
Description copied from interface:SearchResultHandlerInvoked each time a search result reference is returned from an asynchronous search operation.- Specified by:
handleReferencein interfaceSearchResultHandler- Parameters:
reference- The search result reference.- Returns:
trueif this handler should continue to be notified of any remaining entries and references, orfalseif the remaining entries and references should be skipped for some reason (e.g. a client side size limit has been reached).
-
checkForTimeout
Description copied from class:ResultLdapPromiseImplReturnstrueif this request should be canceled once the timeout period expires. The default implementation is to returntruewhich will be appropriate for nearly all requests, the one obvious exception being persistent searches.- Overrides:
checkForTimeoutin classResultLdapPromiseImpl<SearchRequest,Result> - Returns:
trueif this request should be canceled once the timeout period expires.
-
getRequestID
public int getRequestID()Description copied from interface:LdapPromiseReturns the request ID of the request if appropriate.- Specified by:
getRequestIDin interfaceLdapPromise<R>- Returns:
- The request ID, or
-1if there is no request ID.
-
cancel
public boolean cancel(boolean mayInterruptIfRunning) - Specified by:
cancelin interfaceFuture<R>- Specified by:
cancelin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
get
- Specified by:
getin interfaceFuture<R>- Specified by:
getin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>> - Throws:
ExecutionExceptionInterruptedException
-
get
public Result get(long timeout, TimeUnit unit) throws ExecutionException, TimeoutException, InterruptedException - Specified by:
getin interfaceFuture<R>- Specified by:
getin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>> - Throws:
ExecutionExceptionTimeoutExceptionInterruptedException
-
getOrThrow
- Specified by:
getOrThrowin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>> - Throws:
InterruptedExceptionLdapException
-
getOrThrow
public Result getOrThrow(long timeout, TimeUnit unit) throws InterruptedException, LdapException, TimeoutException - Specified by:
getOrThrowin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>> - Throws:
InterruptedExceptionLdapExceptionTimeoutException
-
getOrThrowUninterruptibly
- Specified by:
getOrThrowUninterruptiblyin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>> - Throws:
LdapException
-
getOrThrowUninterruptibly
public Result getOrThrowUninterruptibly(long timeout, TimeUnit unit) throws LdapException, TimeoutException - Specified by:
getOrThrowUninterruptiblyin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>> - Throws:
LdapExceptionTimeoutException
-
isCancelled
public boolean isCancelled()- Specified by:
isCancelledin interfaceFuture<R>- Specified by:
isCancelledin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
isDone
public boolean isDone()- Specified by:
isDonein interfaceFuture<R>- Specified by:
isDonein interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenOnException
public LdapPromise<Result> thenOnException(org.forgerock.util.promise.ExceptionHandler<? super LdapException> onException) - Specified by:
thenOnExceptionin interfaceLdapPromise<R>- Specified by:
thenOnExceptionin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenOnRuntimeException
public LdapPromise<Result> thenOnRuntimeException(org.forgerock.util.promise.RuntimeExceptionHandler onRuntimeException) - Specified by:
thenOnRuntimeExceptionin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenOnResult
public LdapPromise<Result> thenOnResult(org.forgerock.util.promise.ResultHandler<? super Result> onResult) - Specified by:
thenOnResultin interfaceLdapPromise<R>- Specified by:
thenOnResultin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenOnResultOrException
- Specified by:
thenOnResultOrExceptionin interfaceLdapPromise<R>- Specified by:
thenOnResultOrExceptionin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
then
public <VOUT> LdapPromise<VOUT> then(org.forgerock.util.Function<? super Result, VOUT, LdapException> onResult) - Specified by:
thenin interfaceLdapPromise<R>- Specified by:
thenin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
then
public <VOUT,EOUT extends Exception> org.forgerock.util.promise.Promise<VOUT,EOUT> then(org.forgerock.util.Function<? super Result, VOUT, EOUT> onResult, org.forgerock.util.Function<? super LdapException, VOUT, EOUT> onException) - Specified by:
thenin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
then
public <VOUT,EOUT extends Exception> org.forgerock.util.promise.Promise<VOUT,EOUT> then(org.forgerock.util.Function<? super Result, VOUT, EOUT> onResult, org.forgerock.util.Function<? super LdapException, VOUT, EOUT> onException, org.forgerock.util.Function<? super RuntimeException, VOUT, EOUT> onRuntimeException) - Specified by:
thenin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenOnResultOrException
public LdapPromise<Result> thenOnResultOrException(org.forgerock.util.promise.ResultHandler<? super Result> onResult, org.forgerock.util.promise.ExceptionHandler<? super LdapException> onException) - Specified by:
thenOnResultOrExceptionin interfaceLdapPromise<R>- Specified by:
thenOnResultOrExceptionin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenAlways
- Specified by:
thenAlwaysin interfaceLdapPromise<R>- Specified by:
thenAlwaysin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenAsync
public <VOUT> LdapPromise<VOUT> thenAsync(org.forgerock.util.AsyncFunction<? super Result, VOUT, LdapException> onResult) - Specified by:
thenAsyncin interfaceLdapPromise<R>- Specified by:
thenAsyncin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenAsync
public <VOUT,EOUT extends Exception> org.forgerock.util.promise.Promise<VOUT,EOUT> thenAsync(org.forgerock.util.AsyncFunction<? super Result, VOUT, EOUT> onResult, org.forgerock.util.AsyncFunction<? super LdapException, VOUT, EOUT> onException) - Specified by:
thenAsyncin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenAsync
public <VOUT,EOUT extends Exception> org.forgerock.util.promise.Promise<VOUT,EOUT> thenAsync(org.forgerock.util.AsyncFunction<? super Result, VOUT, EOUT> onResult, org.forgerock.util.AsyncFunction<? super LdapException, VOUT, EOUT> onException, org.forgerock.util.AsyncFunction<? super RuntimeException, VOUT, EOUT> onRuntimeException) - Specified by:
thenAsyncin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenCatch
public <EOUT extends Exception> org.forgerock.util.promise.Promise<Result,EOUT> thenCatch(org.forgerock.util.Function<? super LdapException, Result, EOUT> onException) - Specified by:
thenCatchin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenCatchRuntimeException
public org.forgerock.util.promise.Promise<Result,LdapException> thenCatchRuntimeException(org.forgerock.util.Function<? super RuntimeException, Result, LdapException> onRuntimeException) - Specified by:
thenCatchRuntimeExceptionin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenCatchRuntimeExceptionAsync
public org.forgerock.util.promise.Promise<Result,LdapException> thenCatchRuntimeExceptionAsync(org.forgerock.util.AsyncFunction<? super RuntimeException, Result, LdapException> onRuntimeException) - Specified by:
thenCatchRuntimeExceptionAsyncin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenFinally
- Specified by:
thenFinallyin interfaceLdapPromise<R>- Specified by:
thenFinallyin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
thenCatchAsync
public <EOUT extends Exception> org.forgerock.util.promise.Promise<Result,EOUT> thenCatchAsync(org.forgerock.util.AsyncFunction<? super LdapException, Result, EOUT> onException) - Specified by:
thenCatchAsyncin interfaceorg.forgerock.util.promise.Promise<R,P extends org.forgerock.util.promise.Promise<R, LdapException>>
-
getWrappedPromise
-