## com.saxonica.stream.watch
Class EventPushingWatch

    java.lang.Object
      com.saxonica.validate.AbstractWatch
          com.saxonica.stream.watch.EventPushingWatch

All Implemented Interfaces:
  Watch

Direct Known Subclasses:
  ApplyTemplatesWatch, ForEachWatch, IterateWatch

    public abstract class EventPushingWatch

extends AbstractWatch

A EvaluatingWatch is a Watch that evaluates an expression based on the nodes encountered in a streamed input document, appending the value of that expression to the Watch for the next expression in the streaming route.

Constructor Summary
`EventPushingWatch(Expression expression, SequenceReceiver result, Stack<XPathContext> contextStack)`

Method Summary
`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()`
`Stack<XPathContext>` `getContextStack()`
`Expression` `getExpression()`
`SequenceReceiver` `getResult()`
`void` `open()` Open the watch.
`void` `setParentExpressionFeed(Feed feed)` Set a feed to be notified when this watch is opened and closed.
`void` `setResult(SequenceReceiver result)`

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

### EventPushingWatch

    public EventPushingWatch(Expression expression,
                             SequenceReceiver result,
                             Stack<XPathContext> contextStack)

Method Detail

### setResult

    public void setResult(SequenceReceiver result)

### getResult

    public SequenceReceiver getResult()

### getExpression

    public Expression getExpression()

### getContext

    public XPathContext getContext()

### getContextStack

    public Stack<XPathContext> getContextStack()

### setParentExpressionFeed

    public void setParentExpressionFeed(Feed feed)

  Set a feed to be notified when this watch is opened and closed. Typically this feed is a ComplexNodeEventFeed, which is responsible for outputting events representing the start and end of constructed elements produced by a parent expression.

  Parameters:
    `feed` - the feed to be notified when this Watch is opened or closed.

### open

    public void open()
              throws XPathException

  Description copied from class: `AbstractWatch`
  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

  Description copied from class: `AbstractWatch`
  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. The default implementation does nothing.

  Specified by:
    `close` in interface `Watch`
  Overrides:
    `close` in class `AbstractWatch`
  Throws:
    `XPathException`

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