psmith 2003/11/20 14:09:13 Modified: src/java/org/apache/log4j Decoder.java tests/src/java/org/apache/log4j/xml XMLDecoderTest.java src/java/org/apache/log4j/xml XMLDecoder.java UtilLoggingXMLDecoder.java tests/src/java/org/apache/log4j/net XMLDecoderTest.java Log: Modified the way decoding works so that it uses URLs rather than Files, allowing a little more flexibility. Revision Changes Path 1.2 +2 -2 jakarta-log4j/src/java/org/apache/log4j/Decoder.java Index: Decoder.java =================================================================== RCS file: /home/cvs/jakarta-log4j/src/java/org/apache/log4j/Decoder.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- Decoder.java 24 Jun 2003 08:15:23 -0000 1.1 +++ Decoder.java 20 Nov 2003 22:09:13 -0000 1.2 @@ -49,8 +49,8 @@ package org.apache.log4j; -import java.io.File; import java.io.IOException; +import java.net.URL; import java.util.Map; import java.util.Vector; @@ -65,6 +65,6 @@ public interface Decoder { Vector decodeEvents(String document); LoggingEvent decode(String event); - Vector decode(File file) throws IOException; + Vector decode(URL url) throws IOException; void setAdditionalProperties(Map additionalProperties); } 1.3 +1 -1 jakarta-log4j/tests/src/java/org/apache/log4j/xml/XMLDecoderTest.java Index: XMLDecoderTest.java =================================================================== RCS file: /home/cvs/jakarta-log4j/tests/src/java/org/apache/log4j/xml/XMLDecoderTest.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- XMLDecoderTest.java 25 Jun 2003 15:13:20 -0000 1.2 +++ XMLDecoderTest.java 20 Nov 2003 22:09:13 -0000 1.3 @@ -32,7 +32,7 @@ */ public void testDecodeFile() throws Exception { XMLDecoder xmlDecoder = new XMLDecoder(); - List events = xmlDecoder.decode(new File("tests/witness/eventSet.1.xml")); + List events = xmlDecoder.decode(new File("tests/witness/eventSet.1.xml").toURL()); assertTrue("Should have returned at least 418 events: " + events.size(), events.size()==418); } 1.5 +6 -4 jakarta-log4j/src/java/org/apache/log4j/xml/XMLDecoder.java Index: XMLDecoder.java =================================================================== RCS file: /home/cvs/jakarta-log4j/src/java/org/apache/log4j/xml/XMLDecoder.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- XMLDecoder.java 2 Nov 2003 19:53:48 -0000 1.4 +++ XMLDecoder.java 20 Nov 2003 22:09:13 -0000 1.5 @@ -52,8 +52,10 @@ import java.io.File; import java.io.FileReader; import java.io.IOException; +import java.io.InputStreamReader; import java.io.LineNumberReader; import java.io.StringReader; +import java.net.URL; import java.util.Collections; import java.util.Hashtable; import java.util.Map; @@ -168,12 +170,12 @@ * @return The contents of the file as a String * @throws IOException if an error occurred during the loading process */ - private String loadFileSource(File file) throws IOException { + private String loadFileSource(URL url) throws IOException { LineNumberReader reader = null; StringBuffer buf = new StringBuffer(1024); try { - reader = new LineNumberReader(new FileReader(file)); + reader = new LineNumberReader(new InputStreamReader(url.openStream())); String line = null; @@ -200,8 +202,8 @@ * @return Vector of LoggingEvents * @throws IOException */ - public Vector decode(File file) throws IOException { - String fileContents = loadFileSource(file); + public Vector decode(URL url) throws IOException { + String fileContents = loadFileSource(url); Document doc = parse(fileContents); if (doc == null) { 1.4 +17 -20 jakarta-log4j/src/java/org/apache/log4j/xml/UtilLoggingXMLDecoder.java Index: UtilLoggingXMLDecoder.java =================================================================== RCS file: /home/cvs/jakarta-log4j/src/java/org/apache/log4j/xml/UtilLoggingXMLDecoder.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- UtilLoggingXMLDecoder.java 2 Nov 2003 19:53:48 -0000 1.3 +++ UtilLoggingXMLDecoder.java 20 Nov 2003 22:09:13 -0000 1.4 @@ -49,25 +49,11 @@ package org.apache.log4j.xml; -import org.apache.log4j.Decoder; -import org.apache.log4j.Level; -import org.apache.log4j.Logger; -import org.apache.log4j.UtilLoggingLevel; -import org.apache.log4j.spi.LocationInfo; -import org.apache.log4j.spi.LoggingEvent; - -import org.w3c.dom.Document; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; - -import org.xml.sax.InputSource; - -import java.io.File; -import java.io.FileReader; import java.io.IOException; +import java.io.InputStreamReader; import java.io.LineNumberReader; import java.io.StringReader; - +import java.net.URL; import java.util.ArrayList; import java.util.HashMap; import java.util.Hashtable; @@ -78,6 +64,17 @@ import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; +import org.apache.log4j.Decoder; +import org.apache.log4j.Level; +import org.apache.log4j.Logger; +import org.apache.log4j.UtilLoggingLevel; +import org.apache.log4j.spi.LocationInfo; +import org.apache.log4j.spi.LoggingEvent; +import org.w3c.dom.Document; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; +import org.xml.sax.InputSource; + /** * Decodes JDK 1.4's java.util.logging package events delivered via XML (using the logger.dtd). @@ -180,12 +177,12 @@ * @return The contents of the file as a String * @throws IOException if an error occurred during the loading process */ - private String loadFileSource(File file) throws IOException { + private String loadFileSource(URL url) throws IOException { LineNumberReader reader = null; StringBuffer buf = new StringBuffer(1024); try { - reader = new LineNumberReader(new FileReader(file)); + reader = new LineNumberReader(new InputStreamReader(url.openStream())); String line = null; @@ -212,8 +209,8 @@ * @return Vector of LoggingEvents * @throws IOException */ - public Vector decode(File file) throws IOException { - String fileContents = loadFileSource(file); + public Vector decode(URL url) throws IOException { + String fileContents = loadFileSource(url); Document doc = parse(fileContents); if (doc == null) { 1.2 +1 -1 jakarta-log4j/tests/src/java/org/apache/log4j/net/XMLDecoderTest.java Index: XMLDecoderTest.java =================================================================== RCS file: /home/cvs/jakarta-log4j/tests/src/java/org/apache/log4j/net/XMLDecoderTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- XMLDecoderTest.java 24 Jun 2003 08:13:24 -0000 1.1 +++ XMLDecoderTest.java 20 Nov 2003 22:09:13 -0000 1.2 @@ -32,7 +32,7 @@ */ public void testDecodeFile() throws Exception { XMLDecoder xmlDecoder = new XMLDecoder(); - List events = xmlDecoder.decode(new File("tests/witness/eventSet.1.xml")); + List events = xmlDecoder.decode(new File("tests/witness/eventSet.1.xml").toURL()); assertTrue("Should have returned at least 418 events: " + events.size(), events.size()==418); }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]