Skip to main content

[faban-commits] [faban~source:7e01c17e] Fix for FABAN-11 Driver fails under JDK 7

  • From: jamesxcheng@...
  • To: commits@...
  • Subject: [faban-commits] [faban~source:7e01c17e] Fix for FABAN-11 Driver fails under JDK 7
  • Date: Wed, 23 Apr 2014 02:11:02 +0000

Project:    faban
Repository: source
Revision:   7e01c17e690fa2c8b065f57f8f873885c53bea76
Author:     jamesxcheng
Date:       2014-04-23 01:59:28 UTC
Link:       

Log Message:
------------
Fix for FABAN-11 Driver fails under JDK 7



Revisions:
----------
7e01c17e690fa2c8b065f57f8f873885c53bea76


Modified Paths:
---------------
driver/src/com/sun/faban/driver/transport/sunhttp/HttpClient.java
stage/README
stage/master/bin/startup.sh


Diffs:
------
--- a/driver/src/com/sun/faban/driver/transport/sunhttp/HttpClient.java
+++ b/driver/src/com/sun/faban/driver/transport/sunhttp/HttpClient.java
@@ -4,7 +4,7 @@
  * compliance with the License.
  *
  * You can obtain a copy of the License at
- * http://www.sun.com/cddl/cddl.html or
+ * http://www.opensource.org/licenses/cddl1.php or
  * install_dir/legal/LICENSE
  * See the License for the specific language governing
  * permission and limitations under the License.
@@ -19,11 +19,12 @@
  *
  * $Id$
  *
- * Copyright 2005-2009 Sun Microsystems Inc. All Rights Reserved
+ * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights 
reserved.
  */
 package com.sun.faban.driver.transport.sunhttp;
 
 import java.io.IOException;
+import java.lang.reflect.Method;
 import java.net.InetSocketAddress;
 import java.net.Proxy;
 import java.net.Socket;
@@ -44,8 +45,15 @@ import java.security.PrivilegedAction;
  */
 public class HttpClient extends sun.net.www.http.HttpClient {
 
+    private static Method getMethod;
     static {
         kac = new KeepAliveCache();
+       try {
+           getMethod = kac.getClass().getMethod("get",
+                               new Class[]{ URL.class, Object.class });
+       } catch (NoSuchMethodException nsme) {
+           throw new ExceptionInInitializerError(nsme);
+       }
     }
     /** Superclass' inCache is private. Needed to define and check usage. */
     protected boolean inCache;
@@ -86,7 +94,12 @@ public class HttpClient extends 
sun.net.www.http.HttpClient {
         HttpClient ret = null;
         /* see if one's already around */
         if (useCache) {
-            ret = (HttpClient) kac.get(url, null);
+           try {
+                ret = (HttpClient) getMethod.invoke(kac,
+                                                   new Object[]{url, null});
+           } catch (Exception iae) {
+               throw new IOException("Can't invoke on KeepAliveCache", iae);
+           }
             if (ret != null) {
                 if ((ret.proxy != null && ret.proxy.equals(p))
                         || (ret.proxy == null && p == null)) {--- 
a/stage/README
+++ b/stage/README
@@ -10,44 +10,34 @@
   framework for benchmark development. The harness is all about automation
   of benchmark runs and data collection, and is managed using a web 
interface.
 
-  There are three download packages:
-    - Server package. This is for the Faban server. If you drive and control
-      the benchmark from a single server, this all you need. The file is 
named
-      faban-0.7-server-mmddyy.tar.gz
-
-    - Client package. This is needed for all additional systems in you rig,
-      except the server. The file is named
-      faban-0.7-client-mmddyy.tar.gz
-
-    - Bundling package. This includes the server, client, and a build scripts
-      for integrating and shipping Faban with other benchmarks. The file
-      is named
-      faban-0.7-bundle-mmddyy.tar.gz
+  There is a single download package that includes the Faban server, client,
+  and build scripts for integrating and shipping Faban with other benchmarks.
+  The file is named faban-kit-mmddyy.tar.gz
 
   Note that the mmddyy in the file name refers to the build date of the 
package.
 
   For complete information on Faban, please visit the project web site at
 
-      http://faban.sunsource.net/
+      https://java.net/projects/faban
 
 
   The Latest Version
   ------------------
   - The latest stable version is available at
 
-     http://faban.sunsource.net/downloads
+     https://java.net/projects/faban/downloads
 
 
   - You can also find the most recent builds at
 
-     http://faban.sunsource.net/nightly/
+     https://java.net/projects/faban/downloads/directory/Latest%20Builds
 
 
   Documentation
   -------------
   All Faban documentation is in HTML format and is available on
 
-    http://faban.sunsource.net/docs/
+    https://java.net/projects/faban/docs
 
   Legal
   -------- a/stage/master/bin/startup.sh
+++ b/stage/master/bin/startup.sh
@@ -25,6 +25,7 @@ case $JAVA_VERSION in
     1.5*);;
     1.6*);;
     1.7*);;
+    1.8*);;
     *) echo "Java version is ${JAVA_VERSION}. Faban needs 1.5 or later." >&2
        echo "Please install the appropriate JDK and set JAVA_HOME 
accordingly." >&2
        exit 1;;





[faban-commits] [faban~source:7e01c17e] Fix for FABAN-11 Driver fails under JDK 7

jamesxcheng 04/23/2014
 
 
Close
loading
Please Confirm
Close