Package com.saxonica.ee.stream.adjunct
Class NewMapStreamer
- java.lang.Object
-
- com.saxonica.ee.stream.adjunct.StreamingAdjunct
-
- com.saxonica.ee.stream.adjunct.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 Summary
Constructors Constructor Description NewMapStreamer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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.WatchMaker
getWatchMaker(boolean forGrouping)
Get a WatchMaker, a factory class that creates a Watch to evaluate this expression in streaming mode.ItemFeed
makeItemFeed(WatchManager watchManager, ItemFeed out, XPathContext context)
-
Methods inherited from class com.saxonica.ee.stream.adjunct.StreamingAdjunct
emptyAdjunctMap, findConsumingArg, genId, getConfiguration, getDefaultFeedMaker, getExpression, getFeedMaker, makeStreamingAdjunct, setConfiguration, setExpression, toStreamingPattern
-
-
-
-
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 classStreamingAdjunct
- Parameters:
contextInfo
- Information about the context item type and posturereasons
- 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 valueExpression.WATCH_METHOD
- Overrides:
getWatchMaker
in classStreamingAdjunct
- 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
-
makeItemFeed
public ItemFeed makeItemFeed(WatchManager watchManager, ItemFeed out, XPathContext context) throws XPathException
- Specified by:
makeItemFeed
in interfaceFeedMaker
- Throws:
XPathException
-
-