Package com.saxonica.xqj.pull
Class ElementNameTracker
java.lang.Object
net.sf.saxon.pull.PullFilter
com.saxonica.xqj.pull.ElementNameTracker
- All Implemented Interfaces:
PullProvider
This is a filter that can be added to a pull pipeline to remember element names so that
they are available immediately after the END_ELEMENT event is notified
-
Field Summary
Fields inherited from class net.sf.saxon.pull.PullFilter
currentEvent
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionGet the node name identifying the name of the current node.next()
Get the next event.Methods inherited from class net.sf.saxon.pull.PullFilter
close, current, getAtomicValue, getAttributes, getNamePool, getNamespaceDeclarations, getPipelineConfiguration, getSchemaType, getSourceLocator, getStringValue, getUnderlyingProvider, getUnparsedEntities, setPipelineConfiguration, skipToMatchingEnd
-
Constructor Details
-
ElementNameTracker
-
-
Method Details
-
next
Get the next event.Note that a subclass that overrides this method is responsible for ensuring that current() works properly. This can be achieved by setting the field currentEvent to the event returned by any call on next().
- Specified by:
next
in interfacePullProvider
- Overrides:
next
in classPullFilter
- Returns:
- an integer code indicating the type of event. The code
PullEvent.END_OF_INPUT
is returned at the end of the sequence. - Throws:
XPathException
- if a dynamic error occurs
-
getNodeName
Get the node name identifying the name of the current node. This method can be used after thePullEvent.START_ELEMENT
,PullEvent.PROCESSING_INSTRUCTION
,PullEvent.ATTRIBUTE
, orPullEvent.NAMESPACE
events. With some PullProvider implementations, including this one, it can also be used afterPullEvent.END_ELEMENT
: in fact, that is the main purpose of this class. If called at other times, the result is undefined and may result in an IllegalStateException. If called when the current node is an unnamed namespace node (a node representing the default namespace) the returned value is -1.- Specified by:
getNodeName
in interfacePullProvider
- Overrides:
getNodeName
in classPullFilter
- Returns:
- the node name. This can be used to obtain the prefix, local name, and namespace URI from the name pool.
-