Author: rmannibucau Date: Sat Jan 5 12:09:54 2013 New Revision: 1429270 URL: http://svn.apache.org/viewvc?rev=1429270&view=rev Log: TOMEE-703 if no cache don't add StatementCache interceptor + managing specified interceptors instead of removing them setting statmentcache one
Modified: openejb/trunk/openejb/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java Modified: openejb/trunk/openejb/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java?rev=1429270&r1=1429269&r2=1429270&view=diff ============================================================================== --- openejb/trunk/openejb/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java (original) +++ openejb/trunk/openejb/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java Sat Jan 5 12:09:54 2013 @@ -137,11 +137,20 @@ public class TomEEDataSourceCreator exte if (!converted.containsKey(key)) { if (!value.isEmpty()) { if ("MaxOpenPreparedStatements".equalsIgnoreCase(key) || "PoolPreparedStatements".equalsIgnoreCase(key)) { + if ("0".equalsIgnoreCase(properties.getProperty("MaxOpenPreparedStatements", "0")) + || "false".equalsIgnoreCase(properties.getProperty("PoolPreparedStatements", "false"))) { + continue; + } + String interceptors = properties.getProperty("jdbcInterceptors"); - if (interceptors == null || !interceptors.contains("StatementCache")) { + if (interceptors == null) { converted.setProperty("jdbcInterceptors", "StatementCache(max=" + properties.getProperty("MaxOpenPreparedStatements", "128") + ")"); LOGGER.debug("Tomcat-jdbc StatementCache added to handle prepared statement cache/pool"); + } else if (!interceptors.contains("StatementCache")) { + converted.setProperty("jdbcInterceptors", interceptors + + ";StatementCache(max=" + properties.getProperty("MaxOpenPreparedStatements", "128") + ")"); + LOGGER.debug("Tomcat-jdbc StatementCache added to handle prepared statement cache/pool"); } continue; }