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 Detail

      • getBaseDN

        @NotNull
        java.lang.String getBaseDN()
        Retrieves the base DN for this search request.
        Returns:
        The base DN for this search request.
      • getDereferencePolicy

        @NotNull
        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

        @NotNull
        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

        @NotNull
        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

        @NotNull
        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

        @NotNull
        SearchRequest duplicate​(@Nullable
                                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.