From 1734229125e7bad5f85dfe11d076eeda206236a9 Mon Sep 17 00:00:00 2001
From: Ludovic Poitou <ludovic.poitou@forgerock.com>
Date: Mon, 18 Oct 2010 19:41:47 +0000
Subject: [PATCH] Update from OpenDS sdk by Bo Li: Added unmodifiable and copyOf request factories. Added authrate performance utility.

---
 sdk/src/com/sun/opends/sdk/tools/ModRate.java |   31 +++++++++++++------------------
 1 files changed, 13 insertions(+), 18 deletions(-)

diff --git a/sdk/src/com/sun/opends/sdk/tools/ModRate.java b/sdk/src/com/sun/opends/sdk/tools/ModRate.java
index 488fedb..8ad7a38 100644
--- a/sdk/src/com/sun/opends/sdk/tools/ModRate.java
+++ b/sdk/src/com/sun/opends/sdk/tools/ModRate.java
@@ -22,7 +22,7 @@
  * CDDL HEADER END
  *
  *
- *      Copyright 2009-2010 Sun Microsystems, Inc.
+ *      Copyright 2010 Sun Microsystems, Inc.
  */
 
 package com.sun.opends.sdk.tools;
@@ -51,8 +51,7 @@
 {
   private static final class ModifyPerformanceRunner extends PerformanceRunner
   {
-    private final class ModifyWorkerThread extends
-        WorkerThread<ResultHandler<Result>>
+    private final class ModifyWorkerThread extends WorkerThread
     {
       private ModifyRequest mr;
       private Object[] data;
@@ -68,24 +67,17 @@
 
 
       @Override
-      public ResultHandler<Result> getHandler(final long startTime)
-      {
-        return new UpdateStatsResultHandler<Result>(startTime);
-      }
-
-
-
-      @Override
       public FutureResult<?> performOperation(
           final AsynchronousConnection connection,
-          final ResultHandler<Result> handler, final DataSource[] dataSources)
+          final DataSource[] dataSources, long startTime)
       {
         if (dataSources != null)
         {
           data = DataSource.generateData(dataSources, data);
         }
         mr = newModifyRequest(data);
-        return connection.modify(mr, handler);
+        return connection.modify(mr,
+            new UpdateStatsResultHandler<Result>(startTime));
       }
 
 
@@ -136,7 +128,7 @@
     private ModifyPerformanceRunner(final ArgumentParser argParser,
         final ConsoleApplication app) throws ArgumentException
     {
-      super(argParser, app);
+      super(argParser, app, false, false, false);
     }
 
 
@@ -150,7 +142,7 @@
 
 
     @Override
-    WorkerThread<?> newWorkerThread(final AsynchronousConnection connection,
+    WorkerThread newWorkerThread(final AsynchronousConnection connection,
         final ConnectionFactory connectionFactory)
     {
       return new ModifyWorkerThread(connection, connectionFactory);
@@ -323,7 +315,8 @@
     final ArgumentParser argParser = new ArgumentParser(
         ModRate.class.getName(), toolDescription, false, true, 1, 0,
         "[(attribute:value format string) ...]");
-    ArgumentParserConnectionFactory connectionFactory;
+    ConnectionFactoryProvider connectionFactoryProvider;
+    ConnectionFactory connectionFactory;
     ModifyPerformanceRunner runner;
 
     BooleanArgument showUsage;
@@ -337,7 +330,8 @@
       {
         System.setProperty("org.opends.sdk.ldap.transport.linger", "0");
       }
-      connectionFactory = new ArgumentParserConnectionFactory(argParser, this);
+      connectionFactoryProvider =
+          new ConnectionFactoryProvider(argParser, this);
       runner = new ModifyPerformanceRunner(argParser, this);
       propertiesFileArgument = new StringArgument("propertiesFilePath", null,
           OPTION_LONG_PROP_FILE_PATH, false, false, true,
@@ -380,7 +374,8 @@
     try
     {
       argParser.parseArguments(args);
-      connectionFactory.validate();
+      connectionFactory =
+          connectionFactoryProvider.getAuthenticatedConnectionFactory();
       runner.validate();
     }
     catch (final ArgumentException ae)

--
Gitblit v1.10.0