Package com.saxonica.ee.stream.adjunct

## Class ComposingAdjunct

- java.lang.Object
- - com.saxonica.ee.stream.adjunct.StreamingAdjunct
  - - com.saxonica.ee.stream.adjunct.ComposingAdjunct

- Direct Known Subclasses:
    `AtomizerAdjunct`, `CopyOfAdjunct`, `SnapshotFnStreamer`, `StringFnStreamer`

      public abstract class ComposingAdjunct
      extends StreamingAdjunct

  Watch factory class for an class that composes items from sequences of events: examples are copy-of(), data(), and string().

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ComposingAdjunct()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `WatchMaker` | `getWatchMaker​(boolean forGrouping)` | Get a WatchMaker, a factory class that creates a Watch to evaluate this expression in streaming mode.
    `abstract ItemFeed` | `makeComposingAction​(WatchManager watchManager, ItemFeed out, XPathContext context)` | Method that must be implemented in subclasses to supply the feed to which the composed items are sent

    - ### Methods inherited from class com.saxonica.ee.stream.adjunct.StreamingAdjunct

      `computeStreamability, findConsumingArg, getConfiguration, getDefaultFeedMaker, getExpression, getFeedMaker, makeStreamingAdjunct, setConfiguration, setExpression, toStreamingPattern`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ComposingAdjunct

          public ComposingAdjunct()

  - ### Method Detail

    - #### makeComposingAction

          public abstract ItemFeed makeComposingAction​(WatchManager watchManager,
                                                       ItemFeed out,
                                                       XPathContext context)

      Method that must be implemented in subclasses to supply the feed to which the composed items are sent
      Parameters:
        `watchManager` - the watch manager
        `out` - the destination of composed items
        `context` - XPath evaluation context
      Returns:
        a the relevant ItemFeed

    - #### 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