Am 3. August 2016 11:36:34 MESZ, schrieb kfuj...@apache.org:
>Author: kfujino
>Date: Wed Aug  3 09:36:34 2016
>New Revision: 1755056
>
>URL: http://svn.apache.org/viewvc?rev=1755056&view=rev
>Log:
>Ensure that the ResultSet is returned as Proxy object when enabling the
>StatementDecoratorInterceptor.
>
>Modified:
>tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java
>    tomcat/trunk/webapps/docs/changelog.xml
>
>Modified:
>tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java
>URL:
>http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java?rev=1755056&r1=1755055&r2=1755056&view=diff
>==============================================================================
>---
>tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java
>(original)
>+++
>tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java
>Wed Aug  3 09:36:34 2016
>@@ -40,7 +40,11 @@ public class StatementDecoratorIntercept
> 
>private static final Log logger =
>LogFactory.getLog(StatementDecoratorInterceptor.class);
> 
>-    private static final String[] EXECUTE_QUERY_TYPES = {
>"executeQuery" };
>+    protected static final String EXECUTE_QUERY  = "executeQuery";
>+    protected static final String GETGENERATEDKEYS =
>"getGeneratedKeys";

Shouldn't this be GET_GENERATED_KEYS?

Regards, 
Felix 

>+    protected static final String GET_RESULTSET  = "getResultSet";
>+
>+    protected static final String[] RESULTSET_TYPES = {EXECUTE_QUERY,
>GETGENERATEDKEYS, GET_RESULTSET};
> 
>     /**
>      * the constructors that are used to create statement proxies
>@@ -157,13 +161,17 @@ public class StatementDecoratorIntercept
>     }
> 
>     protected boolean isExecuteQuery(String methodName) {
>-        return EXECUTE_QUERY_TYPES[0].equals(methodName);
>+        return EXECUTE_QUERY.equals(methodName);
>     }
> 
>     protected boolean isExecuteQuery(Method method) {
>         return isExecuteQuery(method.getName());
>     }
> 
>+    protected boolean isResultSet(Method method, boolean process) {
>+        return process(RESULTSET_TYPES, method, process);
>+    }
>+
>     /**
>      * Class to measure query execute time.
>      */
>@@ -239,7 +247,8 @@ public class StatementDecoratorIntercept
>             if (compare(GETCONNECTION_VAL,method)){
>                 return connection;
>             }
>-            boolean process = isExecuteQuery(method);
>+            boolean process = false;
>+            process = isResultSet(method, process);
>             // check to see if we are about to execute a query
>             // if we are executing, get the current time
>             Object result = null;
>@@ -259,7 +268,7 @@ public class StatementDecoratorIntercept
>                     throw t;
>                 }
>             }
>-            if (process){
>+            if (process && result != null) {
>                 Constructor<?> cons = getResultSetConstructor();
>result = cons.newInstance(new Object[]{new ResultSetProxy(actualProxy,
>result)});
>             }
>
>Modified: tomcat/trunk/webapps/docs/changelog.xml
>URL:
>http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1755056&r1=1755055&r2=1755056&view=diff
>==============================================================================
>--- tomcat/trunk/webapps/docs/changelog.xml (original)
>+++ tomcat/trunk/webapps/docs/changelog.xml Wed Aug  3 09:36:34 2016
>@@ -157,6 +157,10 @@
> that continues to return an invalid connection after database restart.
>         (kfujino)
>       </fix>
>+      <fix>
>+        Ensure that the <code>ResultSet</code> is returned as Proxy
>object when
>+        enabling the <code>StatementDecoratorInterceptor</code>.
>(kfujino)
>+      </fix>
>     </changelog>
>   </subsection>
>   <subsection name="Other">
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
>For additional commands, e-mail: dev-h...@tomcat.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to