com.saxonica.stream.watch

## Class ComposingWatch

- java.lang.Object
- - com.saxonica.validate.AbstractWatch
  - - com.saxonica.stream.watch.ComposingWatch

- All Implemented Interfaces:
    Watch
  Direct Known Subclasses:
    CopyOfWatch, CountWatch, ForEachComposingWatch, SimpleContentWatch, StringValueWatch, TypedValueWatch, VoidWatch

      public abstract class ComposingWatch
      extends AbstractWatch

  A ComposingWatch is a Watch that evaluates an expression based on the nodes encountered in a streamed input document, passing the value of that expression as a sequence of items to an ItemFeed.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ComposingWatch(Feed result, Stack<XPathContext> contextStack)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` The close() method is called immediately before the Watch is destroyed, that is, when the element whose declaration scopes the constraint implemented by this Watch goes out of scope.
    `XPathContext` | `getContext()` Get the dynamic context (the top frame of the context stack)
    `Stack<XPathContext>` | `getContextStack()` Get the context stack
    `Feed` | `getResult()`
    `void` | `open()` Open the watch.

    - ### Methods inherited from class com.saxonica.validate.AbstractWatch

      `getAnchorNode, getNamespaceResolver, getPipelineConfiguration, getSelection, notifySelectedLeafNode, setAnchorNode, setNamespaceResolver, setPipelineConfiguration, setSelection`

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

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

    - ### Methods inherited from interface com.saxonica.stream.watch.Watch

      `endSelectedParentNode, startSelectedParentNode`

- - ### Constructor Detail

    - #### ComposingWatch

          public ComposingWatch(Feed result,
                        Stack<XPathContext> contextStack)

  - ### Method Detail

    - #### getResult

          public Feed getResult()

    - #### getContext

          public XPathContext getContext()

      Get the dynamic context (the top frame of the context stack)
      Returns:
        the dynamic context

    - #### getContextStack

          public Stack<XPathContext> getContextStack()

      Get the context stack
      Returns:
        the context stack

    - #### open

          public void open()
                    throws XPathException

      Open the watch. This is done at the point where it first starts watching for nodes that match the selection.
      Specified by:
        `open` in interface `Watch`
      Overrides:
        `open` in class `AbstractWatch`
      Throws:
        `XPathException`

    - #### close

          public void close()
                     throws XPathException

      The close() method is called immediately before the Watch is destroyed, that is, when the element whose declaration scopes the constraint implemented by this Watch goes out of scope.
      Specified by:
        `close` in interface `Watch`
      Overrides:
        `close` in class `AbstractWatch`
      Throws:
        `XPathException`

Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.