comparison src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/DefaultJungle.java @ 143:afbe19c98f53

change Index form TreeMap<String,TreeMap<String<List<Pair<TreeNode,NodePath>>>> → TreeMap<String,TreeMap<String<List<NodePath>>> bag
author one
date Sat, 15 Nov 2014 17:48:07 +0900
parents ef183969bf31
children a2c374a2686b
comparison
equal deleted inserted replaced
142:ef183969bf31 143:afbe19c98f53
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet; 12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet;
13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; 13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath;
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeEditor; 14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeEditor;
15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; 15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath;
16 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; 16 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor;
17 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
18 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; 17 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation;
19 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultChangeSet; 18 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultChangeSet;
20 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeContext; 19 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeContext;
21 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; 20 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode;
22 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; 21 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser;
23 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; 22 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either;
24 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; 23 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error;
25 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair;
26 24
27 public class DefaultJungle implements Jungle 25 public class DefaultJungle implements Jungle
28 { 26 {
29 private Journal journal; 27 private Journal journal;
30 private ConcurrentHashMap<String,JungleTree> trees; 28 private ConcurrentHashMap<String,JungleTree> trees;
80 } 78 }
81 79
82 }; 80 };
83 81
84 DefaultTreeNode root = new DefaultTreeNode(); 82 DefaultTreeNode root = new DefaultTreeNode();
85 TreeMap<String, TreeMap<String, List<Pair<TreeNode, NodePath>>>> index = TreeMap.empty(Ord.stringOrd); 83 TreeMap<String, TreeMap<String, List<NodePath>>> index = TreeMap.empty(Ord.stringOrd);
86 ChangeSet set = new DefaultChangeSet(root,null,list,uuid,name,0,index); 84 ChangeSet set = new DefaultChangeSet(root,null,list,uuid,name,0,index);
87 DefaultTreeContext tc = new DefaultTreeContext(root,set); 85 DefaultTreeContext tc = new DefaultTreeContext(root,set);
88 JungleTree newTree = new DefaultJungleTree(tc,uuid,journal.getWriter(),editor); 86 JungleTree newTree = new DefaultJungleTree(tc,uuid,journal.getWriter(),editor);
89 if(trees.putIfAbsent(name,newTree) != null){ 87 if(trees.putIfAbsent(name,newTree) != null){
90 return null; 88 return null;