KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > nu > xom > xslt > XOMSource


1 /* Copyright 2002-2004 Elliotte Rusty Harold
2    
3    This library is free software; you can redistribute it and/or modify
4    it under the terms of version 2.1 of the GNU Lesser General Public
5    License as published by the Free Software Foundation.
6    
7    This library is distributed in the hope that it will be useful,
8    but WITHOUT ANY WARRANTY; without even the implied warranty of
9    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10    GNU Lesser General Public License for more details.
11    
12    You should have received a copy of the GNU Lesser General Public
13    License along with this library; if not, write to the
14    Free Software Foundation, Inc., 59 Temple Place, Suite 330,
15    Boston, MA 02111-1307 USA
16    
17    You can contact Elliotte Rusty Harold by sending e-mail to
18    elharo@metalab.unc.edu. Please include the word "XOM" in the
19    subject line. The XOM home page is located at http://www.xom.nu/
20 */

21
22 package nu.xom.xslt;
23
24 import javax.xml.transform.sax.SAXSource JavaDoc;
25
26 import nu.xom.Document;
27 import nu.xom.Nodes;
28
29 import org.xml.sax.InputSource JavaDoc;
30 import org.xml.sax.XMLReader JavaDoc;
31
32 /**
33  * @author Elliotte Rusty Harold
34  * @version 1.0
35  *
36  */

37 class XOMSource extends SAXSource JavaDoc {
38     
39
40     private Nodes source;
41
42     
43     /**
44      * <p>
45      * Creates a new <code>XOMSource</code> object from a
46      * <code>Document</code>. The <code>Document</code> object
47      * is read but not changed by any method in this class.
48      * </p>
49      *
50      * @param source
51      */

52     XOMSource(Document source) {
53         this.source = new Nodes(source);
54     }
55     
56     
57     /**
58      * <p>
59      * Creates a new <code>XOMSource</code> object
60      * from a <code>Nodes</code>.
61      * </p>
62      *
63      * @param source
64      */

65     public XOMSource(Nodes source) {
66         this.source = source;
67     }
68
69     
70     public InputSource JavaDoc getInputSource() {
71         return new XOMInputSource(source);
72     }
73
74     
75     public XMLReader JavaDoc getXMLReader() {
76         return new XOMReader();
77     }
78     
79     
80     public String JavaDoc getSystemId() {
81         if (this.source.size() == 0) return null;
82         else return this.source.get(0).getBaseURI();
83     }
84
85     
86 }
87
Popular Tags