Package org.ldaptive.transport
Class DefaultSearchOperationHandle
java.lang.Object
org.ldaptive.transport.DefaultOperationHandle<SearchRequest,SearchResponse>
org.ldaptive.transport.DefaultSearchOperationHandle
- All Implemented Interfaces:
OperationHandle<SearchRequest,
,SearchResponse> SearchOperationHandle
public class DefaultSearchOperationHandle
extends DefaultOperationHandle<SearchRequest,SearchResponse>
implements SearchOperationHandle
Handle that notifies on the components of a search request.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate LdapEntryHandler[]
Functions to handle response entries.private SearchReferenceHandler[]
Functions to handle response references.private SearchResultHandler[]
Functions to handle complete response.private SearchResponse
Synthetic result that is built as entries and references are received.private static final boolean
Whether to automatically sort search results.Fields inherited from class org.ldaptive.transport.DefaultOperationHandle
logger
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultSearchOperationHandle
(SearchRequest req, TransportConnection conn, Duration timeout) Creates a new search operation handle. -
Method Summary
Modifier and TypeMethodDescriptionawait()
Waits for a result or reports a timeout exception.void
InvokesonEntry
.execute()
Convenience method that invokesOperationHandle.send()
followed byOperationHandle.await()
.onComplete
(CompleteHandler function) Sets the function to execute when the operation completes.onControl
(ResponseControlHandler... function) Sets the functions to execute when a control is received.onEntry
(LdapEntryHandler... function) Sets the functions to execute when a search result entry is received.onException
(ExceptionHandler function) Sets the function to execute when an exception occurs.onIntermediate
(IntermediateResponseHandler... function) Sets the functions to execute when an intermediate response is received.onReference
(SearchReferenceHandler... function) Sets the functions to execute when a search result reference is received.onReferral
(ReferralHandler... function) Sets the functions to execute when a referral is received.onResult
(ResultHandler... function) Sets the functions to execute when a result is received.onSearchResult
(SearchResultHandler... function) Sets the functions to execute when a search result is complete.onUnsolicitedNotification
(UnsolicitedNotificationHandler... function) Sets the functions to execute when an unsolicited notification is received.void
InvokesonReference
.send()
Sends this request to the server.throwIf
(ResultPredicate function) Sets the function to determine whether an exception should be raised by a particular result.toString()
Methods inherited from class org.ldaptive.transport.DefaultOperationHandle
abandon, abandon, cancel, consumedMessage, control, exception, getMessageID, getOnComplete, getOnControl, getOnException, getOnIntermediate, getOnReferral, getOnResult, getOnUnsolicitedNotification, getReceivedTime, getRequest, getSentTime, getThrowCondition, hasConsumedMessage, initializeMessageFunctional, intermediate, messageID, referral, result, sent, unsolicitedNotification
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.ldaptive.OperationHandle
abandon, cancel, getReceivedTime, getSentTime
-
Field Details
-
SORT_RESULTS
private static final boolean SORT_RESULTSWhether to automatically sort search results. -
onEntry
Functions to handle response entries. -
onReference
Functions to handle response references. -
onSearchResult
Functions to handle complete response. -
result
Synthetic result that is built as entries and references are received.
-
-
Constructor Details
-
DefaultSearchOperationHandle
Creates a new search operation handle.- Parameters:
req
- search request to expect a response forconn
- the request will be executed ontimeout
- duration to wait for a response
-
-
Method Details
-
send
Description copied from interface:OperationHandle
Sends this request to the server.- Specified by:
send
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
send
in interfaceSearchOperationHandle
- Overrides:
send
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Returns:
- this handle
-
await
Description copied from interface:OperationHandle
Waits for a result or reports a timeout exception.- Specified by:
await
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
await
in interfaceSearchOperationHandle
- Overrides:
await
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Returns:
- result of the operation or empty if the operation is abandoned
- Throws:
LdapException
- if an error occurs executing the request
-
execute
Description copied from interface:OperationHandle
Convenience method that invokesOperationHandle.send()
followed byOperationHandle.await()
. Provides a single method to make a synchronous request.- Specified by:
execute
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
execute
in interfaceSearchOperationHandle
- Returns:
- result of the operation or empty if the operation is abandoned
- Throws:
LdapException
- if an error occurs executing the request
-
onResult
Description copied from interface:OperationHandle
Sets the functions to execute when a result is received.- Specified by:
onResult
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
onResult
in interfaceSearchOperationHandle
- Overrides:
onResult
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Parameters:
function
- to execute on a result- Returns:
- this handle
-
onControl
Description copied from interface:OperationHandle
Sets the functions to execute when a control is received.- Specified by:
onControl
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
onControl
in interfaceSearchOperationHandle
- Overrides:
onControl
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Parameters:
function
- to execute on a control- Returns:
- this handle
-
onReferral
Description copied from interface:OperationHandle
Sets the functions to execute when a referral is received.- Specified by:
onReferral
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
onReferral
in interfaceSearchOperationHandle
- Overrides:
onReferral
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Parameters:
function
- to execute on a referral- Returns:
- this handle
-
onIntermediate
Description copied from interface:OperationHandle
Sets the functions to execute when an intermediate response is received.- Specified by:
onIntermediate
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
onIntermediate
in interfaceSearchOperationHandle
- Overrides:
onIntermediate
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Parameters:
function
- to execute on an intermediate response- Returns:
- this handle
-
onUnsolicitedNotification
public DefaultSearchOperationHandle onUnsolicitedNotification(UnsolicitedNotificationHandler... function) Description copied from interface:OperationHandle
Sets the functions to execute when an unsolicited notification is received.- Specified by:
onUnsolicitedNotification
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
onUnsolicitedNotification
in interfaceSearchOperationHandle
- Overrides:
onUnsolicitedNotification
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Parameters:
function
- to execute on an unsolicited notification- Returns:
- this handle
-
onException
Description copied from interface:OperationHandle
Sets the function to execute when an exception occurs.- Specified by:
onException
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
onException
in interfaceSearchOperationHandle
- Overrides:
onException
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Parameters:
function
- to execute when an exception occurs- Returns:
- this handle
-
throwIf
Description copied from interface:OperationHandle
Sets the function to determine whether an exception should be raised by a particular result.- Specified by:
throwIf
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
throwIf
in interfaceSearchOperationHandle
- Overrides:
throwIf
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Parameters:
function
- to determine whether to throw an exception- Returns:
- this handle
-
onComplete
Description copied from interface:OperationHandle
Sets the function to execute when the operation completes.- Specified by:
onComplete
in interfaceOperationHandle<SearchRequest,
SearchResponse> - Specified by:
onComplete
in interfaceSearchOperationHandle
- Overrides:
onComplete
in classDefaultOperationHandle<SearchRequest,
SearchResponse> - Parameters:
function
- to execute on completion- Returns:
- this handle
-
onEntry
Description copied from interface:SearchOperationHandle
Sets the functions to execute when a search result entry is received.- Specified by:
onEntry
in interfaceSearchOperationHandle
- Parameters:
function
- to execute on a search result entry- Returns:
- this handle
-
onReference
Description copied from interface:SearchOperationHandle
Sets the functions to execute when a search result reference is received.- Specified by:
onReference
in interfaceSearchOperationHandle
- Parameters:
function
- to execute on a search result reference- Returns:
- this handle
-
onSearchResult
Description copied from interface:SearchOperationHandle
Sets the functions to execute when a search result is complete.- Specified by:
onSearchResult
in interfaceSearchOperationHandle
- Parameters:
function
- to execute on a search result- Returns:
- this handle
-
getOnEntry
-
getOnReference
-
getOnSearchResult
-
entry
InvokesonEntry
.- Parameters:
r
- search result entry
-
reference
InvokesonReference
.- Parameters:
r
- search result reference
-
toString
- Overrides:
toString
in classDefaultOperationHandle<SearchRequest,
SearchResponse>
-