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]