net.sf.saxon.dom
Class DOMSender

java.lang.Object
  extended by net.sf.saxon.dom.DOMSender
All Implemented Interfaces:
SourceLocator, LocationProvider, SaxonLocator, SourceLocationProvider, Locator

public class DOMSender
extends Object
implements SaxonLocator, SourceLocationProvider

DOMSender.java: pseudo-SAX driver for a DOM source document. This class takes an existing DOM Document and walks around it in a depth-first traversal, calling a Receiver to process the nodes as it does so


Field Summary
protected  Node root
           
protected  String systemId
           
 
Constructor Summary
DOMSender()
           
 
Method Summary
 int getColumnNumber()
           
 int getColumnNumber(long locationId)
          Get the column number within the document, entity, or module containing a particular location
 int getLineNumber()
           
 int getLineNumber(long locationId)
          Get the line number within the document, entity or module containing a particular location
 String getPublicId()
           
 String getSystemId()
           
 String getSystemId(long locationId)
          Get the URI of the document, entity, or module containing a particular location
 void send()
          Walk a document (traversing the nodes depth first)
 void setPipelineConfiguration(PipelineConfiguration pipe)
          Set the pipeline configuration
 void setReceiver(Receiver receiver)
          Set the receiver.
 void setStartNode(Node start)
          Set the DOM Document that will be walked
 void setSystemId(String systemId)
          Set the systemId of the source document (which will also be used for the destination)
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

root

protected Node root

systemId

protected String systemId
Constructor Detail

DOMSender

public DOMSender()
Method Detail

setPipelineConfiguration

public void setPipelineConfiguration(PipelineConfiguration pipe)
Set the pipeline configuration

Parameters:
pipe - the pipeline configuration

setReceiver

public void setReceiver(Receiver receiver)
Set the receiver.

Parameters:
receiver - The object to receive content events.

setStartNode

public void setStartNode(Node start)
Set the DOM Document that will be walked

Parameters:
start - the root node from which the tree walk will start

setSystemId

public void setSystemId(String systemId)
Set the systemId of the source document (which will also be used for the destination)

Parameters:
systemId - the systemId of the source document

send

public void send()
          throws XPathException
Walk a document (traversing the nodes depth first)

Throws:
XPathException - On any error in the document

getColumnNumber

public int getColumnNumber()
Specified by:
getColumnNumber in interface SourceLocator
Specified by:
getColumnNumber in interface Locator

getLineNumber

public int getLineNumber()
Specified by:
getLineNumber in interface SourceLocator
Specified by:
getLineNumber in interface Locator

getPublicId

public String getPublicId()
Specified by:
getPublicId in interface SourceLocator
Specified by:
getPublicId in interface Locator

getSystemId

public String getSystemId()
Specified by:
getSystemId in interface SourceLocator
Specified by:
getSystemId in interface Locator

getSystemId

public String getSystemId(long locationId)
Description copied from interface: LocationProvider
Get the URI of the document, entity, or module containing a particular location

Specified by:
getSystemId in interface LocationProvider
Parameters:
locationId - identifier of the location in question (as passed down the Receiver pipeline)
Returns:
the URI of the document, XML entity or module. For a SourceLocationProvider this will be the URI of the document or entity (the URI that would be the base URI if there were no xml:base attributes). In other cases it may identify the query or stylesheet module currently being executed.

getLineNumber

public int getLineNumber(long locationId)
Description copied from interface: LocationProvider
Get the line number within the document, entity or module containing a particular location

Specified by:
getLineNumber in interface LocationProvider
Parameters:
locationId - identifier of the location in question (as passed down the Receiver pipeline)
Returns:
the line number within the document, entity or module, or -1 if no information is available.

getColumnNumber

public int getColumnNumber(long locationId)
Description copied from interface: LocationProvider
Get the column number within the document, entity, or module containing a particular location

Specified by:
getColumnNumber in interface LocationProvider
Parameters:
locationId - identifier of the location in question (as passed down the Receiver pipeline)
Returns:
the column number within the document, entity, or module, or -1 if this is not available


Copyright (c) Saxonica Limited. All rights reserved.