Package net.sf.saxon.event
Class LocationCopier
- java.lang.Object
-
- net.sf.saxon.event.SequenceReceiver
-
- net.sf.saxon.event.ProxyReceiver
-
- net.sf.saxon.event.LocationCopier
-
- All Implemented Interfaces:
javax.xml.transform.Result,CopyInformee,LocationProvider,Receiver
public class LocationCopier extends ProxyReceiver implements CopyInformee, LocationProvider
A Receiver that can be inserted into an event pipeline to copy location information. The class acts as a LocationProvider, so it supports getSystemId() and getLineNumber() methods; the location returned can vary for each node, and is set by the class generating the events. The class is used when it is necessary to copy a subtree along with its location information; for example, when copying an inline schema within a stylesheet to a separate schema document.
-
-
Field Summary
-
Fields inherited from class net.sf.saxon.event.ProxyReceiver
nextReceiver
-
Fields inherited from class net.sf.saxon.event.SequenceReceiver
pipelineConfiguration, previousAtomic, systemId
-
-
Constructor Summary
Constructors Constructor Description LocationCopier()LocationCopier(Receiver nextReceiver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetColumnNumber(long locationId)Get the column number within the document or module containing a particular locationintgetLineNumber()Get the line numberintgetLineNumber(long locationId)Get the line number within the document or module containing a particular locationjava.lang.StringgetSystemId(long locationId)Get the URI of the document or module containing a particular locationvoidnotifyElementNode(NodeInfo element)Provide information about the node being copied.voidsetPipelineConfiguration(PipelineConfiguration pipe)Set the pipeline configuration-
Methods inherited from class net.sf.saxon.event.ProxyReceiver
append, attribute, characters, close, comment, endDocument, endElement, getConfiguration, getDocumentLocator, getNamePool, getUnderlyingReceiver, namespace, open, processingInstruction, setSystemId, setUnderlyingReceiver, setUnparsedEntity, startContent, startDocument, startElement
-
Methods inherited from class net.sf.saxon.event.SequenceReceiver
getPipelineConfiguration, getSystemId
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.saxon.event.Receiver
attribute, characters, close, comment, endDocument, endElement, getPipelineConfiguration, namespace, open, processingInstruction, setSystemId, setUnparsedEntity, startContent, startDocument, startElement
-
-
-
-
Constructor Detail
-
LocationCopier
public LocationCopier()
-
LocationCopier
public LocationCopier(Receiver nextReceiver)
-
-
Method Detail
-
setPipelineConfiguration
public void setPipelineConfiguration(PipelineConfiguration pipe)
Description copied from interface:ReceiverSet the pipeline configuration- Specified by:
setPipelineConfigurationin interfaceReceiver- Overrides:
setPipelineConfigurationin classProxyReceiver- Parameters:
pipe- the pipeline configuration
-
notifyElementNode
public void notifyElementNode(NodeInfo element)
Provide information about the node being copied. This method is called immediately before the startElement call for the element node in question.- Specified by:
notifyElementNodein interfaceCopyInformee- Parameters:
element- the node being copied, which must be an element node
-
getLineNumber
public int getLineNumber()
Get the line number- Returns:
- the line number most recently set
-
getSystemId
public java.lang.String getSystemId(long locationId)
Description copied from interface:LocationProviderGet the URI of the document or module containing a particular location- Specified by:
getSystemIdin interfaceLocationProvider- Parameters:
locationId- identifier of the location in question (as passed down the Receiver pipeline)- Returns:
- the URI of the document or module.
-
getLineNumber
public int getLineNumber(long locationId)
Description copied from interface:LocationProviderGet the line number within the document or module containing a particular location- Specified by:
getLineNumberin interfaceLocationProvider- Parameters:
locationId- identifier of the location in question (as passed down the Receiver pipeline)- Returns:
- the line number within the document or module.
-
getColumnNumber
public int getColumnNumber(long locationId)
Description copied from interface:LocationProviderGet the column number within the document or module containing a particular location- Specified by:
getColumnNumberin interfaceLocationProvider- Parameters:
locationId- identifier of the location in question (as passed down the Receiver pipeline)- Returns:
- the column number within the document or module, or -1 if this is not available
-
-