Mercurial > hg > Members > nobuyasu > jungle-network
comparison src/main/java/alice/jungle/core/NetworkDefaultJungle.java @ 191:5d0734fd859d
fix error
author | tatsuki |
---|---|
date | Thu, 15 Jan 2015 09:23:23 +0900 |
parents | 2828205bdc3a |
children | 89c15aa2bc6d |
comparison
equal
deleted
inserted
replaced
190:269bada9eedc | 191:5d0734fd859d |
---|---|
13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; | 13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; |
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; | 14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; |
15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultChangeSet; | 15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultChangeSet; |
16 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeContext; | 16 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeContext; |
17 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; | 17 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; |
18 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.Index; | |
19 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex; | |
18 import fj.data.List; | 20 import fj.data.List; |
21 import fj.data.TreeMap; | |
19 | 22 |
20 public class NetworkDefaultJungle implements Jungle { | 23 public class NetworkDefaultJungle implements Jungle { |
21 private Journal journal; | 24 private Journal journal; |
22 private ConcurrentHashMap<String,JungleTree> trees; | 25 private ConcurrentHashMap<String, JungleTree> trees; |
23 private String uuid; | 26 private String uuid; |
24 private TreeEditor editor; | 27 private TreeEditor editor; |
25 | |
26 public NetworkDefaultJungle(Journal _journal,String _uuid,TreeEditor _editor) | |
27 { | |
28 journal = _journal; | |
29 trees = new ConcurrentHashMap<String,JungleTree>(); | |
30 uuid = _uuid; | |
31 editor = _editor; | |
32 } | |
33 | 28 |
34 @Override | 29 public NetworkDefaultJungle(Journal _journal, String _uuid, TreeEditor _editor) { |
35 public JungleTree getTreeByName(String _name) | 30 journal = _journal; |
36 { | 31 trees = new ConcurrentHashMap<String, JungleTree>(); |
37 return trees.get(_name); | 32 uuid = _uuid; |
38 } | 33 editor = _editor; |
34 } | |
39 | 35 |
40 @Override | 36 @Override |
41 public JungleTree createNewTree(final String _name) | 37 public JungleTree getTreeByName(String _name) { |
42 { | 38 return trees.get(_name); |
43 ChangeList list = new ChangeList(){ | 39 } |
44 @Override | 40 |
45 public Iterator<TreeOperation> iterator() { | 41 @Override |
46 List<TreeOperation> nil = List.nil(); | 42 public JungleTree createNewTree(final String name) { |
47 return nil.iterator(); | 43 ChangeList list = new ChangeList() { |
48 } | 44 @Override |
49 @Override | 45 public Iterator<TreeOperation> iterator() { |
50 public String uuid() { | 46 List<TreeOperation> nil = List.nil(); |
51 return uuid; | 47 return nil.iterator(); |
52 } | 48 } |
53 @Override | 49 |
54 public String getTreeName() { | 50 @Override |
55 return _name; | 51 public String uuid() { |
56 } | 52 return uuid; |
57 }; | 53 } |
58 TreeNode root = new DefaultTreeNode(); | 54 |
59 ChangeSet set = new DefaultChangeSet(root,null,list,uuid,_name, 0,null); | 55 @Override |
60 DefaultTreeContext tc = new DefaultTreeContext(root,set); | 56 public String getTreeName() { |
61 JungleTree newTree = new NetworkDefaultJungleTree(_name, tc,uuid,journal.getWriter(),editor); | 57 return name; |
62 if(trees.putIfAbsent(_name,newTree) != null){ | 58 } |
63 return null; | 59 }; |
64 } | 60 TreeNode root = new DefaultTreeNode(); |
65 return newTree; | 61 TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> indexList = new Index().getIndex(); |
66 } | 62 TreeMap<TreeNode, TreeNode> parentIndex = new ParentIndex().getParentIndex(); |
63 ChangeSet set = new DefaultChangeSet(root, null, list, uuid, name, 0, indexList, parentIndex); | |
64 DefaultTreeContext tc = new DefaultTreeContext(root, set); | |
65 JungleTree newTree = new NetworkDefaultJungleTree(name, tc, uuid, journal.getWriter(), editor); | |
66 if (trees.putIfAbsent(name, newTree) != null) { | |
67 return null; | |
68 } | |
69 return newTree; | |
70 } | |
67 } | 71 } |