Author: markt Date: Wed Feb 18 16:46:36 2009 New Revision: 745569 URL: http://svn.apache.org/viewvc?rev=745569&view=rev Log: Fix DBCP-4. This patch is a trade-off that provides developers an option to redirect the logging output without adding a new dependency on commons-logging or j.u.l. App servers using DBCP will need to continue to use their existing mechanisms for redirecting stdout.
Modified: commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedConfig.java commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedTrace.java Modified: commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedConfig.java URL: http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedConfig.java?rev=745569&r1=745568&r2=745569&view=diff ============================================================================== --- commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedConfig.java (original) +++ commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedConfig.java Wed Feb 18 16:46:36 2009 @@ -17,6 +17,8 @@ package org.apache.commons.dbcp; +import java.io.PrintWriter; + /** * Configuration settings for handling abandoned db connections. * @@ -130,4 +132,29 @@ this.logAbandoned = logAbandoned; } + /** + * PrintWriter to use to log information on abandoned objects. + */ + private PrintWriter logWriter = new PrintWriter(System.out); + + /** + * Returns the log writer being used by this configuration to log + * information on abandoned objects. If not set, a PrintWriter based on + * System.out is used. + * + * @return log writer in use + */ + public PrintWriter getLogWriter() { + return logWriter; + } + + /** + * Sets the log writer to be used by this configuration to log + * information on abandoned objects. + * + * @param logWriter The new log writer + */ + public void setLogWriter(PrintWriter logWriter) { + this.logWriter = logWriter; + } } Modified: commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedTrace.java URL: http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedTrace.java?rev=745569&r1=745568&r2=745569&view=diff ============================================================================== --- commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedTrace.java (original) +++ commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp/AbandonedTrace.java Wed Feb 18 16:46:36 2009 @@ -188,9 +188,9 @@ * created this object. */ public void printStackTrace() { - if (createdBy != null) { - System.out.println(format.format(new Date(createdTime))); - createdBy.printStackTrace(System.out); + if (createdBy != null && config != null) { + config.getLogWriter().println(format.format(new Date(createdTime))); + createdBy.printStackTrace(config.getLogWriter()); } synchronized(this.trace) { Iterator it = this.trace.iterator();