Class NewMapStreamer

  • All Implemented Interfaces:
    FeedMaker

    public class NewMapStreamer
    extends StreamingAdjunct
    implements FeedMaker
    Streaming code to implement an xsl:map instruction or map constructor, where each map entry is allowed to be consuming. Based on the code of ForkAdjunct
    • Constructor Detail

      • NewMapStreamer

        public NewMapStreamer()
    • Method Detail

      • computeStreamability

        public PostureAndSweep computeStreamability​(ContextItemStaticInfoEE contextInfo,
                                                    java.util.List<java.lang.String> reasons)
        Compute the posture and sweep of this expression as defined in the W3C streamability specifications. This must be implemented in all subclasses that don't use the general streamability rules.
        Overrides:
        computeStreamability in class StreamingAdjunct
        Parameters:
        contextInfo - Information about the context item type and posture
        reasons - the caller may supply a list, in which case the implementation may add to this
        Returns:
        the posture and sweep of the expression
      • getWatchMaker

        public WatchMaker getWatchMaker​(boolean forGrouping)
                                 throws XPathException
        Description copied from class: StreamingAdjunct
        Get a WatchMaker, a factory class that creates a Watch to evaluate this expression in streaming mode. This method will only be called if the getImplementationMethod() method of the expression includes the value Expression.WATCH_METHOD
        Overrides:
        getWatchMaker in class StreamingAdjunct
        Parameters:
        forGrouping - true if the selected items are being grouped
        Returns:
        a Watchmaker to evaluate the expression, or null if it is not streamable with respect to the specificed argument.
        Throws:
        XPathException - in the event of a failure