com.saxonica.stream.watch
Class CountWatch
java.lang.Object
com.saxonica.validate.AbstractWatch
com.saxonica.stream.watch.ComposingWatch
com.saxonica.stream.watch.CountWatch
- All Implemented Interfaces:
- Watch
- Direct Known Subclasses:
- EmptyWatch, ExistsWatch
public class CountWatch
- extends ComposingWatch
This class is used when a streamed template requests evaluation of the count()
function applied to a streamable pattern
Field Summary |
protected long |
count
|
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. |
void |
endSelectedParentNode(int locationId)
Signal that the endElement event has occurred for the element whose startElement
event caused the Watch to be activated. |
void |
notifySelectedLeafNode(FleetingNode node,
int locationId)
Signal that a node (other than an element) that matches the selection
has been found. |
Receiver |
startSelectedParentNode(FleetingNode node,
int locationId)
Signal that an element has been found that matches the selection that this
Watch is looking for. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
count
protected long count
CountWatch
public CountWatch(Feed result,
Stack<XPathContext> contextStack)
startSelectedParentNode
public Receiver startSelectedParentNode(FleetingNode node,
int locationId)
throws XPathException
- Signal that an element has been found that matches the selection that this
Watch is looking for. This method is called by the WatchManager while
processing the startElement event that matches the selection. For this purpose,
any attributes selected by the last step in the selection are ignored
- Parameters:
node
- the element or document node whose start event has been matchedlocationId
- the location associated with the element or document node (may be
the location of the instruction that created it)
- Returns:
- a Receiver to be notified of all events starting with the startElement/startDocument event
for the matched element, and ending with the endElement event for that element.
- Throws:
ValidationException
- May be raised if the constraint implemented by this
Watch is violated @param locationId
XPathException
notifySelectedLeafNode
public void notifySelectedLeafNode(FleetingNode node,
int locationId)
throws XPathException
- Signal that a node (other than an element) that matches the selection
has been found.
- Specified by:
notifySelectedLeafNode
in interface Watch
- Overrides:
notifySelectedLeafNode
in class AbstractWatch
- Parameters:
node
- the node that was matched.locationId
-
- Throws:
XPathException
endSelectedParentNode
public void endSelectedParentNode(int locationId)
throws XPathException
- Signal that the endElement event has occurred for the element whose startElement
event caused the Watch to be activated.
- Parameters:
locationId
- the location of the element
- Throws:
ValidationException
- May be raised if the constraint implemented by this
Watch is violated @param locationId
XPathException
- May be raised if a constraint implemented by this
Watch is violated
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 ComposingWatch
- Throws:
XPathException
Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.