com.jclark.xsl.sax2
Class XMLProcessorImpl

java.lang.Object
  extended by com.jclark.xsl.sax2.XMLProcessorImpl
All Implemented Interfaces:
XMLProcessorEx, XMLProcessor

public class XMLProcessorImpl
extends java.lang.Object
implements XMLProcessorEx

Builds an object model from a SAX event stream


Constructor Summary
XMLProcessorImpl()
           
XMLProcessorImpl(org.xml.sax.XMLReader reader)
          construct with a SAX2 XML Reader we may wish to re-use for resolving e.g xsl:include
 
Method Summary
static SAXTwoOMBuilder createBuilder(java.lang.String systemId, int documentIndex, LoadContext context, NameTable nameTable)
           
 Result createResult(Node baseNode, int documentIndex, LoadContext loadContext, Node[] rootNode)
           
 SAXTwoOMBuilder getConfiguredOMBuilder(java.lang.String systemId, int documentIndex, LoadContext context, NameTable nameTable)
           
 Node load(org.xml.sax.InputSource source, int documentIndex, LoadContext context, NameTable nameTable)
          parse the xml stream at source building an object model of all its nodes
 Node load(java.net.URL url, int documentIndex, LoadContext context, NameTable nameTable)
          construct an object model from the XML source at the given URL.
 void setErrorHandler(org.xml.sax.ErrorHandler errorHandler)
           
 void setXMLReader(org.xml.sax.XMLReader reader)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XMLProcessorImpl

public XMLProcessorImpl()

XMLProcessorImpl

public XMLProcessorImpl(org.xml.sax.XMLReader reader)
construct with a SAX2 XML Reader we may wish to re-use for resolving e.g xsl:include

Method Detail

setXMLReader

public void setXMLReader(org.xml.sax.XMLReader reader)

setErrorHandler

public void setErrorHandler(org.xml.sax.ErrorHandler errorHandler)
Specified by:
setErrorHandler in interface XMLProcessorEx

load

public Node load(org.xml.sax.InputSource source,
                 int documentIndex,
                 LoadContext context,
                 NameTable nameTable)
          throws java.io.IOException,
                 XSLException
parse the xml stream at source building an object model of all its nodes

Specified by:
load in interface XMLProcessorEx
Parameters:
source - the input to our parser
documentIndex - so we can distinguish between nodes in different docs
context - ??
nameTable - we intern names to avoid wasting menmory
Returns:
the document root
Throws:
java.io.IOException
XSLException

load

public Node load(java.net.URL url,
                 int documentIndex,
                 LoadContext context,
                 NameTable nameTable)
          throws java.io.IOException,
                 XSLException
Description copied from interface: XMLProcessor
construct an object model from the XML source at the given URL.

Specified by:
load in interface XMLProcessor
Parameters:
url - the source XML
documentIndex - an internal identifier for this document
nameTable - initial set of in-scope namespace bindings
Returns:
the document root
Throws:
java.io.IOException
XSLException

getConfiguredOMBuilder

public SAXTwoOMBuilder getConfiguredOMBuilder(java.lang.String systemId,
                                              int documentIndex,
                                              LoadContext context,
                                              NameTable nameTable)
Specified by:
getConfiguredOMBuilder in interface XMLProcessorEx

createBuilder

public static SAXTwoOMBuilder createBuilder(java.lang.String systemId,
                                            int documentIndex,
                                            LoadContext context,
                                            NameTable nameTable)

createResult

public Result createResult(Node baseNode,
                           int documentIndex,
                           LoadContext loadContext,
                           Node[] rootNode)
                    throws XSLException
Specified by:
createResult in interface XMLProcessor
Throws:
XSLException