Mercurial > hg > Members > tatsuki > jungle-bench
view src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/xml/FunctionThread.java @ 15:89478f2ea07f
change src name TimeMeasurementJuGrix to TimeMeasurementJuGrixFunction
author | one |
---|---|
date | Mon, 08 Dec 2014 01:08:03 +0900 |
parents | 7c544969d4c9 |
children |
line wrap: on
line source
package jp.ac.u_ryukyu.ie.cr.tatsuki.xml; import java.util.Iterator; import java.util.Random; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; public class FunctionThread extends Thread { JungleTree tree; int findCount; boolean loop = true; public FunctionThread(JungleTree tree) { this.tree = tree; this.findCount = 0; } public int getFindCount() { return findCount; } public void set(boolean loop) { this.loop = loop; } @Override public void run() { while (loop) { findCount++; Random rnd = new Random(); String value = String.valueOf(rnd.nextInt(1000)); InterfaceTraverser traverser = tree.getTraverser(true); Iterator<TreeNode> resultIterator = traverser.find( (TreeNode node) -> { String nodeValue = node.getAttributes() .getString("KEY"); if (nodeValue == null) return false; if (nodeValue.equals(value)) return true; return false; }, "KEY", value); for (; resultIterator.hasNext();) { resultIterator.next(); } } } }