com.unboundid.ldap.sdk
Interface ReadOnlySearchRequest

All Superinterfaces:
ReadOnlyLDAPRequest, java.io.Serializable
All Known Implementing Classes:
SearchRequest

@NotExtensible
@ThreadSafety(level=INTERFACE_NOT_THREADSAFE)
public interface ReadOnlySearchRequest
extends ReadOnlyLDAPRequest

This interface defines a set of methods that may be safely called in an LDAP search request without altering its contents. This interface must not be implemented by any class other than SearchRequest.

This interface does not inherently provide the assurance of thread safety for the methods that it exposes, because it is still possible for a thread referencing the object which implements this interface to alter the request using methods not included in this interface. However, if it can be guaranteed that no thread will alter the underlying object, then the methods exposed by this interface can be safely invoked concurrently by any number of threads.


Method Summary
 SearchRequest duplicate()
          Creates a new instance of this LDAP request that may be modified without impacting this request.
 SearchRequest duplicate(Control[] controls)
          Creates a new instance of this LDAP request that may be modified without impacting this request.
 java.util.List<java.lang.String> getAttributeList()
          Retrieves the set of requested attributes to include in matching entries.
 java.lang.String getBaseDN()
          Retrieves the base DN for this search request.
 DereferencePolicy getDereferencePolicy()
          Retrieves the dereference policy that should be used by the server for any aliases encountered during search processing.
 Filter getFilter()
          Retrieves the filter that should be used to identify matching entries.
 SearchScope getScope()
          Retrieves the scope for this search request.
 int getSizeLimit()
          Retrieves the maximum number of entries that should be returned by the server when processing this search request.
 int getTimeLimitSeconds()
          Retrieves the maximum length of time in seconds that the server should spend processing this search request.
 boolean typesOnly()
          Indicates whether the server should return only attribute names in matching entries, rather than both names and values.
 
Methods inherited from interface com.unboundid.ldap.sdk.ReadOnlyLDAPRequest
followReferrals, getControl, getControlList, getResponseTimeoutMillis, hasControl, hasControl, toCode, toString, toString
 

Method Detail

getBaseDN

java.lang.String getBaseDN()
Retrieves the base DN for this search request.

Returns:
The base DN for this search request.

getScope

SearchScope getScope()
Retrieves the scope for this search request.

Returns:
The scope for this search request.

getDereferencePolicy

DereferencePolicy getDereferencePolicy()
Retrieves the dereference policy that should be used by the server for any aliases encountered during search processing.

Returns:
The dereference policy that should be used by the server for any aliases encountered during search processing.

getSizeLimit

int getSizeLimit()
Retrieves the maximum number of entries that should be returned by the server when processing this search request.

Returns:
The maximum number of entries that should be returned by the server when processing this search request, or zero if there is no limit.

getTimeLimitSeconds

int getTimeLimitSeconds()
Retrieves the maximum length of time in seconds that the server should spend processing this search request.

Returns:
The maximum length of time in seconds that the server should spend processing this search request, or zero if there is no limit.

typesOnly

boolean typesOnly()
Indicates whether the server should return only attribute names in matching entries, rather than both names and values.

Returns:
true if matching entries should include only attribute names, or false if matching entries should include both attribute names and values.

getFilter

Filter getFilter()
Retrieves the filter that should be used to identify matching entries.

Returns:
The filter that should be used to identify matching entries.

getAttributeList

java.util.List<java.lang.String> getAttributeList()
Retrieves the set of requested attributes to include in matching entries.

Returns:
The set of requested attributes to include in matching entries, or an empty array if the default set of attributes (all user attributes but no operational attributes) should be requested.

duplicate

SearchRequest duplicate()
Creates a new instance of this LDAP request that may be modified without impacting this request.

Specified by:
duplicate in interface ReadOnlyLDAPRequest
Returns:
A new instance of this LDAP request that may be modified without impacting this request.

duplicate

SearchRequest duplicate(Control[] controls)
Creates a new instance of this LDAP request that may be modified without impacting this request. The provided controls will be used for the new request instead of duplicating the controls from this request.

Specified by:
duplicate in interface ReadOnlyLDAPRequest
Parameters:
controls - The set of controls to include in the duplicate request.
Returns:
A new instance of this LDAP request that may be modified without impacting this request.