Mercurial > hg > Members > tatsuki > bench > jungle-core
comparison src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeContext.java @ 183:066d9c5758dc
change TreeContext
author | tatsuki |
---|---|
date | Mon, 23 Mar 2015 15:44:28 +0900 |
parents | 817febd9c69b |
children | d2b710337eaa |
comparison
equal
deleted
inserted
replaced
182:67d4c68578cf | 183:066d9c5758dc |
---|---|
1 package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction; | 1 package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction; |
2 | 2 |
3 import fj.data.List; | |
3 import fj.data.TreeMap; | 4 import fj.data.TreeMap; |
4 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList; | 5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList; |
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeContext; | 6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeContext; |
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; | 7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; |
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; | 8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; |
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; | |
8 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex; | 10 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex; |
9 | 11 |
10 public class DefaultTreeContext implements TreeContext | 12 public class DefaultTreeContext implements TreeContext { |
11 { | 13 private final TreeNode root; |
12 private final TreeNode root; | 14 private final TreeContext previous; |
13 private final TreeContext previous; | 15 private final ChangeList changeList; |
14 private final ChangeList changeList; | 16 private final String uuid; |
15 private final String uuid; | 17 private final String treeName; |
16 private final String treeName; | 18 private final long revision; |
17 private final long revision; | 19 private final InterfaceTraverser traverser; |
18 private TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> indexList; | |
19 private TreeMap<TreeNode, TreeNode> parentIndex; | |
20 | 20 |
21 public DefaultTreeContext(TreeNode _node,TreeContext _prev,ChangeList _log,String _uuid, String _treeName, long _revision, TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> indexList, | 21 public DefaultTreeContext(TreeNode _node, TreeContext _prev, ChangeList _log, String _uuid, String _treeName, long _revision, InterfaceTraverser traverser) { |
22 TreeMap<TreeNode, TreeNode> parentIndex) | 22 this.root = _node; |
23 { | 23 this.previous = _prev; |
24 this.root = _node; | 24 this.changeList = _log; |
25 this.previous = _prev; | 25 this.uuid = _uuid; |
26 this.changeList = _log; | 26 this.treeName = _treeName; |
27 this.uuid = _uuid; | 27 this.revision = _revision; |
28 this.treeName = _treeName; | 28 this.traverser = traverser; |
29 this.revision = _revision; | 29 } |
30 this.indexList = indexList; | |
31 this.parentIndex = parentIndex; | |
32 } | |
33 | 30 |
34 | 31 |
35 @Override | 32 @Override |
36 public TreeNode getRoot() | 33 public TreeNode getRoot() { |
37 { | 34 return root; |
38 return root; | |
39 } | |
40 | |
41 @Override | |
42 public TreeContext prev() | |
43 { | |
44 return previous; | |
45 } | |
46 | |
47 @Override | |
48 public ChangeList getChangeList() | |
49 { | |
50 return changeList; | |
51 } | |
52 | |
53 @Override | |
54 public String uuid() | |
55 { | |
56 return uuid; | |
57 } | |
58 | |
59 @Override | |
60 public String getTreeName() | |
61 { | |
62 return treeName; | |
63 } | |
64 | |
65 @Override | |
66 public long revision() | |
67 { | |
68 return revision; | |
69 } | |
70 | |
71 @Override | |
72 public Iterable<TreeOperation> getOperations() | |
73 { | |
74 return changeList; | |
75 } | |
76 | |
77 @Override | |
78 public TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> getIndex() { | |
79 return indexList; | |
80 } | |
81 | |
82 | |
83 @Override | |
84 public ParentIndex getParentIndex() { | |
85 return new ParentIndex(parentIndex); | |
86 } | |
87 | |
88 @Override | |
89 public void setIndex(TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> indexList) { | |
90 this.indexList = indexList; | |
91 } | 35 } |
92 | 36 |
93 @Override | 37 @Override |
94 public void setParentIndex(ParentIndex parentIndex) { | 38 public TreeContext prev() { |
95 this.parentIndex = parentIndex.getParentIndex(); | 39 return previous; |
96 } | 40 } |
97 | 41 |
42 @Override | |
43 public ChangeList getChangeList() { | |
44 return changeList; | |
45 } | |
46 | |
47 @Override | |
48 public String uuid() { | |
49 return uuid; | |
50 } | |
51 | |
52 @Override | |
53 public String getTreeName() { | |
54 return treeName; | |
55 } | |
56 | |
57 @Override | |
58 public long revision() { | |
59 return revision; | |
60 } | |
61 | |
62 @Override | |
63 public Iterable<TreeOperation> getOperations() { | |
64 return changeList; | |
65 } | |
66 | |
67 @Override | |
68 public TreeMap<String, TreeMap<String, List<TreeNode>>> getIndex() { | |
69 return traverser.getIndex(); | |
70 } | |
71 | |
72 @Override | |
73 public ParentIndex getParentIndex() { | |
74 return traverser.getParentIndex(); | |
75 } | |
76 | |
77 @Override | |
78 public InterfaceTraverser getTraverser() { | |
79 return traverser; | |
80 } | |
98 } | 81 } |