view src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/JungleTree.java @ 183:066d9c5758dc

change TreeContext
author tatsuki
date Mon, 23 Mar 2015 15:44:28 +0900
parents 75422f82e6b6
children d2b710337eaa
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.shoshi.jungle;


import fj.data.List;
import fj.data.TreeMap;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error;
import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex;

public interface JungleTree {
    public JungleTreeEditor getTreeEditor();

    public JungleTreeEditor getLocalTreeEditor();

    public TreeNode getRootNode();

    public long revision();

    public Either<Error, JungleTree> getOldTree(long revision);

    public TreeMap<String, TreeMap<String, List<TreeNode>>> getIndex();

    public ParentIndex getParentIndex();

    public InterfaceTraverser getTraverser(boolean useIndex);

    public Either<Error, TreeNode> getNodeOfPath(NodePath path);
}