annotate 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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents:
diff changeset
1 package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction;
650fe2a0dccc modified tests
Shoshi TAMAKI
parents:
diff changeset
2
183
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
3 import fj.data.List;
179
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
4 import fj.data.TreeMap;
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList;
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeContext;
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents:
diff changeset
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
179
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation;
183
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser;
179
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex;
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents:
diff changeset
11
183
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
12 public class DefaultTreeContext implements TreeContext {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
13 private final TreeNode root;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
14 private final TreeContext previous;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
15 private final ChangeList changeList;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
16 private final String uuid;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
17 private final String treeName;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
18 private final long revision;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
19 private final InterfaceTraverser traverser;
179
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
20
183
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
21 public DefaultTreeContext(TreeNode _node, TreeContext _prev, ChangeList _log, String _uuid, String _treeName, long _revision, InterfaceTraverser traverser) {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
22 this.root = _node;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
23 this.previous = _prev;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
24 this.changeList = _log;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
25 this.uuid = _uuid;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
26 this.treeName = _treeName;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
27 this.revision = _revision;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
28 this.traverser = traverser;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
29 }
179
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
30
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
31
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
32 @Override
183
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
33 public TreeNode getRoot() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
34 return root;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
35 }
179
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
36
183
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
37 @Override
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
38 public TreeContext prev() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
39 return previous;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
40 }
179
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
41
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
42 @Override
183
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
43 public ChangeList getChangeList() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
44 return changeList;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
45 }
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
46
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
47 @Override
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
48 public String uuid() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
49 return uuid;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
50 }
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
51
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
52 @Override
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
53 public String getTreeName() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
54 return treeName;
179
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
55 }
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
56
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
57 @Override
183
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
58 public long revision() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
59 return revision;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
60 }
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
61
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
62 @Override
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
63 public Iterable<TreeOperation> getOperations() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
64 return changeList;
179
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
65 }
817febd9c69b change transaction
tatsuki
parents: 86
diff changeset
66
183
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
67 @Override
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
68 public TreeMap<String, TreeMap<String, List<TreeNode>>> getIndex() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
69 return traverser.getIndex();
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
70 }
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
71
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
72 @Override
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
73 public ParentIndex getParentIndex() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
74 return traverser.getParentIndex();
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
75 }
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
76
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
77 @Override
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
78 public InterfaceTraverser getTraverser() {
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
79 return traverser;
066d9c5758dc change TreeContext
tatsuki
parents: 179
diff changeset
80 }
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents:
diff changeset
81 }