KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > gnu > kawa > sax > KawaXMLReader


1 // Copyright (c) 2002 Per M.A. Bothner.
2
// This is free software; for terms and warranty disclaimer see ./COPYING.
3

4 package gnu.kawa.sax;
5 import org.xml.sax.*;
6 import gnu.xml.*;
7 import gnu.kawa.xml.XMLParser;
8 import java.io.*;
9 import gnu.text.*;
10
11 /** An implementation of SAX2 XMLReader.
12  */

13
14 public class KawaXMLReader extends ContentConsumer
15 implements XMLReader, Locator
16 {
17   XMLParser xmlParser;
18
19   public boolean getFeature (String JavaDoc name)
20   {
21     return false;
22   }
23
24   public void setFeature (String JavaDoc name, boolean value)
25   {
26   }
27
28   public Object JavaDoc getProperty (String JavaDoc name)
29   {
30     return null;
31   }
32
33   public void setProperty (String JavaDoc name, Object JavaDoc value)
34   {
35   }
36
37   public void setEntityResolver (EntityResolver resolver)
38   {
39   }
40
41   public EntityResolver getEntityResolver ()
42   {
43     return null;
44   }
45
46   public void setDTDHandler (DTDHandler handler)
47   {
48   }
49
50   public DTDHandler getDTDHandler ()
51   {
52     return null;
53   }
54
55   ErrorHandler errorHandler;
56
57
58   public void setErrorHandler (ErrorHandler handler)
59   {
60     errorHandler = handler;
61   }
62
63   public ErrorHandler getErrorHandler ()
64   {
65     return errorHandler;
66   }
67
68   public void parse (InputSource input)
69     throws IOException, SAXException
70   {
71     Reader reader = input.getCharacterStream();
72     if (reader == null)
73       reader = new InputStreamReader(input.getByteStream());
74     SourceMessages messages = new SourceMessages();
75     XMLParser parser = new XMLParser(new LineBufferedReader(reader),
76                      messages, this);
77     beginDocument();
78     parser.parse();
79     String JavaDoc err = messages.toString(20);
80     if (err != null)
81       throw new SAXParseException(err, this);
82     endDocument();
83   }
84
85   public void parse (String JavaDoc systemId)
86   {
87   }
88
89   public String JavaDoc getPublicId()
90   {
91     return xmlParser.getPublicId();
92   }
93
94   public String JavaDoc getSystemId()
95   {
96     return xmlParser.getSystemId();
97   }
98
99   public int getColumnNumber()
100   {
101     int column = xmlParser.getColumnNumber();
102     return column <= 0 ? -1 : column + 1;
103   }
104
105   public int getLineNumber()
106   {
107     int line = xmlParser.getLineNumber();
108     return line <= 0 ? -1 : line + 1;
109   }
110 }
111
Popular Tags