Class ElementNameTracker

  • All Implemented Interfaces:
    PullProvider

    public class ElementNameTracker
    extends PullFilter
    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
    • Constructor Detail

      • ElementNameTracker

        public ElementNameTracker​(PullProvider base)
    • Method Detail

      • next

        public PullEvent next()
                       throws XPathException
        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 interface PullProvider
        Overrides:
        next in class PullFilter
        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

        public NodeName getNodeName()
        Get the node name identifying the name of the current node. This method can be used after the PullEvent.START_ELEMENT, PullEvent.PROCESSING_INSTRUCTION, PullEvent.ATTRIBUTE, or PullEvent.NAMESPACE events. With some PullProvider implementations, including this one, it can also be used after PullEvent.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 interface PullProvider
        Overrides:
        getNodeName in class PullFilter
        Returns:
        the node name. This can be used to obtain the prefix, local name, and namespace URI from the name pool.