mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Matthew Swift
11.03.2013 764833f650b491bd0496a739f212d85238b8c769
Fix OPENDJ-1249 - ConnectionFactory timeout setting is applied for Active Directory persistent search requests.

* don't enforce timeouts for searches that contain the control 1.2.840.113556.1.4.528
2 files modified
13 ■■■■■ changed files
opendj-ldap-sdk/src/main/java/com/forgerock/opendj/ldap/LDAPSearchFutureResultImpl.java 6 ●●●● patch | view | raw | blame | history
opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/controls/PersistentSearchRequestControl.java 7 ●●●●● patch | view | raw | blame | history
opendj-ldap-sdk/src/main/java/com/forgerock/opendj/ldap/LDAPSearchFutureResultImpl.java
@@ -27,6 +27,8 @@
package com.forgerock.opendj.ldap;
import static org.forgerock.opendj.ldap.controls.PersistentSearchRequestControl.ACTIVE_DIRECTORY_OID;
import org.forgerock.opendj.ldap.Connection;
import org.forgerock.opendj.ldap.IntermediateResponseHandler;
import org.forgerock.opendj.ldap.ResultCode;
@@ -54,7 +56,9 @@
        super(requestID, resultHandler, intermediateResponseHandler, connection);
        this.request = request;
        this.searchResultHandler = resultHandler;
        this.isPersistentSearch = request.containsControl(PersistentSearchRequestControl.OID);
        this.isPersistentSearch =
                request.containsControl(PersistentSearchRequestControl.OID)
                        || request.containsControl(ACTIVE_DIRECTORY_OID);
    }
    public boolean handleEntry(final SearchResultEntry entry) {
opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/controls/PersistentSearchRequestControl.java
@@ -106,6 +106,13 @@
    public static final String OID = "2.16.840.1.113730.3.4.3";
    /**
     * The OID for the Microsoft Active Directory persistent search request
     * control. The control itself is empty and the changes are returned in the
     * following attributes "isDeleted", "whenChanged", "whenCreated".
     */
    public static final String ACTIVE_DIRECTORY_OID = "1.2.840.113556.1.4.528";
    /**
     * A decoder which can be used for decoding the persistent search request
     * control.
     */