From f4fa5a05ecf9790438ac7fb5d04e8346bf30e428 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Thu, 16 Oct 2014 11:16:33 +0000
Subject: [PATCH] Converted opendj3 code to use SearchRequest like API

---
 opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java |   54 ++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 34 insertions(+), 20 deletions(-)

diff --git a/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java b/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java
index 7a5939a..f6d43c2 100644
--- a/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java
@@ -129,10 +129,27 @@
   }
 
 
+  /**
+   * Creates a new internal search operation with the provided information.
+   *
+   * @param internalConnection
+   *          The internal client connection with which this internal search
+   *          operation is associated.
+   * @param operationID
+   *          The operation ID for this internal search.
+   * @param messageID
+   *          The message ID for this internal search.
+   * @param request
+   *          The search request
+   */
+  public InternalSearchOperation(ClientConnection internalConnection, long operationID, int messageID,
+      SearchRequest request)
+  {
+    this(internalConnection, operationID, messageID, request, null);
+  }
 
   /**
-   * Creates a new internal search operation with the provided
-   * information.
+   * Creates a new internal search operation with the provided information.
    *
    * @param  internalConnection  The internal client connection with
    *                             which this internal search operation
@@ -141,27 +158,26 @@
    *                             search.
    * @param  messageID           The message ID for this internal
    *                             search.
-   * @param  requestControls     The set of request controls for this
-   *                             internal search.
-   * @param  baseDN              The base DN for this internal search.
-   * @param  scope               The scope for this internal search.
-   * @param  derefPolicy         The alias dereferencing policy for
-   *                             this internal search.
-   * @param  sizeLimit           The size limit for this internal
-   *                             search.
-   * @param  timeLimit           The time limit for this internal
-   *                             search.
-   * @param  typesOnly           The typesOnly flag for this internal
-   *                             search.
-   * @param  filter              The filter for this internal search.
-   * @param  attributes          The names of the requested attributes
-   *                             for this internal search.
+   * @param  request             The search request
    * @param  searchListener      The internal search listener that
    *                             should be used to process the
    *                             results, or <CODE>null</CODE> if
    *                             they should be collected internally.
    */
-  public InternalSearchOperation(
+  public InternalSearchOperation(ClientConnection internalConnection, long operationID, int messageID,
+      SearchRequest request, InternalSearchListener searchListener)
+  {
+    this(internalConnection, operationID, messageID,
+        request.getControls(),
+        request.getName(), request.getScope(),
+        request.getDereferenceAliasesPolicy(),
+        request.getSizeLimit(), request.getTimeLimit(), request.isTypesOnly(),
+        request.getFilter(), request.getAttributes(),
+        searchListener);
+  }
+
+  // TODO JNR remove??
+  private InternalSearchOperation(
               ClientConnection internalConnection,
               long operationID, int messageID,
               List<Control> requestControls, DN baseDN,
@@ -193,8 +209,6 @@
     setInternalOperation(true);
   }
 
-
-
   /**
    * Retrieves the set of search result entries returned for this
    * search.

--
Gitblit v1.10.0