From d73170e7b1aae3dd5a079c34c7829228fd4d6ab9 Mon Sep 17 00:00:00 2001 From: fhanik Date: Mon, 24 Nov 2008 20:41:38 +0000 Subject: [PATCH] implemented use equals attribute everywhere git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@720282 13f79535-47bb-0310-9956-ffa450edef68 --- modules/jdbc-pool/doc/jdbc-pool.xml | 3 ++- .../java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java | 10 +++++++--- .../pool/interceptor/AbstractCreateStatementInterceptor.java | 4 ++-- .../apache/tomcat/jdbc/pool/interceptor/ConnectionState.java | 4 ++-- 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/modules/jdbc-pool/doc/jdbc-pool.xml b/modules/jdbc-pool/doc/jdbc-pool.xml index 40ec6b34d..7f80352ed 100644 --- a/modules/jdbc-pool/doc/jdbc-pool.xml +++ b/modules/jdbc-pool/doc/jdbc-pool.xml @@ -328,7 +328,8 @@

(boolean) Set to true if you wish the ProxyConnection class to use String.equals instead of == when comparing method names. This property does not apply to added interceptors as those are configured individually. The default value is false. -

+

+ diff --git a/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java b/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java index 6e8aedabe..212be1a7c 100644 --- a/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java +++ b/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java @@ -56,14 +56,18 @@ public abstract class JdbcInterceptor implements InvocationHandler { this.next = next; } - public boolean compare(String methodName, Method method) { + public boolean compare(String name1, String name2) { if (useEquals()) { - return methodName.equals(method.getName()); + return name1.equals(name2); } else { - return methodName==method.getName(); + return name1==name2; } } + public boolean compare(String methodName, Method method) { + return compare(methodName, method.getName()); + } + /** * Gets called each time the connection is borrowed from the pool * @param parent - the connection pool owning the connection diff --git a/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractCreateStatementInterceptor.java b/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractCreateStatementInterceptor.java index 80f04b65f..3609ac0f7 100644 --- a/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractCreateStatementInterceptor.java +++ b/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractCreateStatementInterceptor.java @@ -40,7 +40,7 @@ public abstract class AbstractCreateStatementInterceptor extends JdbcIntercepto @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { - if (CLOSE_VAL==method.getName()) { + if (compare(CLOSE_VAL,method)) { closeInvoked(); return super.invoke(proxy, method, args); } else { @@ -70,7 +70,7 @@ public abstract class AbstractCreateStatementInterceptor extends JdbcIntercepto protected boolean process(String[] names, Method method, boolean process) { for (int i=0; (!process) && i