craigmcc 01/05/21 21:48:36
Modified: digester/src/java/org/apache/commons/digester Digester.java
Log:
Allow the log output to be directed to someplace other than System.out if
desired.
Revision Changes Path
1.4 +46 -7
jakarta-commons/digester/src/java/org/apache/commons/digester/Digester.java
Index: Digester.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/Digester.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- Digester.java 2001/05/22 04:06:27 1.3
+++ Digester.java 2001/05/22 04:48:36 1.4
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/Digester.java,v
1.3 2001/05/22 04:06:27 craigmcc Exp $
- * $Revision: 1.3 $
- * $Date: 2001/05/22 04:06:27 $
+ * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/Digester.java,v
1.4 2001/05/22 04:48:36 craigmcc Exp $
+ * $Revision: 1.4 $
+ * $Date: 2001/05/22 04:48:36 $
*
* ====================================================================
*
@@ -66,6 +66,7 @@
import java.io.File;
import java.io.InputStream;
import java.io.IOException;
+import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
@@ -104,7 +105,7 @@
* even from the same thread.</p>
*
* @author Craig McClanahan
- * @version $Revision: 1.3 $ $Date: 2001/05/22 04:06:27 $
+ * @version $Revision: 1.4 $ $Date: 2001/05/22 04:48:36 $
*/
public class Digester extends DefaultHandler {
@@ -216,6 +217,13 @@
protected boolean validating = false;
+ /**
+ * The PrintWriter to which we should send log output, or
+ * <code>null</code> to write to <code>System.out</code>.
+ */
+ protected PrintWriter writer = null;
+
+
// ----------------------------------------------------------- Properties
@@ -346,6 +354,29 @@
}
+ /**
+ * Return the logging writer for this Digester.
+ */
+ public PrintWriter getWriter() {
+
+ return (this.writer);
+
+ }
+
+
+ /**
+ * Set the logging writer for this Digester.
+ *
+ * @param writer The new PrintWriter, or <code>null</code> for
+ * <code>System.out</code>.
+ */
+ public void setWriter(PrintWriter writer) {
+
+ this.writer = writer;
+
+ }
+
+
// ---------------------------------------------- DocumentHandler Methods
@@ -734,7 +765,10 @@
*/
public void log(String message) {
- System.out.println(message);
+ if (writer == null)
+ System.out.println(message);
+ else
+ writer.println(message);
}
@@ -748,8 +782,13 @@
*/
public void log(String message, Throwable exception) {
- System.out.println(message);
- exception.printStackTrace(System.out);
+ if (writer == null) {
+ System.out.println(message);
+ exception.printStackTrace(System.out);
+ } else {
+ writer.println(message);
+ exception.printStackTrace(writer);
+ }
}