| java.lang.Object org.apache.xpath.SourceTreeManager
SourceTreeManager | public class SourceTreeManager (Code) | | This class bottlenecks all management of source trees. The methods
in this class should allow easy garbage collection of source
trees (not yet!), and should centralize parsing for those source trees.
|
Method Summary | |
public String | findURIFromDoc(int owner) Given a document, find the URL associated with that document.
Parameters: owner - Document that was previously processed by this liaison. | public int | getNode(Source source) Given a Source object, find the node associated with it.
Parameters: source - The Source object to act as the key. | public int | getSourceTree(String base, String urlString, SourceLocator locator, XPathContext xctxt) Get the source tree from the a base URL and a URL string.
Parameters: base - The base URI to use if the urlString is relative. Parameters: urlString - An absolute or relative URL string. Parameters: locator - The location of the caller, for diagnostic purposes. | public int | getSourceTree(Source source, SourceLocator locator, XPathContext xctxt) Get the source tree from the input source.
Parameters: source - The Source object that should identify the desired node. Parameters: locator - The location of the caller, for diagnostic purposes. | public URIResolver | getURIResolver() Get the object that will be used to resolve URIs used in
document(), etc. | public static XMLReader | getXMLReader(Source inputSource, SourceLocator locator) This method returns the SAX2 parser to use with the InputSource
obtained from this URI.
It may return null if any SAX2-conformant XML parser can be used,
or if getInputSource() will also return null. | public int | parseToNode(Source source, SourceLocator locator, XPathContext xctxt) Try to create a DOM source tree from the input source.
Parameters: source - The Source object that identifies the source node. Parameters: locator - The location of the caller, for diagnostic purposes. | public void | putDocumentInCache(int n, Source source) Put the source tree root node in the document cache. | public void | removeDocumentFromCache(int n) JJK: Support kluge in ElemForEach.
TODO: This function is highly dangerous. | public void | reset() Reset the list of SourceTree objects that this manager manages. | public Source | resolveURI(String base, String urlString, SourceLocator locator) This will be called by the processor when it encounters
an xsl:include, xsl:import, or document() function.
Parameters: base - The base URI that should be used. Parameters: urlString - Value from an xsl:import or xsl:include's href attribute,or a URI specified in the document() function. | public void | setURIResolver(URIResolver resolver) Set an object that will be used to resolve URIs used in
document(), etc. |
m_uriResolver | URIResolver m_uriResolver(Code) | | The TrAX URI resolver used to obtain source trees.
|
findURIFromDoc | public String findURIFromDoc(int owner)(Code) | | Given a document, find the URL associated with that document.
Parameters: owner - Document that was previously processed by this liaison. The base URI of the owner argument. |
getNode | public int getNode(Source source)(Code) | | Given a Source object, find the node associated with it.
Parameters: source - The Source object to act as the key. The node that is associated with the Source, or null if not found. |
getSourceTree | public int getSourceTree(String base, String urlString, SourceLocator locator, XPathContext xctxt) throws TransformerException(Code) | | Get the source tree from the a base URL and a URL string.
Parameters: base - The base URI to use if the urlString is relative. Parameters: urlString - An absolute or relative URL string. Parameters: locator - The location of the caller, for diagnostic purposes. should be a non-null reference to the node identified by the base and urlString. throws: TransformerException - If the URL can not resolve to a node. |
getSourceTree | public int getSourceTree(Source source, SourceLocator locator, XPathContext xctxt) throws TransformerException(Code) | | Get the source tree from the input source.
Parameters: source - The Source object that should identify the desired node. Parameters: locator - The location of the caller, for diagnostic purposes. non-null reference to a node. throws: TransformerException - if the Source argument can't be resolved to a node. |
getURIResolver | public URIResolver getURIResolver()(Code) | | Get the object that will be used to resolve URIs used in
document(), etc.
An object that implements the URIResolver interface,or null. |
getXMLReader | public static XMLReader getXMLReader(Source inputSource, SourceLocator locator) throws TransformerException(Code) | | This method returns the SAX2 parser to use with the InputSource
obtained from this URI.
It may return null if any SAX2-conformant XML parser can be used,
or if getInputSource() will also return null. The parser must
be free for use (i.e.
not currently in use for another parse().
Parameters: inputSource - The value returned from the URIResolver. a SAX2 XMLReader to use to resolve the inputSource argument. Parameters: locator - The location of the original caller, for diagnostic purposes. throws: TransformerException - if the reader can not be created. |
parseToNode | public int parseToNode(Source source, SourceLocator locator, XPathContext xctxt) throws TransformerException(Code) | | Try to create a DOM source tree from the input source.
Parameters: source - The Source object that identifies the source node. Parameters: locator - The location of the caller, for diagnostic purposes. non-null reference to node identified by the source argument. throws: TransformerException - if the source argument can not be resolved to a source node. |
putDocumentInCache | public void putDocumentInCache(int n, Source source)(Code) | | Put the source tree root node in the document cache.
TODO: This function needs to be a LOT more sophisticated.
Parameters: n - The node to cache. Parameters: source - The Source object to cache. |
removeDocumentFromCache | public void removeDocumentFromCache(int n)(Code) | | JJK: Support kluge in ElemForEach.
TODO: This function is highly dangerous. Cache management must be improved.
Parameters: n - The node to remove. |
reset | public void reset()(Code) | | Reset the list of SourceTree objects that this manager manages.
|
resolveURI | public Source resolveURI(String base, String urlString, SourceLocator locator) throws TransformerException, IOException(Code) | | This will be called by the processor when it encounters
an xsl:include, xsl:import, or document() function.
Parameters: base - The base URI that should be used. Parameters: urlString - Value from an xsl:import or xsl:include's href attribute,or a URI specified in the document() function. a Source that can be used to process the resource. throws: IOException - throws: TransformerException - |
setURIResolver | public void setURIResolver(URIResolver resolver)(Code) | | Set an object that will be used to resolve URIs used in
document(), etc.
Parameters: resolver - An object that implements the URIResolver interface,or null. |
|
|