You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by mm...@apache.org on 2001/02/02 19:00:37 UTC
cvs commit: xml-xalan/java/compat_src/org/apache/xalan/xslt XSLTInputSource.java XSLTResultTarget.java
mmidy 01/02/02 10:00:34
Modified: java/compat_src/org/apache/xalan/xslt XSLTInputSource.java
XSLTResultTarget.java
Log:
Implement some more methods for compatibility
Revision Changes Path
1.3 +42 -19 xml-xalan/java/compat_src/org/apache/xalan/xslt/XSLTInputSource.java
Index: XSLTInputSource.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/compat_src/org/apache/xalan/xslt/XSLTInputSource.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- XSLTInputSource.java 2001/01/19 18:48:52 1.2
+++ XSLTInputSource.java 2001/02/02 18:00:29 1.3
@@ -179,10 +179,12 @@
* XML document or XSL stylesheet.
* @see #XSLTInputSource(Node)
* @see java.io.Reader
- *
+ */
public void setNode (Node node)
{
- this.node = node;
+ if (domSource == null)
+ domSource = new DOMSource();
+ domSource.setNode(node);
}
/**
@@ -190,13 +192,16 @@
*
* @return The DOM node containing the document, or null if none was supplied.
* @see #XSLTInputSource(Node)
- *
+ */
public Node getNode ()
{
- return node;
+ if (domSource != null)
+ return domSource.getNode();
+ else
+ return null;
}
- private Node node = null;
+
/**
* Set the character encoding, if known.
@@ -241,10 +246,12 @@
* @param characterStream The character stream containing the
* XML document or other entity.
* @see java.io.Reader
- *
+ */
public void setCharacterStream (Reader characterStream)
{
- this.characterStream = characterStream;
+ if (streamSource == null)
+ streamSource = new StreamSource();
+ streamSource.setReader(characterStream);
}
@@ -252,22 +259,33 @@
* Get the character stream for this input source.
*
* @return The character stream, or null if none was supplied.
- *
+ */
public Reader getCharacterStream ()
{
- return characterStream;
+ if (streamSource != null)
+ return streamSource.getReader();
+ else
+ return null;
}
- private Reader characterStream = null;
+
/**
* Set the base ID (URL or system ID) from where URLs
* will be resolved.
*
* @param baseID Base URL for this.
*/
- public void setSystemId(String baseID) {
- this.baseID = baseID;
+ public void setSystemId(String baseID)
+ {
+ this.baseID = baseID;
+
+ if (saxSource != null)
+ saxSource.setSystemId(baseID);
+ else if (domSource != null)
+ domSource.setSystemId(baseID);
+ else if (streamSource != null)
+ streamSource.setSystemId(baseID);
}
/**
@@ -294,9 +312,12 @@
* can be resolved.</p>
*
* @param inputStream A valid InputStream reference to an XML stream.
- *
- public void setInputStream(InputStream inputStream) {
- this.inputStream = inputStream;
+ */
+ public void setInputStream(InputStream inputStream)
+ {
+ if (streamSource == null)
+ streamSource = new StreamSource();
+ streamSource.setInputStream(inputStream);
}
/**
@@ -304,13 +325,15 @@
*
* @return The byte stream that was set with setByteStream, or null
* if setByteStream or the ByteStream constructor was not called.
- *
+ */
public InputStream getInputStream() {
- return inputStream;
+ if (streamSource != null)
+ return streamSource.getInputStream();
+ else
+ return null;
}
- private InputStream inputStream = null;
- */
+
/**
* Get the Result object associated with this XSLTResultTarget object .
*
1.3 +37 -26 xml-xalan/java/compat_src/org/apache/xalan/xslt/XSLTResultTarget.java
Index: XSLTResultTarget.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/compat_src/org/apache/xalan/xslt/XSLTResultTarget.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- XSLTResultTarget.java 2001/01/19 18:48:53 1.2
+++ XSLTResultTarget.java 2001/02/02 18:00:30 1.3
@@ -84,7 +84,7 @@
{
private StreamResult sr = null;
- private DOMResult saxResult = null;
+ private SAXResult saxResult = null;
private DOMResult dr = null;
@@ -181,9 +181,7 @@
*/
public XSLTResultTarget(DocumentHandler handler)
{
- SAXResult saxResult = new SAXResult();
- if (handler instanceof ParserAdapter)
- saxResult.setHandler(((ParserAdapter)handler).getContentHandler());
+ SAXResult saxResult = new SAXResult();
setDocumentHandler(handler);
}
@@ -194,10 +192,12 @@
* @param fileName The system identifier as a string.
*
* @see #XSLTResultTarget(String)
- *
+ */
public void setFileName (String fileName) // File?
{
- this.fileName = fileName;
+ if (sr == null)
+ sr = new StreamResult();
+ sr.setSystemId(fileName);
}
@@ -255,6 +255,12 @@
public void setDocumentHandler (DocumentHandler handler)
{
this.formatterListener = handler;
+ if (handler instanceof ParserAdapter)
+ {
+ if (saxResult == null)
+ saxResult = new SAXResult();
+ saxResult.setHandler(((ParserAdapter)handler).getContentHandler());
+ }
}
/**
@@ -315,9 +321,11 @@
*
* @param node The node to which the transformation
* will be appended.
- *
+ */
public void setByteStream(OutputStream byteStrm) {
- this.byteStream = byteStrm;
+ if (sr == null)
+ sr = new StreamResult();
+ sr.setOutputStream(byteStrm);
}
/**
@@ -344,10 +352,15 @@
* and warnings, or to resolve relative output identifiers.</p>
*
* @param systemId The system identifier as a URI string.
- *
+ */
public void setSystemId(String systemID)
{
- systemId = systemID;
+ if (sr != null)
+ sr.setSystemId(systemID);
+ else if (dr != null)
+ dr.setSystemId(systemID);
+ else if (saxResult != null)
+ saxResult.setSystemId(systemID);
}
/**
@@ -355,10 +368,17 @@
*
* @return The system identifier that was set with setSystemId,
* or null if setSystemId was not called.
- *
+ */
public String getSystemId()
{
- return systemId;
+ if (sr != null)
+ return sr.getSystemId();
+ else if (dr != null)
+ dr.getSystemId();
+ else if (saxResult != null)
+ saxResult.getSystemId();
+
+ return null;
}
/**
@@ -370,9 +390,11 @@
* such as when using a StringWriter.
*
* @param writer A valid Writer reference.
- *
- public void setWriter(Writer writer) {
- this.characterStream = writer;
+ */
+ public void setCharacterStream(Writer writer) {
+ if (sr == null)
+ sr = new StreamResult();
+ sr.setWriter(writer);
}
/**
@@ -387,18 +409,7 @@
else
return null;
}
- //////////////////////////////////////////////////////////////////////
- // Internal state.
- //////////////////////////////////////////////////////////////////////
-/*
- private String fileName;
- private OutputStream byteStream;
-
- private Writer characterStream;
- private Node node;
- private String systemId;
-*/
/**
* Get the Result object associated with this XSLTResultTarget object .