view src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/test/findTreeAttributeThread.java @ 182:67d4c68578cf

add Jungle benchMark
author tatsuki
date Fri, 20 Mar 2015 15:35:53 +0900
parents
children 066d9c5758dc
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.test;

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;

import java.util.Iterator;

/**
 * Created by e115731 on 15/03/20.
 */
public class findTreeAttributeThread extends JungleBenchMarkThread {

    JungleTree tree;
    InterfaceTraverser traverser;
    private long findCount;

    boolean loop = true;

    public findTreeAttributeThread(JungleTree tree) {
        this.tree = tree;
        this.traverser = tree.getTraverser(false);
        this.findCount = 0;
    }

    @Override
    public long getFindCount() {
        System.out.println("thread count = " + findCount);
        return findCount;
    }

    public void set(boolean loop) {
        this.loop = loop;
    }

    @Override
    public void run() {
        while (loop) {

            Iterator<TreeNode> it = traverser.find((TreeNode node) -> {
                String nodeNum = node.getAttributes().getString("key");
                if (nodeNum == null)
                    return false;
                if (nodeNum.equals("8"))
                        return true;
                return false;
                    }, "key","8");

            if (it.hasNext())
                findCount++;
            else
                System.out.println("faild");
        }
    }
}