15 package cz.vutbr.fit.knot.annotations.fragmentUpdater.nodeIterators;
 
   18 import javax.xml.xpath.XPathExpression;
 
   19 import javax.xml.xpath.XPathExpressionException;
 
   20 import org.w3c.dom.Document;
 
   21 import org.w3c.dom.Node;
 
   58   public void init(Document 
document, XPathExpression expr) 
throws XPathExpressionException {
 
   59     this.timestamp = System.currentTimeMillis();
 
   60     this.sessionL = 
"L" + this.timestamp;
 
   61     this.sessionR = 
"R" + this.timestamp;
 
   63     this.nodeList = XPathHelper.evaluateXPath(
document, expr);
 
   64     this.currentNodeIndex = 0;
 
   65     this.firstNode = 
true;
 
   67     this.leftEnd = this.rightEnd = 
false;
 
   85     Node resultNode = null;
 
  136         if(
nextNodeL.getPreviousSibling() != null){
 
  137           nextNodeL = nextNodeL.getPreviousSibling();
 
  164     if((resultNode.getNodeType() == Node.TEXT_NODE || resultNode.getNodeType() == Node.CDATA_SECTION_NODE)
 
  212       node.setUserData(this.sessionR, 
timestamp, null);
 
  215       node.setUserData(this.sessionL, 
timestamp, null);
 
  234       visited = (Long) node.getUserData(
this.sessionR);
 
  237       visited = (Long) node.getUserData(
this.sessionL);
 
  240     if (visited == null) {
 
  254     return "BidirectionallyUnNest";
 
void init(Document document, XPathExpression expr)
void setVisited(Node node, flow currentFlow)
boolean isWhitespaced(String string)
boolean isVisited(Node node, flow currentFlow)
Node iterator which is gradually unnesting. 
Helper class with util XPath methods.