annotate src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/DefaultJungleTree.java @ 74:3a3622cf2eef

remove error but have a error test program and LoggingChildren.iterator is bad
author one
date Wed, 27 Aug 2014 05:07:50 +0900
parents dcaaecaed9ee
children 0f01ee222035
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
1 package jp.ac.u_ryukyu.ie.cr.shoshi.jungle;
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
2
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
3 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListWriter;
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
4 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet;
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeEditor;
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.AtomicReservableReference;
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultJungleTreeEditor;
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTransactionManager;
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.TreeContext;
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
11
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
12 public class DefaultJungleTree<T extends TreeNode<T>> implements JungleTree
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
13 {
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
14 private final AtomicReservableReference<TreeContext<T>> repository;
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
15 private final String uuid;
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
16 private final ChangeListWriter writer;
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
17 private final TreeEditor editor;
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
18
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
19 public DefaultJungleTree(TreeContext<T> _tc,String _uuid,ChangeListWriter _writer,TreeEditor _editor)
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
20 {
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
21 repository = new AtomicReservableReference<TreeContext<T>>(_tc);
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
22 uuid = _uuid;
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
23 writer = _writer;
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
24 editor = _editor;
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
25 }
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
26
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
27 @Override
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
28 public JungleTreeEditor getTreeEditor()
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
29 {
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
30 TreeContext<T> tc = repository.get();
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
31 DefaultTransactionManager<T> txManager = new DefaultTransactionManager<T>(writer,tc,repository,uuid);
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
32 T root = tc.getTreeNode();
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
33 return new DefaultJungleTreeEditor<T>(root,txManager,editor);
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
34 }
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
35
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
36 @Override
61
dcaaecaed9ee Modified getLocalTreeEditor
one
parents: 54
diff changeset
37 public JungleTreeEditor getLocalTreeEditor()
dcaaecaed9ee Modified getLocalTreeEditor
one
parents: 54
diff changeset
38 {
dcaaecaed9ee Modified getLocalTreeEditor
one
parents: 54
diff changeset
39 return getTreeEditor();
dcaaecaed9ee Modified getLocalTreeEditor
one
parents: 54
diff changeset
40 }
dcaaecaed9ee Modified getLocalTreeEditor
one
parents: 54
diff changeset
41
dcaaecaed9ee Modified getLocalTreeEditor
one
parents: 54
diff changeset
42 @Override
74
3a3622cf2eef remove error but have a error test program
one
parents: 61
diff changeset
43 public TreeNode<T> getRootNode()
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
44 {
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
45 TreeContext<T> tc = repository.get();
74
3a3622cf2eef remove error but have a error test program
one
parents: 61
diff changeset
46 ChangeSet<T> cs = tc.getChangeSet();
54
650fe2a0dccc modified tests
Shoshi TAMAKI
parents: 48
diff changeset
47 return cs.getRoot();
45
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
48 }
fb00d7b147c8 added JungleTree service
Shoshi TAMAKI
parents:
diff changeset
49 }