comparison src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultChangeSet.java @ 164:b81df9373a31 untilIndex

miner change
author one
date Mon, 08 Dec 2014 12:21:51 +0900
parents 8a0aa8fc137c
children
comparison
equal deleted inserted replaced
161:7c4fc8732eb4 164:b81df9373a31
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 java.util.TreeMap;
4
5 import fj.data.List;
3 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList; 6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList;
4 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet; 7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet;
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; 8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; 9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation;
7 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.Index; 10 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.Index;
8 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex; 11 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex;
9 12
10 public class DefaultChangeSet implements ChangeSet 13 public class DefaultChangeSet implements ChangeSet {
11 { 14 private final TreeNode root;
12 private final TreeNode root; 15 private final ChangeSet previous;
13 private final ChangeSet previous; 16 private final ChangeList changeList;
14 private final ChangeList changeList; 17 private final String uuid;
15 private final String uuid; 18 private final String treeName;
16 private final String treeName; 19 private final long revision;
17 private final long revision; 20 private final TreeMap<String, TreeMap<String, List<TreeNode>>> indexList;
18 private final Index index; 21 private final TreeMap<TreeNode, TreeNode> parentIndex;
19 private final ParentIndex parentIndex;
20
21 public DefaultChangeSet(TreeNode _node,ChangeSet _prev,ChangeList _log,String _uuid, String _treeName, long _revision, Index index,ParentIndex parentIndex)
22 {
23 this.root = _node;
24 this.previous = _prev;
25 this.changeList = _log;
26 this.uuid = _uuid;
27 this.treeName = _treeName;
28 this.revision = _revision;
29 this.index = index;
30 this.parentIndex = parentIndex;
31 }
32
33 22
34 @Override 23 public DefaultChangeSet(TreeNode _node, ChangeSet _prev, ChangeList _log,
35 public TreeNode getRoot() 24 String _uuid, String _treeName, long _revision,
36 { 25 TreeMap<String, TreeMap<String, List<TreeNode>>> indexList,
37 return root; 26 TreeMap<TreeNode, TreeNode> parentIndex) {
38 } 27 this.root = _node;
28 this.previous = _prev;
29 this.changeList = _log;
30 this.uuid = _uuid;
31 this.treeName = _treeName;
32 this.revision = _revision;
33 this.indexList = indexList;
34 this.parentIndex = parentIndex;
35 }
39 36
40 @Override 37 @Override
41 public ChangeSet prev() 38 public TreeNode getRoot() {
42 { 39 return root;
43 return previous; 40 }
44 }
45 41
46 @Override 42 @Override
47 public ChangeList getChangeList() 43 public ChangeSet prev() {
48 { 44 return previous;
49 return changeList; 45 }
50 }
51 46
52 @Override 47 @Override
53 public String uuid() 48 public ChangeList getChangeList() {
54 { 49 return changeList;
55 return uuid; 50 }
56 }
57
58 @Override
59 public String getTreeName()
60 {
61 return treeName;
62 }
63 51
64 @Override 52 @Override
65 public long revision() 53 public String uuid() {
66 { 54 return uuid;
67 return revision; 55 }
68 }
69 56
70 @Override 57 @Override
71 public Iterable<TreeOperation> getOperations() 58 public String getTreeName() {
72 { 59 return treeName;
73 return changeList; 60 }
74 }
75 61
76 @Override 62 @Override
77 public Index getIndex() { 63 public long revision() {
78 return index; 64 return revision;
79 } 65 }
80 66
67 @Override
68 public Iterable<TreeOperation> getOperations() {
69 return changeList;
70 }
81 71
82 @Override 72 @Override
83 public ParentIndex getParentIndex() { 73 public Index getIndex() {
84 return parentIndex; 74 return new Index(indexList);
85 } 75 }
76
77 @Override
78 public ParentIndex getParentIndex() {
79 return new ParentIndex(parentIndex);
80 }
86 81
87 } 82 }